freebsd-nq/sys/modules
Leandro Lupori d8c51c6f74 [aacraid] Port driver to big-endian
Port aacraid driver to big-endian (BE) hosts.

The immediate goal of this change is to make it possible to use the
aacraid driver on PowerPC64 machines that have Adaptec Series 8 SAS
controllers.

Adapters supported by this driver expect FIB contents in little-endian
(LE) byte order. All FIBs have a fixed header part as well as a data
part that depends on the command being issued to the controller.

In this way, on BE hosts, the FIB header and all FIB data structures
used in aacraid.c and aacraid_cam.c need to be converted to LE before
being sent to the adapter and converted to BE when coming from it.

The functions to convert each struct are on aacraid_endian.c.
For little-endian (LE) targets, they are macros that expand
to nothing.
In some cases, when only a few fields of a large structure are used,
the fields are converted inline, by the code using them.

PR:		237463
Reviewed by:	jhibbits
Sponsored by:	Eldorado Research Institute (eldorado.org.br)
Differential Revision:	https://reviews.freebsd.org/D23887
2020-03-05 20:04:41 +00:00
..
3dfx
3dfx_linux
aac Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
aacraid [aacraid] Port driver to big-endian 2020-03-05 20:04:41 +00:00
accf_data
accf_dns
accf_http
acl_nfs4
acl_posix1e
acpi
adlink Convert the PCI ID selection from a simple if into a table. 2018-03-23 15:35:19 +00:00
ae
aesni Move all sources from the llvm project into contrib/llvm-project. 2019-12-20 19:53:05 +00:00
age
agp Add a helper function to agp(4) which installs a single GTT entry. 2017-07-09 22:53:24 +00:00
ahci
aic7xxx META_MODE: Fix wanting a meta file in source tree. 2018-07-04 00:18:40 +00:00
alc
ale
allwinner The pwm interface was replaced with pwmbus, include the right header file. 2019-06-16 00:27:11 +00:00
alq
am335x_dmtpps
amd_ecc_inject
amdgpio Add amdgpio, driver for GPIO controller on AMD-based x86_64 platforms 2018-10-21 04:52:37 +00:00
amdsbwd Add missing generated header file. 2018-07-09 14:18:03 +00:00
amdsmb Update AMDSMB to use PCI_MATCH 2018-07-07 15:55:52 +00:00
amdsmn Add smn(4) driver for AMD System Management Network 2017-09-05 15:13:41 +00:00
amdtemp
amr
an
aout
apm
ar71xx
arcmsr
arm_ti Add module makefiles for Texas Instruments ARM SoCs. 2019-06-16 01:22:44 +00:00
armv8crypto Create an empty stdint.h for arm_neon.h to include. 2018-07-16 15:39:33 +00:00
asmc Yank crufty INTR_FILTER option 2018-05-24 17:06:00 +00:00
ata
ath
ath_ahb
ath_dfs
ath_hal
ath_hal_ar5210
ath_hal_ar5211
ath_hal_ar5212
ath_hal_ar5416 Garbage collect AH_SUPPORT_AR5416 config option. 2019-01-25 13:48:40 +00:00
ath_hal_ar9300
ath_main
ath_pci
ath_rate
autofs
bce
bcm283x_clkman Forgot to add the skeleton BCM283x Clock Manager 2018-01-22 08:33:59 +00:00
bcm283x_pwm Rename rpi_pwm to bcm283x_pwm, and build it on armv[67] and arm64. 2018-01-21 21:27:41 +00:00
bfe
bge Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
bhnd - Fix make in sys/modules 2018-01-12 12:14:14 +00:00
bios Retire CLANG_NO_IAS34 2018-11-01 23:11:47 +00:00
blake2 Move all sources from the llvm project into contrib/llvm-project. 2019-12-20 19:53:05 +00:00
bnxt
bridgestp
bwi
bwn bwn(4): Fix outstanding bug in PHY-G tssi2dbm table generation caught by 2018-02-12 22:21:11 +00:00
bxe disable set but not used on code that can't be changed 2018-05-19 04:46:34 +00:00
bytgpio
cam Add nvme_util.c to cam.ko. 2018-04-07 19:29:19 +00:00
cardbus
carp
cas Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
cbb We'll never have multiple slots a cardbus bridge. So, replace exca 2019-12-16 21:34:51 +00:00
cc
ccp Add ccp(4): experimental driver for AMD Crypto Co-Processor 2018-01-18 22:01:30 +00:00
cd9660
cd9660_iconv
ce Disable new clang 10.0.0 warnings about misleading indentation in ce(4) 2020-02-13 19:25:49 +00:00
cfi Remove kernel support for armeb 2018-07-17 23:23:45 +00:00
cfiscsi
chromebook_platform
chvgpio [chvgpio] add GPIO driver for Intel Z8xxx SoC family 2018-02-22 19:12:32 +00:00
ciss
cloudabi
cloudabi32 Pick the right vDSO file/linker flags when building cloudabi32.ko on ARM64. 2017-11-24 14:02:32 +00:00
cloudabi64
cmx
coretemp
cp Disable new clang 10.0.0 warnings about misleading indentation in ce(4) 2020-02-13 19:25:49 +00:00
cpsw
cpuctl
cpufreq cpufreq(4): Add support for Intel Speed Shift 2020-01-22 23:28:42 +00:00
crypto Expose zlib's utility functions in Z_SOLO library when building kernel. 2019-08-07 01:41:17 +00:00
cryptodev Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
ctau
ctl
cuse Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
cx
cxgb Retire the T3 iWARP and TOE drivers. This saves catch-up work when OFED or 2017-09-13 17:49:23 +00:00
cxgbe cxgbe(4): Update T4/5/6 firmwares to 1.24.12.0. 2020-02-12 02:55:06 +00:00
dc
dcons
dcons_crom
dpms
dtb Add an overlay for RK3328 USB3 node. 2020-01-29 12:10:42 +00:00
dtrace Stop compiling dtrace modules with -DSMP. 2020-02-05 19:08:45 +00:00
dummynet
efirt Add missing DPSRCS entry for assym.inc. 2019-06-11 23:35:49 +00:00
em Use symlinks for kernel modules rather than hardlinks 2019-04-20 12:51:05 +00:00
ena Introduce NETMAP support in ENA 2019-10-31 15:51:18 +00:00
epoch_test Add simple preempt safe epoch API 2018-05-10 17:55:24 +00:00
esp Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
et
evdev
exca
ext2fs ext2fs: Add uninit_bg feature support. 2017-06-20 14:28:51 +00:00
fdc
fdescfs
fdt Add another required header file. 2019-03-01 04:17:43 +00:00
ffec Add missing header dependencies (based on looking in the .depend file). 2017-06-13 14:07:13 +00:00
filemon Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
firewire
firmware
fusefs Remove the fuse.ko -> fusefs.ko symlink 2019-08-07 20:28:27 +00:00
fxp Remove a use of a negative array index from fxp(4). 2018-12-19 04:54:32 +00:00
gem Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
geom Remove GEOM_SCHED class and gsched tool. 2019-12-29 21:16:03 +00:00
glxiic
glxsb
gpio Add module build stuff for gpioths(4), a driver for DHT11/DHT22 sensors. 2019-12-07 17:54:40 +00:00
hifn
hme Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
hpt27xx
hptiop
hptmv Harmonize the hptmv blob's build rule with that of other hpt* drivers. 2019-10-02 16:18:50 +00:00
hptnr
hptrr
hwpmc Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
hwpmc_mips24k Add dependent header files 2019-03-28 08:30:45 +00:00
hwpmc_mips74k Add dependent header files 2019-03-28 08:30:45 +00:00
hyperv Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
i2c Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
iavf Use symlinks for kernel modules rather than hardlinks 2019-04-20 12:51:05 +00:00
ibcore Initial RoCE/infiniband kernel update to Linux v4.9. 2017-06-15 12:47:48 +00:00
ichwd
ida
if_bridge
if_disc
if_edsc
if_enc
if_epair
if_gif
if_gre Add GRE-in-UDP encapsulation support as defined in RFC8086. 2019-04-24 09:05:45 +00:00
if_lagg modules: adding some missing opt_* dependencies 2020-01-29 22:43:56 +00:00
if_me
if_ndis
if_stf
if_tuntap if_tuntap: remove if_{tun,tap}.ko -> if_tuntap.ko links 2019-10-21 20:28:38 +00:00
if_vlan modules: adding some missing opt_* dependencies 2020-01-29 22:43:56 +00:00
if_vxlan
iflib Fix make in sys/modules 2019-03-28 08:59:11 +00:00
iir
imgact_binmisc
imx Make the imx6_snvs driver usable as a module, add pnp info. Add a manpage. 2018-07-08 19:35:41 +00:00
intelspi
io
ioat
ip6_mroute_mod
ip_mroute_mod
ipdivert
ipfilter Whitespace adjustment. 2019-06-06 03:02:25 +00:00
ipfw Rework ipfw dynamic states implementation to be lockless on fast path. 2018-02-07 18:59:54 +00:00
ipfw_nat
ipfw_nat64 Follow RFC 4443 p2.2 and always use own addresses for reflected ICMPv6 2019-12-12 13:28:46 +00:00
ipfw_nptv6
ipfw_pmod
ipmi Fix a module Makefile error on amd64 so the IPMI HW interfaces are built. 2018-08-16 15:59:02 +00:00
ipoib Initial RoCE/infiniband kernel update to Linux v4.9. 2017-06-15 12:47:48 +00:00
ips
ipsec Revert r347402. After r347429 symlink is no longer needed. 2019-05-13 08:34:13 +00:00
ipw
ipwfw
isci
iscsi
iscsi_initiator
iser Use kern.opts.mk instead of bsd.own.mk (which includes src.opts.mk) 2018-03-17 17:18:46 +00:00
isp Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
ispfw Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
itwd itwd(4): driver for watchdog function in ITE Super I/O chips 2019-10-16 14:57:38 +00:00
iwi
iwifw
iwm iwm: Add device configuration definitions for 9000-series chips. 2019-11-07 23:35:54 +00:00
iwmfw Downgrade the firmware images imported in r354201. 2019-11-03 03:23:27 +00:00
iwn
iwnfw Stop using .OODATE for extracting firmware. 2019-06-12 00:03:00 +00:00
ix Remove more manual additions of -DSMP. 2020-02-06 21:01:19 +00:00
ixl ixl/iavf(4): Change ixlv to iavf and update it to use iflib(9) 2018-10-12 22:40:54 +00:00
ixv Remove more manual additions of -DSMP. 2020-02-06 21:01:19 +00:00
jme
kbdmux Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
kgssapi
kgssapi_krb5
khelp
krpc
ksyms
ktls_ocf Add kernel-side support for in-kernel TLS. 2019-08-27 00:01:56 +00:00
le Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
lge
libalias
libiconv
libmchain
lindebugfs LinuxKPI: Finalize move of lindebugfs from ports to base. 2019-05-19 15:44:21 +00:00
linprocfs Add warning to the Linuxulator makefiles that building it outside of a 2019-05-13 18:28:40 +00:00
linsysfs Add warning to the Linuxulator makefiles that building it outside of a 2019-05-13 18:28:40 +00:00
linux Replace -Werror with ${WERROR} in module builds 2019-08-25 22:06:17 +00:00
linux64 Replace -Werror with ${WERROR} in module builds 2019-08-25 22:06:17 +00:00
linux_common Add warning to the Linuxulator makefiles that building it outside of a 2019-05-13 18:28:40 +00:00
linuxkpi linuxkpi: Move shmem related functions in it's own file 2020-02-21 09:28:45 +00:00
lio Remove more manual additions of -DSMP. 2020-02-06 21:01:19 +00:00
lpt
mac_biba
mac_bsdextended
mac_ifoff
mac_lomac
mac_mls
mac_none
mac_ntpd Make it possible to run ntpd as a non-root user, add ntpd uid and gid. 2018-07-19 23:55:29 +00:00
mac_partition
mac_portacl
mac_seeotheruids
mac_stub
mac_test
mac_veriexec MAC/veriexec implements a verified execution environment using the MAC 2018-06-20 00:41:30 +00:00
mac_veriexec_sha1 MAC/veriexec implements a verified execution environment using the MAC 2018-06-20 00:41:30 +00:00
mac_veriexec_sha256 MAC/veriexec implements a verified execution environment using the MAC 2018-06-20 00:41:30 +00:00
mac_veriexec_sha384 MAC/veriexec implements a verified execution environment using the MAC 2018-06-20 00:41:30 +00:00
mac_veriexec_sha512 MAC/veriexec implements a verified execution environment using the MAC 2018-06-20 00:41:30 +00:00
malo
md
mdio
mem
mfi Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
mgb Introduce if_mgb driver for Microchip LAN743x PCIe NIC 2019-11-06 19:51:40 +00:00
mii
mlx
mlx4 Compile fix for the mlx4 module. 2017-11-21 09:08:27 +00:00
mlx4en
mlx4ib Update mlx4ib(4) to Linux 4.9. 2017-11-13 10:49:18 +00:00
mlx5 Add basic support for TCP/IP based hardware TLS offload to mlx5core. 2019-12-05 15:16:19 +00:00
mlx5en Implement hardware TLS via send tags for mlx5en(4), which is supported by 2019-12-06 15:36:32 +00:00
mlx5fpga_tools mlx5fpga_tools initial code import. 2018-12-05 14:17:22 +00:00
mlx5ib mlx5fpga: Initial code import. 2018-12-05 14:11:20 +00:00
mlxfw Initial version of Mellanox in-kernel firmware upgrade support. 2019-05-08 10:49:05 +00:00
mly
mmc
mmcnull Added mmcnull, an emulated lightweight MMC controller 2017-07-09 17:02:47 +00:00
mmcsd
mpr Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
mps Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
mpt
mqueue Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
mrsas
msdosfs Remove msdosfs -o large support. 2017-06-09 12:06:22 +00:00
msdosfs_iconv
msk
mthca Import the mthca kernel side infiniband driver from Linux 4.9 and fix 2018-02-13 17:04:34 +00:00
mvs
mwl
mwlfw Stop using .OODATE for extracting firmware. 2019-06-12 00:03:00 +00:00
mxge Expose zlib's utility functions in Z_SOLO library when building kernel. 2019-08-07 01:41:17 +00:00
my
nctgpio
ndis
netfpga10g
netgraph ng_ubt(4): do not attach Intel Wireless 8260/8265 in bootloader mode. 2019-08-18 22:11:42 +00:00
netmap netmap: align codebase to the current upstream (760279cfb2730a585) 2018-12-05 11:57:16 +00:00
nfe
nfscl
nfscommon Fix build in sys/modules/nfscommon 2019-04-10 16:48:45 +00:00
nfsd Add support for INET6 addresses to the kernel code that dumps open/lock state. 2019-04-13 22:00:09 +00:00
nfslock
nfslockd
nfssvc
nge
nmdm
ntb Forgotten part of r351137. 2019-08-16 20:30:31 +00:00
nullfs
nvd
nvdimm nvdimm(4): Fix Clang build after r353110 2019-10-04 21:47:09 +00:00
nvme Create a AHCI attachment for nvme. 2019-08-21 22:18:01 +00:00
nvram
oce Remove more manual additions of -DSMP. 2020-02-06 21:01:19 +00:00
ocs_fc Don't delete .depend files outside of cleandepend. 2019-06-12 23:09:10 +00:00
opal_nvram powerpc64/powernv: Add opal NVRAM driver for PowerNV systems 2019-09-14 03:30:34 +00:00
opensolaris Export cpu_core from opensolaris.ko. 2019-04-20 11:34:53 +00:00
otus
otusfw
ow
padlock
padlock_rng
pccard
pcfclock
pf Add a missing include of opt_sctp.h. 2019-10-12 23:01:16 +00:00
pflog pflog/pfsync: Fix module build with VIMAGE=yes 2018-07-01 18:09:16 +00:00
pfsync pflog/pfsync: Fix module build with VIMAGE=yes 2018-07-01 18:09:16 +00:00
plip
pms
powermac_nvram
ppbus
ppc
ppi
pps
procfs Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
proto
pseudofs
pst
pty
puc Add PNP info to the PCI attahement of the puc driver. 2018-04-17 16:46:08 +00:00
pwm Add ofw_pwmbus to enumerate pwmbus devices on systems configured with fdt 2019-06-17 03:32:05 +00:00
qlnx qlnxr(4), qlnxe(4): Unbreak gcc build 2019-02-01 23:04:45 +00:00
qlxgb
qlxgbe Upgrade FW to 5.4.66 2017-08-21 20:27:45 +00:00
qlxge
ral
ralfw Stop using .OODATE for extracting firmware. 2019-06-12 00:03:00 +00:00
random_fortuna
random_other
rc
rc4
rccgpio
rdma Initial RoCE/infiniband kernel update to Linux v4.9. 2017-06-15 12:47:48 +00:00
rdrand_rng
re
rl
rndtest
rockchip arm64: rockchip: Add a module for rk_spi 2020-01-02 17:44:41 +00:00
rp Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
rpi_ft5406
rtwn rtwn: rename module (if_rtwn.ko -> rtwn.ko) to match module name + drop 2017-06-09 07:08:58 +00:00
rtwn_pci rtwn_pci(4): add support for RTL8188EE chipset. 2019-01-02 06:48:53 +00:00
rtwn_usb rtwn_pci(4): add support for event-based Tx reports. 2019-01-02 05:21:06 +00:00
rtwnfw Stop using .OODATE for extracting firmware. 2019-06-12 00:03:00 +00:00
s3
safe
sbni
scc Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
sdhci Add dependency on opt_cam.h and opt_mmccam.h 2017-07-10 03:38:07 +00:00
sdhci_acpi - Fix make in sys/modules 2018-01-12 12:14:14 +00:00
sdhci_pci - Fix make in sys/modules 2018-01-12 12:14:14 +00:00
sdio Add opt_cam.h so we can build this outside of a kernel build. 2019-06-13 22:03:53 +00:00
sem Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
send
sfxge sfxge(4): add generated description of sensors 2018-11-30 05:54:30 +00:00
sge
sgx Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
sgx_linux Add support for Intel Software Guard Extensions (Intel SGX). 2017-08-16 10:38:06 +00:00
siftr
siis
sis
sk
smartpqi smartpqi(4): Use conventional path to driver sources 2018-04-28 17:43:51 +00:00
smbfs
snp
sound Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
speaker
spi Add opt_platform.h for several modules that have #ifdef FDT in the source. 2018-04-01 18:22:24 +00:00
spigen Fix make in sys/modules/spigen 2018-07-20 17:46:55 +00:00
splash
sppp
ste
stge
superio add superio driver 2019-07-01 17:05:41 +00:00
sym
syscons Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
sysvipc Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
tcp This commit adds BBR (Bottleneck Bandwidth and RTT) congestion control. This 2019-09-24 18:18:11 +00:00
tests
ti Add module makefiles for Texas Instruments ARM SoCs. 2019-06-16 01:22:44 +00:00
tmpfs Make TMPFS_PAGES_MINRESERVED a kernel option 2019-03-25 07:46:20 +00:00
toecore
tpm Revert r357349, since the clang 10.0.0 warning was actually correct, and 2020-02-01 16:57:04 +00:00
tsec
twa
twe
tws
uart Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
ubsec
ubser
uchcom Set .PATH to dev/usb/serial so that these modules compile again. 2018-07-06 22:07:26 +00:00
ucycom Set .PATH to dev/usb/serial so that these modules compile again. 2018-07-06 22:07:26 +00:00
udf
udf_iconv
ufs
uinput
unionfs
usb Fix build of stand/usb . 2020-01-23 10:40:34 +00:00
veriexec Device for user space to interface with MAC/veriexec. 2018-06-20 00:48:46 +00:00
vesa
vge
viawd
videomode
virtio
vkbd Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
vmd This driver attaches to the Intel VMD drive and connects a new PCI domain 2019-10-10 03:12:17 +00:00
vmm Remove more manual additions of -DSMP. 2020-02-06 21:01:19 +00:00
vmware vmxnet3: add support for RSS kernel option 2020-01-23 11:05:03 +00:00
vnic
vr
vte
wbwd
wi
wlan
wlan_acl
wlan_amrr
wlan_ccmp
wlan_rssadapt
wlan_tkip
wlan_wep
wlan_xauth
wpi
wpifw
wtap
x86bios
xl
xz Modularize xz. 2019-02-26 19:55:03 +00:00
zfs Remove duplicate lz4 implementations 2019-11-02 12:28:04 +00:00
zlib Remove zlib 1.0.4 from kernel. 2019-08-25 17:13:00 +00:00
Makefile [aacraid] Port driver to big-endian 2020-03-05 20:04:41 +00:00
Makefile.inc