[coreboot] first output: dbe62 and v3

Carl-Daniel Hailfinger c-d.hailfinger.devel.2006 at gmx.net
Wed Mar 5 14:49:12 CET 2008

On 05.03.2008 07:23, ron minnich wrote:
> One thing I plan to change pretty soon: power button control can move
> from stage1 to stage2,

That depends on your goals. We once discussed how to fail over to a 
initram/stage2/payload downloaded via serial. That can take a lot of 
time. I seem to remember that some power button control on some Geode 
boards has to be done in the first 4 seconds after poweron. That timing 
constraint will bite us when downloading over serial. Of course, if I'm 
wrong (or we can perform failsafe powerbutton control in stage 1), 
discard my objection.

>  and power button control will be managed in dts
> (another dts setting we would NOT want visible in Kconfig; you could
> render a board totally unbootable and unrepairable with the wrong
> setting. Kconfig should be for settings that are safe to change).

We currently abuse Kconfig for settings which should be available 
before/outside stage2, iow when the device tree is not available. 
Depending on our design stategy, we may want to generate a subset of the 
device tree as #defines suitable for inclusion outside stage2.

> There are other things in stage1 for the lx that we should try to move
> to stage 2:
>         cs5536_setup_extmsr();
>         cs5536_setup_cis_mode();
>         msr = rdmsr(GLCP_SYS_RSTPLL);
>         if (msr.lo & (0x3f << 26)) {
>                 /* PLL is already set and we are reboot from PLL reset. */
>                 return;
>         }
>         cs5536_setup_idsel();
>         cs5536_usb_swapsif();
>         cs5536_setup_iobase();
>         cs5536_setup_smbus_gpio();
>         /* cs5536_enable_smbus(); -- Leave this out for now. */
> //      cs5536_setup_power_button();
> how much of this do we want managed in stage1? How much is unchanging,
> board to board? How much MUST be there? Really, a lot is going on;
> what can we leave to stage 2. Power button for sure; what else?

I'd say anything which is neither time-critical (in the sense of time 
after poweron) nor essential for emergency initram+stage2 downloads over 
serial/usbdebug nor a ROM access/execution speedup can move to stage2 
phase 1.

> And how do we parameterize this? Just pass in a set of booleans for
> those things we wish to control (e.g. smbus).

See my device tree subset generation idea above.

> At this rate, carl-daniel, we may soon have another board for your list.




More information about the coreboot mailing list