[coreboot] Resource allocation

ron minnich rminnich at gmail.com
Fri Nov 14 17:43:07 CET 2008


OK, to use this I still see a problem.

In order to make the pnp devices not be dynamic, we have lost the
ability to have default superio settings that don't have to be done in
the mainboard.

In other words, in the current system, we have this *in the superio*:

-	/* Floppy */
-	floppydev = "0x0";
-	floppyenable = "0";
-	floppyio = "0x3f0";
-	floppyirq = "0x60";
-	floppydrq = "0x02";
-
-	/* Parallel port */
-	ppdev = "2";
-	ppenable = "0";
-	ppio = "0x378";
-	ppirq = "7";
-
-	/* COM1 */
-	com1dev = "2";
-	com1enable = "0";
-	com1io = "0x3f8";
-	com1irq = "4";
-
-	/* COM2 */
-	com2dev = "3";
-	com2enable = "0";
-	com2io = "0x2f8";
-	com2irq = "3";
-
-	/* Keyboard */
-	kbdev = "5";
-	kbenable = "0";
-	kbio = "0x60";
-	kbio2 = "0x62";
-	kbirq = "1";
-	kbirq2 = "12";
-
-	/* Consumer IR */
-	cirdev = "6";
-	cirenable = "0";
-
-	/* Game port */
-	gamedev = "7";
-	gameenable = "0";
-	gameio = "0x220";
-	gameio2 = "0x400";
-	gameirq = "9";
-
-	/* GPIO2 */
-	gpio2dev = "8";
-	gpio2enable = "0";
-
-	/* GPIO3 */
-	gpio3dev = "9";
-	gpio3enable = "0";
-
-	/* ACPI */
-	acpidev = "0xa";
-	acpienable = "0";
-
-	/* Hardware Monitor */
-	hwmdev = "0xb";
-	hwmenable = "0";
-	hwmio = "0x290";
-	hwmirq = "5";

now, for each and every *mainboard* that uses that superio, we have to
set these defaults in the mainboard.

That's not good.

The problem is easily solved: create files such as
superio/common/com1.dts, and use them instead of the pnp.dts which has
non-optimal default settings. Or, just create
superio/winbond/whatever/comport.dts, keyboard.dts, etc. and use them.

I think this is closer but maybe still not right. This could be the
template for all other dts setups if we get it right.

ron




More information about the coreboot mailing list