ADLO committed (NO FUNCTION TABLES!)

Ronald G. Minnich rminnich at lanl.gov
Tue Nov 26 15:41:00 CET 2002


On Tue, 26 Nov 2002, Ronald G. Minnich wrote:

> On Tue, 26 Nov 2002, Adam Sulmicki wrote:
> 
> > well it always could be intermediate solution. In this way we only have 4
> > data structures and no functions.
> 
> sounds like we need a union, with a tag, and then the descriptors. In the 
> limit, the tag can be TAG_CODE, meaning you have to call the attached data 
> blob:
> 
> enum {TAG_CODE, TAG_PCI_CONFIG, TAG_ISA, TAG_CPU} ; 
> 
> typedef struct {
> 	unsigned short vendor, device;
> 	u8 function, register;
> 	u8 and, or;
> } pci_config_data;
> 
> typedef struct {
> 	u16 iobase;
> 	u8 and, or;
> } isa;
> 
> typedef struct {
> 	unsigned long msr;
> 	unsigned long long and, or;
> } cpu;
> 
> // has to be PIC.
> typedef struct {
> 	unsigned long len;
> 	char code;
> } code;
>  
> typedef struct {
> 	u8 tag;
> 	union {
> 		pci_config_data pci;
> 		isa isa;
> 		cpu cpu;
> 		code code;
> 	} data;
> };
> 
> Would this do it?

I'm willing to write some of this if nobody else can, and if it would 
work.

ron




More information about the coreboot mailing list