The main objective of this series was originally to define a single public header file containing a few structure definitions that are currently defined privately for the Qualcomm "rmnet" driver. In review, Arnd Bergmann said that before making them public, the structures should avoid using C bit-fields in their definitions.
To facilitate implementing that suggestion I rearranged some other code, including eliminating some accessor macros that I believe reduce rather than improve the clarity of the code that uses them. I also discovered a bug (concievably due to non-portable behavior) in the way one of the structures is defined, so I fixed that. And finally I ensured all of the fields in these structures were defined with proper annotation of their big endianness. A form of the code in this series was present in this patch: https://lore.kernel.org/lkml/20190512012508.10608-3-el...@linaro.org/ This series is available here, based on kernel v5.2-rc1: remote: https://git.linaro.org/people/elder/linux.git branch: ipa-rmnet-v1_kernel-5.2-rc1 acbcb18302a net: introduce "include/linux/if_rmnet.h" -Alex Alex Elder (8): net: qualcomm: rmnet: fix struct rmnet_map_header net: qualcomm: rmnet: kill RMNET_MAP_GET_*() accessor macros net: qualcomm: rmnet: use field masks instead of C bit-fields net: qualcomm: rmnet: don't use C bit-fields in rmnet checksum header net: qualcomm: rmnet: don't use C bit-fields in rmnet checksum trailer net: qualcomm: rmnet: get rid of a variable in rmnet_map_ipv4_ul_csum_header() net: qualcomm: rmnet: mark endianness of struct rmnet_map_dl_csum_trailer fields net: introduce "include/linux/if_rmnet.h" .../ethernet/qualcomm/rmnet/rmnet_handlers.c | 11 ++-- .../net/ethernet/qualcomm/rmnet/rmnet_map.h | 36 ---------- .../qualcomm/rmnet/rmnet_map_command.c | 12 +++- .../ethernet/qualcomm/rmnet/rmnet_map_data.c | 65 +++++++++---------- .../net/ethernet/qualcomm/rmnet/rmnet_vnd.c | 1 + include/linux/if_rmnet.h | 45 +++++++++++++ 6 files changed, 91 insertions(+), 79 deletions(-) create mode 100644 include/linux/if_rmnet.h -- 2.20.1