freebsd-skq/sys
ps a7a31583b7 Add support for the HP Modular Smart Array 20 & 500 storage arrays.
Logical volumes on these devices show up as LUNs behind another
controller (also known as proxy controller).  In order to issue
firmware commands for a volume on a proxy controller, they must be
targeted at the address of the proxy controller it is attached to,
not the Host/PCI controller.

A proxy controller is defined as a device listed in the INQUIRY
PHYSICAL LUNS command who's L2 and L3 SCSI addresses are zero.  The
corresponding address returned defines which "bus" the controller
lives on and we use this to create a virtual CAM bus.

A logical volume's addresses first byte defines the logical drive
number.  The second byte defines the bus that it is attached to
which corresponds to the BUS of the proxy controller's found or the
Host/PCI controller.

Change event notification to be handled in its own kernel thread.
This is needed since some events may require the driver to sleep
on some operations and this cannot be done during interrupt context.
With this change, it is now possible to create and destroy logical
volumes from FreeBSD, but it requires a native application to
construct the proper firmware commands which is not publicly
available.

Special thanks to John Cagle @ HP for providing remote access to
all the hardware and beating on the storage engineers at HP to
answer my questions.
2004-04-16 23:00:01 +00:00
..
alpha Whitespace fix. 2004-04-16 20:09:53 +00:00
amd64 Set the "global" attribute on the page table entries for the kernel and 2004-04-16 03:45:28 +00:00
arm Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
boot s/atspeaker/speaker/ 2004-04-15 12:12:15 +00:00
cam Compare the *number* of patterns to zero, not the *pointer* to the 2004-02-28 12:59:56 +00:00
coda Device megapatch 5/6: 2004-02-21 21:32:15 +00:00
compat - Use memory barrier with atomic operations in ntoskrnl_lock_dpc() and 2004-04-16 00:04:28 +00:00
conf Remove nowerror lines now that acpica is warns clean. 2004-04-14 18:13:16 +00:00
contrib Remove warnings from vendor files. This takes some files off the vendor 2004-04-14 18:12:29 +00:00
crypto Fix a reentrancy issue in md5_calc(). 2004-01-27 18:57:21 +00:00
ddb Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
dev Add support for the HP Modular Smart Array 20 & 500 storage arrays. 2004-04-16 23:00:01 +00:00
fs Do not drop Giant around the poll method yet, we're not ready for it. 2004-04-12 21:52:52 +00:00
geom Calculate bio_completed properly or die! 2004-04-04 20:37:28 +00:00
gnu Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
i4b Convert callers to the new bus_alloc_resource_any(9) API. 2004-03-17 17:50:55 +00:00
i386 Revert part of the "BIOS brain damage" from rev 1.10. It seems that 2004-04-16 19:46:30 +00:00
ia64 Remove a comment that refers to avail_start and avail_end as these 2004-04-11 06:37:36 +00:00
isa Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
isofs/cd9660 Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
kern - Enable (unmask) interrupt sources earlier in the ithread loop. 2004-04-16 20:25:40 +00:00
libkern Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
modules Include nehemiah.c only on i386, as is done for the non-modules 2004-04-11 15:40:18 +00:00
net Use if_link instead of the alias if_list, and change a for() into 2004-04-16 10:32:13 +00:00
net80211 Resolve the issue of whether frames have FCS or not. Frame data does not 2004-04-05 22:13:21 +00:00
netatalk Lock down the netatalk AARP code, which is responsible for appletalk 2004-04-09 01:40:12 +00:00
netatm These are changes to allow to use the Intel C/C++ compiler (lang/icc) 2004-03-12 21:45:33 +00:00
netgraph Consistently use ifaddr_byindex() to access the link-level address 2004-04-16 08:15:37 +00:00
netinet In an effort to simplify the routing code, try to deprecate rtalloc() 2004-04-14 01:13:14 +00:00
netinet6 Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
netipsec Unbreak FAST_IPSEC build on 64 bit archs with INVARIANTS. 2004-04-07 00:19:02 +00:00
netipx Rename dup_sockaddr() to sodupsockaddr() for consistency with other 2004-03-01 03:14:23 +00:00
netkey avoid duplicate free. 2004-01-25 17:18:12 +00:00
netnatm Rename dup_sockaddr() to sodupsockaddr() for consistency with other 2004-03-01 03:14:23 +00:00
netncp Make the process_exit eventhandler run without Giant. Add Giant hooks 2004-03-14 02:06:28 +00:00
netsmb Rename dup_sockaddr() to sodupsockaddr() for consistency with other 2004-03-01 03:14:23 +00:00
nfs Remove advertising clause from University of California Regent's 2004-04-07 05:00:01 +00:00
nfs4client Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
nfsclient Let the NFS client notice a file's size changing as a modification. 2004-04-14 23:23:55 +00:00
nfsserver Don't send the available space as is in the FSSTAT call. Under 2004-04-12 13:02:21 +00:00
opencrypto kthread_exit() no longer requires Giant, so don't force callers to acquire 2004-03-05 22:42:17 +00:00
pc98 sx was randomly added to NOTES. Instead, place it in the misc 2004-04-14 02:25:31 +00:00
pccard Convert callers to the new bus_alloc_resource_any(9) API. 2004-03-17 17:50:55 +00:00
pci Boomerang 10/100BT (found in 2c905-TX) chips apparently suffer the 2004-04-13 19:34:20 +00:00
posix4 The sem_timedwait() and ksem_timedwait() functions both 2004-02-03 22:27:03 +00:00
powerpc Remove avail_end. It is not used. 2004-04-11 06:02:24 +00:00
rpc Remove advertising clause from University of California Regent's 2004-04-07 05:00:01 +00:00
security Define BPFD_LOCK_ASSERT() to assert the BPF descriptor lock. 2004-02-29 15:33:56 +00:00
sparc64 Remove avail_end. It is not used. 2004-04-11 06:02:24 +00:00
sys Bump __FreeBSD_version on behalf of the new .warning directive in make(1). 2004-04-13 09:33:33 +00:00
tools Correct $FreeBSD$ style. 2004-04-16 05:22:11 +00:00
ufs Record where half the bits in this file came from (from ufs_readwrite.c). 2004-04-07 11:21:18 +00:00
vm - pmap_kenter_temporary() is unused by machine-independent code. Therefore, 2004-04-10 22:41:46 +00:00
Makefile Replaced outdated comment. 2004-01-17 03:28:27 +00:00