coreboot/payloads/libpayload/include
Julius Werner 951f8a6d77 libpayload: Expand setbits_le32() and fix readl() const-ness
setbits_le32() is not really arch-specific... the arch-specific part of
accessing memory is wrapped by readl() and writel(), and the endianness
can be accounted for with the right macros. Generalize the definitions,
add a be32 version and move them to endian.h so that all platforms can
use them. Also include endian.h from libpayload.h so we won't update any
payload's old use of the macros (endianness is something useful enough
to always have avalable anyway, and shouldn't clash with other things).
This also fixes a bug where these macros would only be available if
libpayload-config.h had been independently included before.

Also fix a bug with readl() macros on all archs where they refused to
work on const pointers (which they should).

CQ-DEPEND=CL:208712
BUG=None
TEST=Stuff still compiles. Built and booted on Storm.

Change-Id: I01a7fbadbb5d740675657d95c1e969027562ba8c
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/208713
Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-by: David Hendricks <dhendrix@chromium.org>
2014-07-19 01:08:25 +00:00
..
arm/arch libpayload: Expand setbits_le32() and fix readl() const-ness 2014-07-19 01:08:25 +00:00
arm64/arch libpayload: Expand setbits_le32() and fix readl() const-ness 2014-07-19 01:08:25 +00:00
arpa Refactor the endianness conversion functions and header files. 2012-11-08 19:49:51 +01:00
pci libpayload: Fix renaming of REG_CLASS_DEV to REG_SUBCLASS 2012-12-10 16:45:00 +01:00
storage libpayload: Change CONFIG_* to CONFIG_LP_* in the kconfig. 2013-08-14 17:05:33 -07:00
sys libpayload: Start using only internal and compiler headers. 2013-03-13 22:04:44 +01:00
usb libpayload: Fix pointer related casts 2014-05-14 00:25:48 +00:00
x86/arch libpayload: Expand setbits_le32() and fix readl() const-ness 2014-07-19 01:08:25 +00:00
assert.h libpayload: Fix the format string of the assert macro. 2012-11-07 18:36:05 +01:00
cbfs.h Provide selfboot() external declaration in a common file 2014-05-24 02:53:58 +00:00
cbfs_core.h libpayload: Add support for arm64 in libpayload 2014-06-07 01:28:57 +00:00
cbfs_ram.h libpayload: expose cbfs ram functions 2013-05-24 16:27:51 -07:00
coreboot_tables.h libpayload: Parse CBMEM ACPI GNVS pointer 2013-12-13 03:55:53 +00:00
ctype.h Attached patch moves functions out of the huge libpayload.h into headers 2010-06-24 11:16:10 +00:00
die.h libpayload: Add a new "die" function to fatally signal programming errors. 2013-11-27 01:46:00 +00:00
endian.h libpayload: Expand setbits_le32() and fix readl() const-ness 2014-07-19 01:08:25 +00:00
errno.h Attached patch moves functions out of the huge libpayload.h into headers 2010-06-24 11:16:10 +00:00
exception.h libpayload: Rework exception hook interface 2014-06-11 03:30:54 +00:00
gdb.h libpayload: Add remote GDB support 2014-06-11 03:33:56 +00:00
getopt.h Since some people disapprove of white space cleanups mixed in regular commits 2010-04-27 06:56:47 +00:00
inttypes.h libpayload: Start using only internal and compiler headers. 2013-03-13 22:04:44 +01:00
ipchksum.h libpayload: Fix the license in some files which were accidentally made GPL. 2014-01-11 01:36:57 +00:00
kconfig.h libpayload: Change CONFIG_* to CONFIG_LP_* in the kconfig. 2013-08-14 17:05:33 -07:00
keycodes.h libpayload: Make keycode constants available outside of curses.h. 2013-03-18 20:45:48 +01:00
lar.h libpayload: Add LAR walking support 2008-05-07 20:34:02 +00:00
libpayload.h libpayload: Expand setbits_le32() and fix readl() const-ness 2014-07-19 01:08:25 +00:00
limits.h libpayload: Improve compatibility 2011-07-16 11:09:28 +02:00
lzma.h LZMA: Add a version of ulzma which takes the input and output buffer sizes. 2013-08-14 17:05:34 -07:00
malloc.h libpayload: Provide atol(), malloc.h 2011-07-07 22:29:53 +02:00
multiboot_tables.h [PATCH] libpayload: Add multiboot support 2008-10-20 16:51:43 +00:00
panel.h libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pci.h libpayload: Add definitions for more config space registers. 2012-11-07 18:36:27 +01:00
stdarg.h libpayload: Don't sneak in compiler includes 2013-04-09 13:45:42 -07:00
stddef.h ARM: API to Map Physical Address to Wipe Memory above 4GB 2014-03-07 04:54:49 +00:00
stdint.h libpayload: Fix type issues 2013-03-26 19:36:39 +01:00
stdio.h libpayload: Add the format attribute to functions in stdio.h. 2012-11-07 18:36:14 +01:00
stdlib.h libpayload: Add remote GDB support 2014-06-11 03:33:56 +00:00
string.h libpayload: Implement strlcpy 2011-07-07 22:29:35 +02:00
strings.h libpayload: Implement ffs() 2011-03-01 07:23:49 +00:00
sysinfo.h libpayload: Parse CBMEM ACPI GNVS pointer 2013-12-13 03:55:53 +00:00
term.h libpayload: remove trailing whitespace and run dos2unix 2011-11-01 19:08:23 +01:00
unistd.h libpayload: Don't sneak in compiler includes 2013-04-09 13:45:42 -07:00
video_console.h Add coreboot framebuffer support to libpayload 2010-03-25 18:56:26 +00:00