'''libpayload''' is a small BSD-licensed static library (a lightweight implementation of common and useful functions) intended to be used as a basis for coreboot [[payloads]].

−

Currently a concept rather than shipping code, libpayload is a coreboot subproject that intends to provide a lightweight implementation of common and useful functions for coreboot payloads. The benefits of linking a coreboot payload against libpayload are:

+

The benefits of linking a coreboot payload against libpayload are:

−

* payloads do not have to implement and maintain low-level code for I/O, common functions, etc,

+

−

* payloads can be recompiled and deployed for CPU architectures supported by coreboot in the future,

* [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=scripts/kconfig/lxdialog;hb=HEAD lxdialog] from the Linux '''kconfig''' utility has been ported to be usable when linked with libpayload (patch pending).

+

+

== Downloading and building libpayload ==

+

+

It is now in main coreboot git tree (see [[Download_coreboot]] for additional reference)

+

+

$ '''git clone http://review.coreboot.org/p/coreboot'''

+

$ '''cd payloads/libpayload'''

+

$ '''make menuconfig'''

+

$ '''make install'''

+

+

Here [http://review.coreboot.org/#/q/status:open+project:coreboot+message:libpayload,n,z gerrit] you can find pending patches for libpayload

+

+

== Documentation ==

+

+

See the autogenerated documentation for libpayload [http://qa.coreboot.org/docs/libpayload/ here].