diff options
author | Doug Ambrisko <ambrisko@FreeBSD.org> | 2012-03-30 23:05:48 +0000 |
---|---|---|
committer | Doug Ambrisko <ambrisko@FreeBSD.org> | 2012-03-30 23:05:48 +0000 |
commit | a6ba0fd64d4743eba0a8f89de63ed72b031e9e00 (patch) | |
tree | e1b865ec95e3c7d85bba7e6ba5c14bc2630a1809 /sys/dev/mfi/mfi_ioctl.h | |
parent | 1040a0007e818db3a54de057ec346c334c388d30 (diff) | |
parent | 0d9a4ef39c9cb332b90872893d0d068f0ede0217 (diff) |
MFhead_mfi r227068
First cut of new HW support from LSI and merge into FreeBSD.
Supports Drake Skinny and ThunderBolt cards.
MFhead_mfi r227574
Style
MFhead_mfi r227579
Use bus_addr_t instead of uintXX_t.
MFhead_mfi r227580
MSI support
MFhead_mfi r227612
More bus_addr_t and remove "#ifdef __amd64__".
MFhead_mfi r227905
Improved timeout support from Scott.
MFhead_mfi r228108
Make file.
MFhead_mfi r228208
Fixed botched merge of Skinny support and enhanced handling
in call back routine.
MFhead_mfi r228279
Remove superfluous !TAILQ_EMPTY() checks before TAILQ_FOREACH().
MFhead_mfi r228310
Move mfi_decode_evt() to taskqueue.
MFhead_mfi r228320
Implement MFI_DEBUG for 64bit S/G lists.
MFhead_mfi r231988
Restore structure layout by reverting the array header to
use [0] instead of [1].
MFhead_mfi r232412
Put wildcard pattern later in the match table.
MFhead_mfi r232413
Use lower case for hexadecimal numbers to match surrounding
style.
MFhead_mfi r232414
Add more Thunderbolt variants.
MFhead_mfi r232888
Don't act on events prior to boot or when shutting down.
Add hw.mfi.detect_jbod_change to enable or disable acting
on JBOD type of disks being added on insert and removed on
removing. Switch hw.mfi.msi to 1 by default since it works
better on newer cards.
MFhead_mfi r233016
Release driver lock before taking Giant when deleting children.
Use TAILQ_FOREACH_SAFE when items can be deleted. Make code a
little simplier to follow. Fix a couple more style issues.
MFhead_mfi r233620
Update mfi_spare/mfi_array with the actual number of elements
for array_ref and pd. Change these max. #define names to avoid
name space collisions. This will require an update to mfiutil
It avoids mfiutil having to do a magic calculation.
Add a note and #define to state that a "SYSTEM" disk is really
what the firmware calls a "JBOD" drive.
Thanks to the many that helped, LSI for the initial code drop,
mav, delphij, jhb, sbruno that all helped with code and testing.
Notes
Notes:
svn path=/head/; revision=233711
Diffstat (limited to 'sys/dev/mfi/mfi_ioctl.h')
-rw-r--r-- | sys/dev/mfi/mfi_ioctl.h | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/sys/dev/mfi/mfi_ioctl.h b/sys/dev/mfi/mfi_ioctl.h index 48e9c7f7ba20..e42001732944 100644 --- a/sys/dev/mfi/mfi_ioctl.h +++ b/sys/dev/mfi/mfi_ioctl.h @@ -28,13 +28,18 @@ __FBSDID("$FreeBSD$"); #include <dev/mfi/mfireg.h> +#include <machine/bus.h> -#if defined(__amd64__) /* Assume amd64 wants 32 bit Linux */ struct iovec32 { u_int32_t iov_base; int iov_len; }; -#endif + +struct megasas_sge +{ + bus_addr_t phys_addr; + uint32_t length; +}; #define MFIQ_FREE 0 #define MFIQ_BIO 1 @@ -79,7 +84,7 @@ struct mfi_ioc_packet { struct iovec mfi_sgl[MAX_IOCTL_SGE]; } __packed; -#ifdef __amd64__ +#ifdef COMPAT_FREEBSD32 struct mfi_ioc_packet32 { uint16_t mfi_adapter_no; uint16_t mfi_pad1; @@ -104,7 +109,7 @@ struct mfi_ioc_aen { } __packed; #define MFI_CMD _IOWR('M', 1, struct mfi_ioc_packet) -#ifdef __amd64__ +#ifdef COMPAT_FREEBSD32 #define MFI_CMD32 _IOWR('M', 1, struct mfi_ioc_packet32) #endif #define MFI_SET_AEN _IOW('M', 3, struct mfi_ioc_aen) @@ -136,7 +141,7 @@ struct mfi_ioc_passthru { uint8_t *buf; } __packed; -#ifdef __amd64__ +#ifdef COMPAT_FREEBSD32 struct mfi_ioc_passthru32 { struct mfi_dcmd_frame ioc_frame; uint32_t buf_size; @@ -146,7 +151,7 @@ struct mfi_ioc_passthru32 { #define MFIIO_STATS _IOWR('Q', 101, union mfi_statrequest) #define MFIIO_PASSTHRU _IOWR('C', 102, struct mfi_ioc_passthru) -#ifdef __amd64__ +#ifdef COMPAT_FREEBSD32 #define MFIIO_PASSTHRU32 _IOWR('C', 102, struct mfi_ioc_passthru32) #endif |