[Openec] SPI Flash Fast Read, 46% speed increase

Frieder Ferlemann frieder.ferlemann at web.de
Mon Sep 17 17:22:38 EDT 2007


Hi Richard,

Richard A. Smith schrieb:
>> The quicker EC translates into powersavings if the XO waits
>> for the EC and if the SPI clock is properly gated (CLKCFG bit 0,
>> openec will take advantage of this).
> 
> Can I just hit this bit somewhere on the boot sequence or does it have
> to be synced with something?

You could probably do it from OFW, set
  CLKCFG = 0xd4;
instead of:
  CLKCFG = 0x94;
(SPICFG = 0x04 already prepares for the quick clock.)

I'm not aware of needing to sync with something.
There must be some prefetching/caching algorithm in the kb3700
but I can only wild guess when it would be active and how its
size and alignments are and which SFR bits would switch
on/off/modify prefetching/caching.

Note: my B1 is _not_ stable with the double SPI clock.
(Although I ran it with the reset default of PLLCFG 0x70
which results in around 29.3 MHz (so 58.6 MHz for double clock)
here. I could try to underclock the kb3700 to 25 MHz so the
SPI would be within spec)

> Not sure about the power savings though because the EC never sleeps in
> the current design.

Openec does.

> The other gotcha is that most of the delays in the laptop EC code are
> based on loop time.  Changing the loop time may have some interesting
> results...
> 
>> I cannot currently oversee what that speed increase would mean
>> for the XO.
>> Yet if a quick SPI is among the options (it would not help
>> if f.e. a quick SPI had ElectroMagnetic Interference problems)
>> and it's not too late then one could go for it?)
> 
> It sounds great but if its out of spec for the spansion then I don't
> think we can ever use it in production unless spansion tells me its OK.
>  Thats the type of thing you can run on thousand's of units ok and then
> one batch of chips that are on the slower side of the typical screw you.

Yes, I do not want to propose using the SPI flash out of spec.

Definitely not. While I do overclock systems for testing purposes
I'd never consider this for production.
(please don't invest time into asking spansion for a closer spec:)

Greetings,
Frieder



More information about the Openec mailing list