25b152cd8c6a876a90c0ee0545cdbf6368564115
[coreboot.git] / src / arch / ppc / boot / linuxbios_table.h
1 #ifndef LINUXBIOS_TABLE_H
2 #define LINUXBIOS_TABLE_H
3
4 #include <boot/linuxbios_tables.h>
5
6 struct mem_range;
7
8 /* This file holds function prototypes for building the linuxbios table. */
9 unsigned long write_linuxbios_table(
10         unsigned long low_table_start, unsigned long low_table_end,
11         unsigned long rom_table_start, unsigned long rom_table_end);
12
13 struct lb_header *lb_table_init(unsigned long addr);
14 struct lb_record *lb_first_record(struct lb_header *header);
15 struct lb_record *lb_last_record(struct lb_header *header);
16 struct lb_record *lb_next_record(struct lb_record *rec);
17 struct lb_record *lb_new_record(struct lb_header *header);
18 struct lb_memory *lb_memory(struct lb_header *header);
19 void lb_memory_range(struct lb_memory *mem, 
20         uint32_t type, uint64_t startk, uint64_t sizek);
21 struct lb_mainboard *lb_mainboard(struct lb_header *header);
22 unsigned long lb_table_fini(struct lb_header *header);
23
24 /* Routines to extract part so the linuxBIOS table or information
25  * from the linuxBIOS table.
26  */
27 struct lb_memory *get_lb_mem(void);
28
29 extern struct cmos_option_table option_table;
30
31 #endif /* LINUXBIOS_TABLE_H */