lib: Add support for generic packing operations
authorVladimir Oltean <olteanv@gmail.com>
Thu, 2 May 2019 20:23:29 +0000 (23:23 +0300)
committerDavid S. Miller <davem@davemloft.net>
Fri, 3 May 2019 14:49:17 +0000 (10:49 -0400)
commit554aae35007e49f533d3d10e788295f7141725bc
tree188b3a98394b427d9f69e6539f7b3d871ade63b8
parent8b952747844526cef50fa2e0ae903f586e3cb2e4
lib: Add support for generic packing operations

This provides an unified API for accessing register bit fields
regardless of memory layout. The basic unit of data for these API
functions is the u64. The process of transforming an u64 from native CPU
encoding into the peripheral's encoding is called 'pack', and
transforming it from peripheral to native CPU encoding is 'unpack'.

Signed-off-by: Vladimir Oltean <olteanv@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/packing.txt [new file with mode: 0644]
MAINTAINERS
include/linux/packing.h [new file with mode: 0644]
lib/Kconfig
lib/Makefile
lib/packing.c [new file with mode: 0644]