mirror of
https://github.com/opnsense/src.git
synced 2026-02-19 02:30:08 -05:00
The original NVMe API used bit-fields to represent fields in data structures defined by the specification (e.g. the op-code in the command data structure). The implementation targeted x86_64 processors and defined the bit fields for little endian dwords (i.e. 32 bits). This approach does not work as-is for big endian architectures and was changed to use a combination of bit shifts and masks to support PowerPC. Unfortunately, this changed the NVMe API and forces #ifdef's based on the OS revision level in user space code. This change reverts to something that looks like the original API, but it uses bytes instead of bit-fields inside the packed command structure. As a bonus, this works as-is for both big and little endian CPU architectures. Bump __FreeBSD_version to 1200081 due to API change Reviewed by: imp, kbowling, smh, mav Approved by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D16404 |
||
|---|---|---|
| .. | ||
| mpi | ||
| mpr.c | ||
| mpr_config.c | ||
| mpr_ioctl.h | ||
| mpr_mapping.c | ||
| mpr_mapping.h | ||
| mpr_pci.c | ||
| mpr_sas.c | ||
| mpr_sas.h | ||
| mpr_sas_lsi.c | ||
| mpr_table.c | ||
| mpr_table.h | ||
| mpr_user.c | ||
| mprvar.h | ||