Commit graph android_kernel_sony_sdm845/firmware
Message SHA1
ti_usb_3410_5052: add Multi-Tech firmware
Add the Multi-Tech cellular modem firmware to the TI USB serial driver.
This firmware was extracted from:

ftp://ftp.multitech.com/wireless/wireless_linux.zip

Firmware licence: "all firmware components are redistributable in binary
	form" per support@multitech.com
	Copyright (C) 2005 Multi-Tech Systems, Inc.

Signed-off-by: Chris Adams <cmadams@hiwaay.net>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Chris Adams   authored and   Linus Torvalds   commited 2009-01-12 16:37:01 -08:00
7df5231660
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
David S. Miller   commited 2009-01-08 11:05:59 -08:00
7f46b1343f
firmware: convert e100 driver to request_firmware()
Thanks to David Woodhouse for help.

Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

Jaswinder Singh Rajput   authored and   David S. Miller   commited 2009-01-07 12:59:17 -08:00
9ac32e1bc0
fix modules_install via NFS
Rafael reported:

I get the following error from 'make modules_install' on my test boxes:

  HOSTCC  firmware/ihex2fw
/home/rafael/src/linux-2.6/firmware/ihex2fw.c:268: fatal error: opening dependency file firmware/.ihex2fw.d: Read-only file system
compilation terminated.
make[3]: *** [firmware/ihex2fw] Error 1
make[2]: *** [_modinst_post] Error 2
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2

where the configuration is that the kernel is compiled on a build box
with 'make O=<destdir> -j5' and then <destdir> is mounted over NFS read-only by
each test box (full path to this directory is the same on the build box and on
the test boxes).  Then, I cd into <destdir>, run 'make modules_install' and get
the error above.

The issue turns out to be that we when we install firmware pick
up the list of firmware blobs from firmware/Makefile.
And this triggers the Makefile rules to update ihex2fw.

There were two solutions for this issue:
1) Move the list of firmware blobs to a separate file
2) Avoid ihex2fw rebuild by moving it to scripts

As I seriously beleive that the list of firmware blobs should be
done in a fundamental different way solution 2) was selected.

Reported-and-tested-by: "Rafael J. Wysocki" <rjw@sisk.pl>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: David Woodhouse <dwmw2@infradead.org>

