Name Date Size #Lines LOC

..--

arch/H25-Apr-2025-7,9844,473

bin/H25-Apr-2025-386255

configs/H25-Apr-2025-11399

crypto/H25-Apr-2025-241131

curses/H25-Apr-2025-67,32143,443

drivers/H25-Apr-2025-27,43219,690

gdb/H25-Apr-2025-514359

include/H25-Apr-2025-10,0595,424

libc/H25-Apr-2025-4,9442,828

libcbfs/H25-Apr-2025-312229

liblz4/H25-Apr-2025-500365

liblzma/H25-Apr-2025-553404

libpci/H25-Apr-2025-256157

sample/H25-Apr-2025-213106

tests/H25-Apr-2025-1,9941,562

vboot/H25-Apr-2025-124100

.gitignoreH A D25-Apr-20259 21

DoxyfileH A D25-Apr-202566.7 KiB1,6421,182

KconfigH A D25-Apr-202512.9 KiB513415

LICENSESH A D25-Apr-20256.2 KiB138113

LICENSE_GPLH A D25-Apr-202517.8 KiB346285

MakefileH A D25-Apr-202511.8 KiB401273

Makefile.mkH A D25-Apr-20258.4 KiB197140

Makefile.payloadH A D25-Apr-20254.3 KiB16197

READMEH A D25-Apr-20251.9 KiB7245

README

1-------------------------------------------------------------------------------
2libpayload README
3-------------------------------------------------------------------------------
4
5libpayload is a minimal library to support standalone payloads
6that can be booted with firmware like coreboot. It handles the setup
7code, and provides common C library symbols such as malloc() and printf().
8
9Note: This is _not_ a standard library for use with an operating system,
10rather it's only useful for coreboot payload development!
11See https://www.coreboot.org for details on coreboot.
12
13
14Installation
15------------
16
17 $ git clone https://review.coreboot.org/coreboot.git
18
19 $ cd coreboot/payloads/libpayload
20
21 $ make menuconfig
22
23 $ make
24
25 $ make install (optional, will install into ./install per default)
26
27On x86 systems, libpayload will always be 32-bit even if your host OS runs
28in 64-bit, so you might have to install the 32-bit libgcc version.
29On Debian systems you'd do 'apt-get install gcc-multilib' for example.
30
31Run 'make distclean' before switching boards. This command will remove
32your current .config file, so you need 'make menuconfig' again or
33'make defconfig' in order to set up configuration. Default configuration
34is based on 'configs/defconfig'. See the configs/ directory for examples
35of configuration.
36
37
38Usage
39-----
40
41Here's an example of a very simple payload (hello.c) and how to build it:
42
43 #include <libpayload.h>
44
45 int main(void)
46 {
47     printf("Hello, world!\n");
48     return 0;
49 }
50
51Building the payload using the 'lpgcc' compiler wrapper:
52
53 $ lpgcc -o hello.elf hello.c
54
55Please see the sample/ directory for details.
56
57
58Website and Mailing List
59------------------------
60
61The main website is https://www.coreboot.org/Libpayload.
62
63For additional information, patches, and discussions, please join the
64coreboot mailing list at https://www.coreboot.org/Mailinglist, where most
65libpayload developers are subscribed.
66
67
68Copyright and License
69---------------------
70
71See LICENSES.
72