[flashrom] Help: unable to upgrade bios

David Hendricks dhendrix at google.com
Sat Jan 7 00:12:21 CET 2012


On Fri, Jan 6, 2012 at 5:12 AM, Raghuramchary Jallipalli <
Raghuramchary.Jallipalli at lntinfotech.com> wrote:

> The force option enable worked and we were able to program the AT25DF321A
> flash. But the contents are wrong and the board was not able to come up.
> Please see attached for the verbose output for both read and write.
>

There is a high likelihood that either the Management Engine (ME) or
embedded controller (EC) is interfering with Flashrom operation.

One concern is that flashrom does not appear to set the op.atomic field
properly:
0x94: 0x0606     (PREOP)
0x96: 0x0be4     (OPTYPE)
0x98: 0x02030105 (OPMENU)
0x9C: 0xff9f3c20 (OPMENU+4)
0xA0: 0x00000000 (BBAR)
0xD0: 0x00000000 (FPB)
Reading OPCODES... done
preop0=0x06, preop1=0x06
op[0]=0x05, 0, 0
op[1]=0x01, 1, 0
op[2]=0x03, 2, 0
op[3]=0x02, 3, 0
op[4]=0x20, 3, 0
op[5]=0x3c, 2, 0
op[6]=0x9f, 0, 0
op[7]=0xff, 0, 0

The third column shows that none of the opcodes are configured as atomic
cycles. Thus, Flashrom does not know to set the SPIC_ACS bit (
http://flashrom.org/trac/flashrom/browser/trunk/ichspi.c#L782) when
processing these opcodes.

If the "atomic" field is not set properly, then it is possible for ME or EC
to interfere with flashrom in between write enable (WREN) opcodes such as
block erase and program page.

On Fri, Jan 6, 2012 at 5:12 AM, Raghuramchary Jallipalli <
Raghuramchary.Jallipalli at lntinfotech.com> wrote:

> For your info, the board has two flashes(each 4MB) and the bios resides on
> the second(we have a jumper option to select the flash device). We are
> confused whether the flashrom selects the correct flash device and program
> it.
>

Are both ROMs logically present? Or will the jumper only enable one ROM at
a given time?

If there are multiple ROMs present, then Flashrom use the "Hardware
Sequencing" method of flashing when it detects the "Number of Components"
(NC) > 0 in the flash descriptor region:
http://flashrom.org/trac/flashrom/browser/trunk/ichspi.c#L1742

See FLMAP0 in the Intel documentation for more details, and ensure the NC
field is programmed appropriately for your mainboard configuration.

-- 
David Hendricks (dhendrix)
Systems Software Engineer, Google Inc.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.flashrom.org/pipermail/flashrom/attachments/20120106/916e1c31/attachment.html>


More information about the flashrom mailing list