Sam Ravnborg   commited 2009-01-07 21:44:20 +01:00
8b249b6856
make firmware/dsp56k/bootstrap.asm buildable on a56
Make firmware/dsp56k/bootstrap.asm buildable on a56, the free Motorola
DSP56001 assembler (http://www.zdomain.com/a56.html).

Summary of changes:

  - Remove '<' and '>' candy (they specify explicit addressing modes,
    which a56 don't grok, but uses implicitly anyway).

  - Replace 'move' with 'movem' when accessing program memory.

  - Rename a few labels to avoid duplicates (which a56 can't handle).

Signed-off-by: Robert Millan <rmh@aybabtu.com>
Cc: Jaswinder Singh <jaswinder@infradead.org>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Robert Millan   authored and   Linus Torvalds   commited 2009-01-06 15:59:29 -08:00
842ffabbf3
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (44 commits)
  qlge: Fix sparse warnings for tx ring indexes.
  qlge: Fix sparse warning regarding rx buffer queues.
  qlge: Fix sparse endian warning in ql_hw_csum_setup().
  qlge: Fix sparse endian warning for inbound packet control block flags.
  qlge: Fix sparse warnings for byte swapping in qlge_ethool.c
  myri10ge: print MAC and serial number on probe failure
  pkt_sched: cls_u32: Fix locking in u32_change()
  iucv: fix cpu hotplug
  af_iucv: Free iucv path/socket in path_pending callback
  af_iucv: avoid left over IUCV connections from failing connects
  af_iucv: New error return codes for connect()
  net/ehea: bitops work on unsigned longs
  Revert "net: Fix for initial link state in 2.6.28"
  tcp: Kill extraneous SPLICE_F_NONBLOCK checks.
  tcp: don't mask EOF and socket errors on nonblocking splice receive
  dccp: Integrate the TFRC library with DCCP
  dccp: Clean up ccid.c after integration of CCID plugins
  dccp: Lockless integration of CCID congestion-control plugins
  qeth: get rid of extra argument after printk to dev_* conversion
  qeth: No large send using EDDP for HiperSockets.
  ...

Linus Torvalds   commited 2009-01-05 18:44:59 -08:00
15b0669072
starfire: use request_firmware()
Firmware blob is big endian

Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

Jaswinder Singh Rajput   authored and   David S. Miller   commited 2009-01-04 16:12:11 -08:00
cfc3a44c3c
firmware: convert tg3 driver to request_firmware()
Firmware blob looks like this...
        u8 firmware_major
        u8 firmware_minor
        u8 firmware_fix
        u8 pad
        __be32 start_address
        __be32 length (total, including BSS sections to be zeroed)
        data... (in __be32 words, which is native for the firmware)

Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

Jaswinder Singh Rajput   authored and   David S. Miller   commited 2009-01-04 16:11:25 -08:00
077f849de4
firmware: convert acenic driver to request_firmware()
We store the firmware in its native big-endian form now, so the loop in
ace_copy() is modified to use be32_to_cpup() when writing it out.

We can forget the BSS,SBSS sections of the firmware, since we were
clearing all the device's RAM anyway. And the text,rodata,data sections
can all be loaded as a single chunk since they're contiguous (give or
take a few dozen bytes in between).

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Acked-by: Jes Sorensen <jes@sgi.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

Jaswinder Singh   authored and   David S. Miller   commited 2009-01-04 16:10:02 -08:00
949b42544a
V4L/DVB (9533): cx88: Add support for TurboSight TBS8910 DVB-S PCI card
The card based on stv0299 or stv0288 demodulators.

Signed-off-by: Igor M. Liplianin <liplianin@me.by>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

Igor M. Liplianin   authored and   Mauro Carvalho Chehab   commited 2008-12-29 17:53:28 -02:00
4b29631db3
cxgb3: integrate FW and protocol engines in the kernel
Include firmware and protocol images in the kernel image if requested

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

Divy Le Ray   authored and   David S. Miller   commited 2008-11-26 15:37:50 -08:00
ad58633c83
cassini: use request_firmware
Firmware blob looks like this...
        __le16 load_address
        unsigned char data[]

[akpm@linux-foundation.org: include vmalloc.h]
Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

Jaswinder Singh   authored and   David S. Miller   commited 2008-09-22 19:27:10 -07:00
fcaa40669c
Fix modules_install on RO nfs-exported trees.
Fixes http://bugzilla.kernel.org/show_bug.cgi?id=11355 by avoiding a
needless rebuild of the firmware/ihex2fw tool.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

David Woodhouse   commited 2008-09-02 09:28:59 +01:00
1cede1affb
Fix IHEX firmware generation/loading
Fix both the IHEX firmware generation (len field always null, and EOF
marker a byte too short) and loading (struct ihex_binrec needs to be
packed to reflect the on-disk structure).

Signed-off-by: Marc Zyngier <maz@misterjones.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

Marc Zyngier   authored and   David Woodhouse   commited 2008-08-02 18:36:10 +01:00
85ebd00334
Fix 'make clean' and .gitignore for firmware/ directory.
Provide a .gitignore file, and fix a typo which prevented some of the
generated binary files from being removed on 'make clean'.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Reported-and-tested-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

David Woodhouse   authored and   Linus Torvalds   commited 2008-07-16 07:34:18 -07:00
d25dc7fd47
Fix accidental reference to tg3 firmware
We're not updating the tg3 driver to use request_firmware() yet, but a
reference to its firmware accidentally slipped in as part of commit
c4667746 ("dabusb: use request_firmware()"). Remove it again.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Reported-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

David Woodhouse   authored and   Linus Torvalds   commited 2008-07-14 20:40:39 -07:00
ad1f8bf073
firmware: Correct dependency on CONFIG_EXTRA_FIRMWARE_DIR
When CONFIG_EXTRA_FIRMWARE_DIR gets changed, the filename in the .S file
(which uses .incbin to include the binary) needs to change. When we
renamed the BUILTIN_FIRMWARE_DIR option to EXTRA_FIRMWARE_DIR, we forgot
to update the manual dependency in firmware/Makefile, so it was
depending on a non-existent file in include/config/

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

David Woodhouse   authored and   Linus Torvalds   commited 2008-07-14 18:04:55 -07:00
50515af207
firmware: convert sb16_csp driver to use firmware loader exclusively
Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

Jaswinder Singh   authored and   David Woodhouse   commited 2008-07-14 14:45:46 -07:00
d71792ac3d
dsp56k: use request_firmware
Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

Jaswinder Singh   authored and   David Woodhouse   commited 2008-07-14 14:45:32 -07:00
7f127d5ed0
edgeport-ti: use request_firmware()
Firmware blob looks like this...
        uint8_t  MajorVersion
        uint8_t  MinorVersion
        __le16   BuildNumber
        uint8_t  data[]

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

Jaswinder Singh   authored and   David Woodhouse   commited 2008-07-14 14:44:39 -07:00
d12b219a22
edgeport: use request_firmware()
Version number provided in first HEX record.

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

Jaswinder Singh   authored and   David Woodhouse   commited 2008-07-14 14:44:37 -07:00
5b9ea93226
vicam: use request_firmware()
Although it wasn't actually using ihex records before, we use the Intel
HEX record format for this firmware -- because that gives us a simple
way to split it into separate chunks internally as we need, without
loading each part as a separate file.

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

Jaswinder Singh   authored and   David Woodhouse   commited 2008-07-14 14:44:32 -07:00
fb54be8755
dabusb: use request_firmware()
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

David Woodhouse   commited 2008-07-14 14:44:21 -07:00
c466774636
cpia2: use request_firmware()
Thanks for Jaswinder Singh for converting the firmware blob itself to ihex.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

David Woodhouse   commited 2008-07-14 14:43:28 -07:00
04a33e406a
ip2: use request_firmware()
Converted with help from Jaswinder Singh

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Acked-by: Alan Cox <alan@redhat.com>

David Woodhouse   commited 2008-07-10 14:49:41 +01:00
547d8bb7dd
firmware: convert Ambassador ATM driver to request_firmware()
Since it had various regions to be loaded to separate addresses, and it
wanted to do them in fairly small chunks anyway, switch it to use the
new ihex code. Encode the start address in the first record.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Acked-by: Chas Williams <chas@cmf.nrl.navy.mil>

David Woodhouse   commited 2008-07-10 14:49:39 +01:00
27d202fff1
whiteheat: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:49:38 +01:00
ec6752f5af
ti_usb_3410_5052: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:49:34 +01:00
5f24e2d6b4
emi62: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:49:14 +01:00
b8e24bfabb
emi26: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:49:12 +01:00
ae93a55bf9
keyspan_pda: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:49:09 +01:00
3edbf98b86
keyspan: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:48:49 +01:00
2971c579f9
ttusb-budget: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Acked-by: Mauro Carvalho Chehab <mchehab@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:53 +01:00
0a2a736afa
kaweth: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:51 +01:00
79682499d9
smctr: use request_firmware()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:50 +01:00
0f805b86c9
firmware: convert ymfpci driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:48 +01:00
18ee6dfae8
firmware: convert maestro3 driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:46 +01:00
a292f404fa
firmware: convert korg1212 driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:44 +01:00
76770664dc
ihex: Add support for long records to ihex2fw.c
Some drivers could do with using records like Intel HEX, but with each
record being larger than 256 bytes. This has been possible in the binary
representation (struct ihex_binrec) in the kernel since the beginning --
at least of the the current version of history. But we haven't been able
to represent that in the .HEX files which get converted to .fw files.

This adds a '-w' option to ihex2fw to make it interpret the first _two_
bytes of each line as the record length, instead of only one byte. And
adds makefile rules for %.H16->%.fw which use that.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:42 +01:00
59890f74e5
ihex: add ihex2fw tool for converting HEX files into firmware images
Not the straight conversion to binary which objcopy can do for us, but
actually representing each record with its original {addr, length},
because some drivers need that information preserved.

Fix up 'firmware_install' to be able to build $(hostprogs-y) too.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:41 +01:00
8bd6b2229b
firmware: Add firmware installation to modules_install, add firmware_install
For 'make modules_install', install any firmware required by
the modules which are being installed.

Also add a 'make firmware_install' target which doesn't depend on the
configuration, but installs _all_ available in-kernel-tree firmware into
$(INSTALL_FW_PATH), which defaults to /lib/firmware. This is intended
for distributors to make arch-independent (and config-independent)
packages containing firmware.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

David Woodhouse   commited 2008-07-10 14:47:34 +01:00
88ecf814c4
firmware: Add CONFIG_FIRMWARE_IN_KERNEL option.
This will control whether we build firmware into the kernel image for
_every_ driver which we convert to request_firmware(), to avoid a
proliferation of 'CONFIG_XXX_FIRMWARE' options for each one.

Default to 'y' for now, which is the wrong thing to do but people seem
to be insisting on it and refusing to even review patches until it's
done. And it does preserve the existing behaviour for built-in drivers.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>

David Woodhouse   commited 2008-07-10 14:47:20 +01:00
d172e7f5c6
firmware: Add CONFIG_EXTRA_FIRMWARE option
This allows arbitrary firmware files to be included in the static kernel
where the firmware loader can find them without requiring userspace to
be alive.

(Updated and CONFIG_EXTRA_FIRMWARE_DIR added with lots of help from
Johannes Berg).

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>

David Woodhouse   commited 2008-07-10 14:30:39 +01:00
4d2acfbfdf