ichxrom driver question
Eric W. Biederman
ebiederman at lnxi.com
Tue Dec 20 20:40:13 EST 2005
Dave Peterson <dsp at llnl.gov> writes:
> I attempted to flash the BIOS on a machine with an Intel 82801CA
> (ICH3-S) I/O Controller Hub as follows:
>
> # modprobe ichxrom
> # modprobe mtdchar
> # mtd_unlock /dev/mtd0
> # mtd_eraseall /dev/mtd0
> Erased 512 Kibyte @ 0 -- 100% complete.
> # dd if=bios_image of=/dev/mtd0
> 1024+0 records in
> 1024+0 records out
> # dd if=/dev/mtd0 of=result
> 1024+0 records in
> 1024+0 records out
> # mtd_lock /dev/mtd0 0 -1
>
> After doing the above, I examind the file 'result' and all it
> contains is a bunch of zero bytes. Thus the BIOS flashing operation
> appears to have failed (I confirmed this by attempting to reboot, and
> sure enough, the BIOS appears to have been wiped out).
Hmm. Immediately after the erase operation you should see all f's.
The only thing I can think of that might trigger what you are seeing
is a cached flash chip.
> I did this using the version of the ichxrom driver from the 2.6.9
> kernel. Looking briefly at this code in comparison to a more recent
> version of the code from the 2.6.14.4 kernel, it looks like
> substantial changes have been made.
I honestly don't recall. I don't have a good handle on when
changes were made versus when they were merged.
> So my question is, are there known problems with the version of the
> ichxrom driver in the 2.6.9 kernel, and if so, have the problems
> been fixed in later kernels?
The biggest practical changes was to allow it to work with other than
intel flash parts. That required removing some hacks. But I don't
know of any cases where things half worked.
> Also, are there any known issues with
> the ICH3-S that may explain the behavior I observe? When replying,
> please cc dsp at llnl.gov.
The ICH3-S is more of a conduit. The usual questions are:
Is there motherboard specific magic that denies writes?
What is the actual flash chip you are flashing.
Except for the possibility of bad cache I can't think of anything
that would cause the wrong data to be written. Are you certain
you have a good flash image?
Eric
More information about the linux-mtd
mailing list