libpayload: Add PAYLOAD_INFO macro
Adds the PAYLOAD_INFO macro to store payload information in a data section in the ELF which can be consumed by other entities. Signed-off-by: Jordan Crouse <jordan.crouse@amd.com> Acked-by: Peter Stuge <peter@stuge.se> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3354 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
		@@ -55,6 +55,18 @@
 | 
			
		||||
 | 
			
		||||
#define RAND_MAX 0x7fffffff
 | 
			
		||||
 | 
			
		||||
/* Payload information parameters - these are used to pass information
 | 
			
		||||
 * to the entity loading the payload
 | 
			
		||||
 * Usage:  PAYLOAD_INFO(key, value)
 | 
			
		||||
 * Example:  PAYLOAD_INFO(name, "CoreInfo!")
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#define _pstruct(key) __pinfo_ ##key
 | 
			
		||||
#define PAYLOAD_INFO(key, value)                                        \
 | 
			
		||||
static const char _pstruct(key)[]                                        \
 | 
			
		||||
  __attribute__((__used__))                                              \
 | 
			
		||||
  __attribute__((section(".note.pinfo"),unused)) = #key "=" value
 | 
			
		||||
 | 
			
		||||
/* Some NVRAM byte definitions */
 | 
			
		||||
#define NVRAM_RTC_SECONDS        0
 | 
			
		||||
#define NVRAM_RTC_MINUTES        2
 | 
			
		||||
 
 | 
			
		||||
@@ -81,5 +81,5 @@ SECTIONS
 | 
			
		||||
 | 
			
		||||
	_end = .;
 | 
			
		||||
 | 
			
		||||
	/DISCARD/ : { *(.comment) *(.note) *(.note.*) }
 | 
			
		||||
	/DISCARD/ : { *(.comment) }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user