freebsd-skq/sys/powerpc
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
..
aim powerpc: unconditionally mark SLB zones UMA_ZONE_CONTIG 2020-02-19 04:46:41 +00:00
amigaone Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
booke Unbreak the 32-bit powerpc builds 2020-02-25 02:42:43 +00:00
conf [aacraid] Port driver to big-endian 2020-03-05 20:04:41 +00:00
cpufreq powerpc: Fix cpufreq statement scoping 2019-03-08 03:59:53 +00:00
fpu Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
include Define MAXCPU consistently between the kernel and KLDs. 2020-02-05 19:08:21 +00:00
mambo sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
mikrotik - Allow different slicers for different flash types to be registered 2017-02-22 10:21:39 +00:00
mpc85xx powerpc/mpc85xx: Partially revert r356640 2020-01-13 23:09:00 +00:00
ofw Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
powermac Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
powernv powerpc/powernv: powernv_node_numa_domain() fix non-NUMA case 2020-03-03 03:22:00 +00:00
powerpc [PowerPC64] fix uma_small_free panic 2020-03-05 12:24:48 +00:00
ps3 Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
pseries This is Ethernet driver so mark the interrupt appropriately. 2020-01-23 01:46:05 +00:00
psim Remove more needless <sys/tty.h> includes 2019-12-01 20:43:37 +00:00