freebsd-dev/sys/dev
Matt Jacob 9a5af41076 Convert isp(4) and ispfw(4) to use firmware(9) to manage firmware
loading for the QLogic cards.

Because isp(4) exists before the root is mounted, it's not really
possible for us to use the kernel's linker to load modules directly
from disk- that's really too bad.

However, the this is still a net win in in that the firmware has
been split up on a per chip (and in some cases, functionality)
basis, so the amount of stuff loaded *can* be substantially less
than the 1.5MB of firmware images that ispfw now manages. That is,
each specific f/w set is now also built as a module. For example,
QLogic 2322 f/w is built as isp_2322.ko and Initiator/Target 1080
firmware is built as isp_1080_it.ko.

For compatibility purposes (i.e., to perturb folks the least), we
also still build all of the firmware as one ispfw.ko module.

This allows us to let 'ispfw_LOAD' keep on working in existing
loader.conf files. If you now want to strip this down to just
the firmware for your h/w, you can then change loader.conf to
load the f/w you specifically want.

We also still allow for ispfw to be statically built (e.g., for
PAE and sparc64).

Future changes will look at f/w unloading and also role switching
that then uses the kernel linker to load different ips f/w sets.
MFC after:	2 months
2006-07-09 17:50:20 +00:00
..
aac Correct the names or some Adaptec and ICP devices, verified by the 2006-06-17 18:42:26 +00:00
acpi_support Use the acpi_event_sleep_button_sleep() function instead of 2006-06-06 15:20:06 +00:00
acpica Clean up style and some printf messages. Note that returning anything other 2006-06-22 06:34:05 +00:00
adlink Use the new bus_space/resource convenience functions. 2005-09-24 20:46:02 +00:00
advansys Remove some header polution. 2006-04-30 16:44:41 +00:00
agp Fix breakage of CHIP_I855 in the last revision. 2006-06-27 14:05:11 +00:00
aha Add explicit dependency on cam. This is necessary when both aha.ko and 2006-03-24 06:33:25 +00:00
ahb Fix missing update to reflect change in scsi_inquiry data structure. 2006-05-31 14:33:23 +00:00
aic Eliminate support for oldcard by removing the compat shims. 2005-09-20 19:45:08 +00:00
aic7xxx Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
amd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
amr Make amr_linux work as a module by avoiding calling amr_linux_ioctl_int 2006-05-03 16:45:15 +00:00
an Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
ar - Use bus_setup_intr() and bus_teardown_intr() to register device driver 2006-02-22 18:16:26 +00:00
arcmsr Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
arl Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
asr Remove stale MAINTAINER 2006-07-09 16:31:53 +00:00
ata Add preliminary support for the Serverworks HT1000 chip. 2006-07-04 20:36:03 +00:00
ath enable rx of control frames when in monitor mode 2006-06-26 04:31:36 +00:00
atkbdc Make sure command/data port (0x60) and status port (0x64) are in correct 2006-07-03 23:40:58 +00:00
auxio - Only touch the LED bit of the (LED) AUXIO register when turning the 2006-01-26 19:04:18 +00:00
awi add missed calls to bpf_peers_present 2006-06-02 23:14:40 +00:00
bce Log: 2006-06-08 18:31:21 +00:00
bfe Back out the BUS_DMA_ALLOCNOW change from rev 1.39. Scottl informed me that 2006-05-28 20:35:39 +00:00
bge Since 5714 family doesn't have Jumbo ring, we do not support 2006-06-29 06:38:21 +00:00
bktr Housekeeping. Update for maintainers who have handed in their commit bits 2006-07-01 10:51:55 +00:00
buslogic Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
cardbus Minor cleanup of CIS parsing. 2006-06-12 03:28:42 +00:00
ce Update low-level code. (to version 1.4) 2006-03-01 09:50:20 +00:00
ciss Spin until a request structure is available in the ioctl path. 2006-05-30 06:42:02 +00:00
cm Make cm(4) driver MPSAFE. 2006-06-11 22:25:01 +00:00
cnw Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
cp trim trailing ^I 2005-12-17 07:09:17 +00:00
cpufreq Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
cs Fix multicast support for cs89x0 chips. Just setting the RX_MULTCAST_ACCEPT 2006-03-10 23:50:53 +00:00
ct Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
ctau Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
cx Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
cy Catch up with new interrupt handling code. 2005-10-26 06:44:59 +00:00
dc Fix the last commit. 2006-06-08 08:15:21 +00:00
dcons Convert to new console interface. 2006-05-26 13:51:38 +00:00
de Remove various bits of conditional Alpha code and fixup a few comments. 2006-05-12 05:04:46 +00:00
digi - Push Giant down into linker_reference_module(). 2006-06-20 20:54:13 +00:00
dpt Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
drm Update to current DRM CVS, bringing in a fix for a NULL pointer chase when 2006-05-17 06:36:28 +00:00
ed MFp4: 2006-06-12 04:30:42 +00:00
eisa Make the eisa probe messages just like all the others in the system. 2005-08-01 07:09:15 +00:00
em The procedure of raceless switching between polling mode and 2006-06-06 08:03:49 +00:00
en Subtracting two pointers produces a ptrdiff_t not a size_t so use 2006-03-21 15:00:10 +00:00
ep Remove ifdef notdef SIOCHWADDR vestige. 2006-02-04 08:16:07 +00:00
esp Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
ex Remove ifdef notyet SIOCGHWADDR vestige. 2006-02-04 08:16:41 +00:00
exca Don't dereference an uninitialized pointer. 2006-03-09 16:28:24 +00:00
fatm This driver has been MPSAFE from the beginning so declare the interrupt 2006-03-21 14:56:42 +00:00
fb Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
fdc Enhanced floppy controllers have Data Rate Select Register (DSR) at 0x3f4. 2006-07-06 21:12:18 +00:00
fe Return 0 if we are a network card and do match. Previously, we'd bogusly 2005-11-19 23:26:57 +00:00
firewire Better printf 2006-06-12 04:00:33 +00:00
fxp Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
gem add missed calls to bpf_peers_present 2006-06-02 23:14:40 +00:00
gfb Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
harp Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
hatm Replace m_extadd() with macro version MEXTADD(). 2005-09-19 22:04:41 +00:00
hfa Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
hifn Use newly added functions to simplify the code. 2006-06-04 22:17:25 +00:00
hme Fix typo in printf string. 2006-05-27 09:28:59 +00:00
hptmv Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
hwpmc First pass at removing Alpha kernel support. 2006-05-11 22:25:28 +00:00
ic Enhanced floppy controllers have Data Rate Select Register (DSR) at 0x3f4. 2006-07-06 21:12:18 +00:00
ichsmb This signal handling code is worse than a no-op. If a 2006-01-03 17:01:43 +00:00
ichwd Re-work the bus attachment somewhat. Make the rids unique for 2006-02-17 18:46:18 +00:00
ida Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
idt Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
ie Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
ieee488 Don't be noisy in case of shared interrupts. 2006-03-11 15:39:22 +00:00
if_ndis When ndis_attach() runs, it has to very briefly initialize the card 2006-02-04 19:42:49 +00:00
iicbus remove DRIVER_MODULE lines that are useless... pcf doesn't exist (only 2006-04-17 22:33:42 +00:00
iir Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
io
ipmi Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
ips Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
ipw Hold on to firmware images until the interface detaches since 2006-06-10 17:29:40 +00:00
isp Convert isp(4) and ispfw(4) to use firmware(9) to manage firmware 2006-07-09 17:50:20 +00:00
ispfw Convert isp(4) and ispfw(4) to use firmware(9) to manage firmware 2006-07-09 17:50:20 +00:00
iwi add missed calls to bpf_peers_present 2006-06-02 23:14:40 +00:00
ixgb Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
joy Unbreak second joystick (joy1) support. 2005-11-09 20:26:00 +00:00
kbd Integrate kbdmux(4) into syscons(4) and kbd code. 2006-02-28 23:46:23 +00:00
kbdmux Fix endian bugs accessing ioctl arguments that are passed by value. 2006-03-03 00:46:28 +00:00
le Revert the part of rev. 1.3 which changed the software style to be 2006-06-05 15:14:14 +00:00
led
lge Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
lmc add missed calls to bpf_peers_present 2006-06-02 23:14:40 +00:00
mc146818 After some input from bde@ and rereading the datasheet use a MTX_SPIN 2005-06-04 23:24:50 +00:00
mca
mcd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
md - Conditionally acquire Giant in mdstart_vnode(), mdcreate_vnode(), and 2006-03-28 21:25:11 +00:00
mem
mfi Change mfi_add_ld to "immediate command" mode since we need to enumerate 2006-06-30 18:59:08 +00:00
mii Reset autonegotiation timer if current media is not 'auto'. 2006-07-03 10:37:09 +00:00
mk48txx - Add locking. 2005-05-19 21:16:50 +00:00
mlx Add missing parenthesis around error handling code upon attaching 2005-07-30 15:53:40 +00:00
mly Retire the last of the FreeBSD 4.x compat code from the mly driver. 2005-08-08 12:23:27 +00:00
mpt VMWare ESX reports > 16 targets for the LSI-Logic 2006-06-26 05:44:18 +00:00
mse Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
mxge Much to my surprise, IFQ_DRV_DEQUEUE() can return a null mbuf even if 2006-06-14 19:32:00 +00:00
my Add altq(4) support. 2006-06-05 17:59:46 +00:00
ncv Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
nfe Add a pure open source nForce Ethernet driver, under BSDL. 2006-06-26 23:41:07 +00:00
nge Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
nmdm Use ttyalloc() instead of ttymalloc() 2006-01-04 08:34:23 +00:00
nsp Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
null
nve ALTQ-ify nve(4). 2006-05-20 21:08:09 +00:00
ofw Fix various typos and brainos in last commit. 2006-05-30 07:56:57 +00:00
patm This driver has been MPSAFE from the beginning, so declare the interrupt 2006-03-21 14:54:42 +00:00
pbio Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
pccard replace all the 660 with 650 in the cut-n-pasted line, rather than 2006-05-08 22:59:33 +00:00
pccbb We don't have a ISA specific shutdown routine at this time, so remove 2006-06-03 21:10:50 +00:00
pcf - Use bus_setup_intr() and bus_teardown_intr() to register device driver 2006-02-22 18:16:26 +00:00
pci Add a define for the Standard SD Host Controller Base Peripheral. 2006-05-30 21:36:12 +00:00
pdq Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
ppbus Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
ppc Remove various bits of conditional Alpha code and fixup a few comments. 2006-05-12 05:04:46 +00:00
pst
puc Fix building with GCC 4.2: ensure types are defined before refering to them. 2006-06-29 16:27:19 +00:00
ral Fix kernel panic in rt2661_tx_intr() if no frames has been sent. 2006-06-05 20:06:29 +00:00
random Change msleep() and tsleep() to not alter the calling thread's priority 2006-04-17 18:20:38 +00:00
ray - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
rc - Use swi_remove() to teardown swi handlers rather than 2005-10-26 15:52:16 +00:00
re Properly detect the RTL8168(B?) again. RealTek sent me a bunch of sample 2006-06-28 16:04:54 +00:00
rndtest
rp The UPCI 32 rp(4) card uses BAR 2 like the UPCI 80 card. 2006-01-25 14:55:11 +00:00
rr232x Make this compile with -Wundef. 2006-05-16 15:23:27 +00:00
safe Use newly added functions to simplify the code. 2006-06-04 22:17:25 +00:00
sbni - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
sbsh Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
scc The Z8530 on the MacIO has an interrupt per channel. Deal with this 2006-04-04 17:33:08 +00:00
scd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
sf Remove various bits of conditional Alpha code and fixup a few comments. 2006-05-12 05:04:46 +00:00
si - Update copyright years from the Specialix SDK. 2006-01-06 20:17:48 +00:00
sio Have sio return BIS_PROBE_DEFAULT like all the other drivers in the 2006-06-30 06:27:24 +00:00
sk Fix typo in comment. 2006-07-05 04:56:50 +00:00
smbus Drivers for AMD-8111 and NVIDIA nForce2/3/4 SMBus 2.0 controllers. 2005-12-21 15:49:51 +00:00
sn Fix mismerge after last cvs update for the IFQ_DRV_DEQUEUE changes. 2006-02-04 08:19:00 +00:00
snc Fix -Wundef warnings from compiling GENERIC and LINT kernels of 2005-12-06 11:19:37 +00:00
snp Restore the ability to detach from a tty via SIOCSTTY and document 2005-09-19 13:48:45 +00:00
sound Fix a missing unlock operation in interrupt handler. 2006-07-06 10:39:58 +00:00
speaker Add /dev/speaker support to amd64. 2005-11-11 09:57:32 +00:00
sr - Use bus_setup_intr() and bus_teardown_intr() to register device driver 2006-02-22 18:16:26 +00:00
stg Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
streams
sym Remove various bits of conditional Alpha code and fixup a few comments. 2006-05-12 05:04:46 +00:00
syscons Convert to new console api 2006-05-26 13:54:27 +00:00
tdfx Take the functionality contained in the former "options TDFX_LINUX" 2006-03-03 21:37:38 +00:00
ti - Tx side bus_dmamap_load_mbuf_sg(9) support. This reduces bookkeeping 2006-01-03 06:14:07 +00:00
trm Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
twa Remove header pollution. 2006-04-30 16:46:11 +00:00
twe Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
tx Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
txp Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
uart Convert to new console api 2006-05-26 13:54:27 +00:00
ubsec Handle errors in the same way it is done in safe(4). 2006-06-06 13:58:12 +00:00
usb Change the multicast calculation to be the same as the other usb drivers and 2006-07-05 00:49:26 +00:00
utopia Struct ifatm isn't at the beginning of the softc anymore. Use the 2005-06-22 06:51:52 +00:00
vge Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +00:00
vkbd Disable custom locking in the vkbd(4) for now and make it rely on the 2006-02-27 06:17:48 +00:00
vr Remove various bits of conditional Alpha code and fixup a few comments. 2006-05-12 05:04:46 +00:00
vx - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
watchdog Return zero when disabling watchdog, unless any of the drivers complain. 2005-09-29 12:31:44 +00:00
wds Since DELAY() was moved, most <machine/clock.h> #includes have been 2006-05-16 14:37:58 +00:00
wi Really fix the typo this time: it should be sc->sc_drvbpf to be verified, 2006-06-05 23:06:03 +00:00
wl Trival whitespace change. 2006-06-19 11:30:36 +00:00
xe o Fix printf(9) formatting: do not use hardcode "0x" and "#" flags 2006-04-15 11:41:40 +00:00
zs Update to new console api. 2006-05-26 18:25:34 +00:00