sconfig: Add SMBIOS type 9 entries
Add the new field 'smbios_slot_desc', which takes 2 to 4 arguments. The field is valid for PCI devices and only compiled if SMBIOS table generation is enabled. smbios_slot_desc arguments: 1. slot type 2. slot lenth 3. slot designation (optional) 4. slot data width (optional) Example: device pci 1c.1 on smbios_slot_desc "21" "3" "MINI-PCI-FULL" "8" end # PCIe Port #2 Integrated Wireless LAN Tested on Lenovo T520. Change-Id: If95aae3c322d3da47637613b9a872ba1f7af9080 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/32307 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
This commit is contained in:
committed by
Patrick Georgi
parent
1a93058448
commit
ac24d3c311
@@ -21,40 +21,41 @@ int linenum = 0;
|
||||
%}
|
||||
%option nodebug
|
||||
%%
|
||||
[ \t]+ {}
|
||||
#.*\n {linenum++;}
|
||||
\r?\n {linenum++;}
|
||||
chip {return(CHIP);}
|
||||
device {return(DEVICE);}
|
||||
register {return(REGISTER);}
|
||||
on {yylval.number=1; return(BOOL);}
|
||||
off {yylval.number=0; return(BOOL);}
|
||||
hidden {yylval.number=3; return(HIDDEN);}
|
||||
pci {yylval.number=PCI; return(BUS);}
|
||||
ioapic {yylval.number=IOAPIC; return(BUS);}
|
||||
pnp {yylval.number=PNP; return(BUS);}
|
||||
i2c {yylval.number=I2C; return(BUS);}
|
||||
lapic {yylval.number=APIC; return(BUS);}
|
||||
cpu_cluster {yylval.number=CPU_CLUSTER; return(BUS);}
|
||||
cpu {yylval.number=CPU; return(BUS);}
|
||||
domain {yylval.number=DOMAIN; return(BUS);}
|
||||
generic {yylval.number=GENERIC; return(BUS);}
|
||||
mmio {yylval.number=MMIO; return(BUS);}
|
||||
spi {yylval.number=SPI; return(BUS);}
|
||||
usb {yylval.number=USB; return(BUS);}
|
||||
irq {yylval.number=IRQ; return(RESOURCE);}
|
||||
drq {yylval.number=DRQ; return(RESOURCE);}
|
||||
io {yylval.number=IO; return(RESOURCE);}
|
||||
ioapic_irq {return(IOAPIC_IRQ);}
|
||||
inherit {return(INHERIT);}
|
||||
subsystemid {return(SUBSYSTEMID);}
|
||||
end {return(END);}
|
||||
= {return(EQUALS);}
|
||||
0x[0-9a-fA-F.]+ {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(NUMBER);}
|
||||
[0-9.]+ {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(NUMBER);}
|
||||
[0-9a-fA-F.]+ {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(NUMBER);}
|
||||
INT[A-D] {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(PCIINT);}
|
||||
\"\"[^\"]+\"\" {yylval.string = malloc(yyleng-1); strncpy(yylval.string, yytext+1, yyleng-2); yylval.string[yyleng-2]='\0'; return(STRING);}
|
||||
\"[^\"]+\" {yylval.string = malloc(yyleng-1); strncpy(yylval.string, yytext+1, yyleng-2); yylval.string[yyleng-2]='\0'; return(STRING);}
|
||||
[^ \n\t]+ {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(STRING);}
|
||||
[ \t]+ {}
|
||||
#.*\n {linenum++;}
|
||||
\r?\n {linenum++;}
|
||||
chip {return(CHIP);}
|
||||
device {return(DEVICE);}
|
||||
register {return(REGISTER);}
|
||||
on {yylval.number=1; return(BOOL);}
|
||||
off {yylval.number=0; return(BOOL);}
|
||||
hidden {yylval.number=3; return(HIDDEN);}
|
||||
pci {yylval.number=PCI; return(BUS);}
|
||||
ioapic {yylval.number=IOAPIC; return(BUS);}
|
||||
pnp {yylval.number=PNP; return(BUS);}
|
||||
i2c {yylval.number=I2C; return(BUS);}
|
||||
lapic {yylval.number=APIC; return(BUS);}
|
||||
cpu_cluster {yylval.number=CPU_CLUSTER; return(BUS);}
|
||||
cpu {yylval.number=CPU; return(BUS);}
|
||||
domain {yylval.number=DOMAIN; return(BUS);}
|
||||
generic {yylval.number=GENERIC; return(BUS);}
|
||||
mmio {yylval.number=MMIO; return(BUS);}
|
||||
spi {yylval.number=SPI; return(BUS);}
|
||||
usb {yylval.number=USB; return(BUS);}
|
||||
irq {yylval.number=IRQ; return(RESOURCE);}
|
||||
drq {yylval.number=DRQ; return(RESOURCE);}
|
||||
io {yylval.number=IO; return(RESOURCE);}
|
||||
ioapic_irq {return(IOAPIC_IRQ);}
|
||||
inherit {return(INHERIT);}
|
||||
subsystemid {return(SUBSYSTEMID);}
|
||||
end {return(END);}
|
||||
smbios_slot_desc {return(SLOT_DESC);}
|
||||
= {return(EQUALS);}
|
||||
0x[0-9a-fA-F.]+ {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(NUMBER);}
|
||||
[0-9.]+ {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(NUMBER);}
|
||||
[0-9a-fA-F.]+ {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(NUMBER);}
|
||||
INT[A-D] {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(PCIINT);}
|
||||
\"\"[^\"]+\"\" {yylval.string = malloc(yyleng-1); strncpy(yylval.string, yytext+1, yyleng-2); yylval.string[yyleng-2]='\0'; return(STRING);}
|
||||
\"[^\"]+\" {yylval.string = malloc(yyleng-1); strncpy(yylval.string, yytext+1, yyleng-2); yylval.string[yyleng-2]='\0'; return(STRING);}
|
||||
[^ \n\t]+ {yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(STRING);}
|
||||
%%
|
||||
|
Reference in New Issue
Block a user