blob: 773e05383513b940ca29d8bef8975f286ba94060 [file] [log] [blame]
Stefan Reinauerf8ee1802008-01-18 15:08:58 +00001#ifndef COREBOOT_TABLE_H
2#define COREBOOT_TABLE_H
Eric Biederman8ca8d762003-04-22 19:02:15 +00003
Stefan Reinauerca374d42008-01-18 16:16:45 +00004#include <boot/coreboot_tables.h>
Eric Biederman8ca8d762003-04-22 19:02:15 +00005
Stefan Reinauerf8ee1802008-01-18 15:08:58 +00006/* This file holds function prototypes for building the coreboot table. */
7unsigned long write_coreboot_table(
Eric Biederman8ca8d762003-04-22 19:02:15 +00008 unsigned long low_table_start, unsigned long low_table_end,
9 unsigned long rom_table_start, unsigned long rom_table_end);
10
Stefan Reinauer14e22772010-04-27 06:56:47 +000011void lb_memory_range(struct lb_memory *mem,
Eric Biederman6e53f502004-10-27 08:53:57 +000012 uint32_t type, uint64_t start, uint64_t size);
Eric Biederman8ca8d762003-04-22 19:02:15 +000013
Stefan Reinauerf8ee1802008-01-18 15:08:58 +000014/* Routines to extract part so the coreboot table or information
15 * from the coreboot table.
Eric Biederman8ca8d762003-04-22 19:02:15 +000016 */
17struct lb_memory *get_lb_mem(void);
18
Stefan Reinauer045c3482008-12-13 20:51:34 +000019/* defined by mainboard.c if the mainboard requires extra resources */
20int add_mainboard_resources(struct lb_memory *mem);
Stefan Reinauerde3206a2010-02-22 06:09:43 +000021int add_northbridge_resources(struct lb_memory *mem);
Stefan Reinauer045c3482008-12-13 20:51:34 +000022
Stefan Reinauerf8ee1802008-01-18 15:08:58 +000023#endif /* COREBOOT_TABLE_H */