Hi,
I have a 32bit touch screen device running CentOS 5.2 which has some of its BIOS settings accessible in /dev/nvram and others elsewhere else (that's why I've been loooking at flashrom).
I have tried later distributions (CentOS 6.7 and the System Rescue CD) and they both report the following:
[root@server ~]# /var/tmp/flashrom-0.9.8/flashrom -p internal
flashrom v0.9.8-r1888 on Linux 2.6.32-573.el6.i686 (i686)
flashrom is free software, get the source code at http://www.flashrom.org
Calibrating delay loop... OK.
WARNING: No chipset found. Flash detection will most likely fail.
No EEPROM/flash device found.
Note: flashrom can never write if the flash chip isn't found automatically.
[root@server ~]#
What information is needed to identify the chipset in use so support can be added for these devices?
Best Regards,
Mark Rowlinson
Unless otherwise stated, this email has been sent from Fujitsu Services Limited, from Fujitsu (FTS) Limited, or from Fujitsu Telecommunications Europe Limited, together "Fujitsu".
This email is only for the use of its intended recipient. Its contents are subject to a duty of confidence and may be privileged. Fujitsu does not guarantee that this email has not been intercepted and amended or that it is virus-free.
Fujitsu Services Limited, registered in England No 96056, registered office 22 Baker Street, London W1U 3BW.
Fujitsu (FTS) Limited, registered in England No 03808613, registered office 22 Baker Street, London W1U 3BW.
PFU Imaging Solutions Europe Limited, registered in England No 1578652, registered office Hayes Park Central, Hayes End Road, Hayes, Middlesex, UB4 8FE.
Fujitsu Telecommunications Europe Limited, registered in England No 2548187, registered office Solihull Parkway, Birmingham Business Park, Birmingham, B37 7YU.
Cool, glad it worked!
To make things slightly easier, you should also try keeping the CMOS
battery and DIM (whatever that is) in.
On Tue, Oct 20, 2015 at 4:51 PM, Arpita Biswas <arpita.biswas07(a)gmail.com>
wrote:
> Hi David,
>
> That did the trick !!! Thanks a bunch ! For anyone else interested, here
> is the combination of things I did :
>
> SOIC config as (1) mentioned earlier + held down the power button for 30
> sec to reset it + removed CMOS battery + removed jumper on SPI header (that
> cuts off the processor signal to SPI chip) + plugged in the power cable
> (that way enough power was there throughout the board for dediprog to
> detect) + removed the DIM (dunno if that made any difference, but did it
> since a post mentioned it anyways!).
>
> Dediprog then detected it sweetly :) :)
>
> Cheers,
> - Arpita
>
> On Tue, Oct 20, 2015 at 2:05 PM, David Hendricks <dhendrix(a)google.com>
> wrote:
>
>>
>>
>> On Tue, Oct 20, 2015 at 12:26 PM, Arpita Biswas <
>> arpita.biswas07(a)gmail.com> wrote:
>>
>>> Hi all,
>>>
>>> I am trying to update BIOS with coreboot onto HP Envy H87 haswell
>>> chipset (ipm87_mp)
>>> <http://www.newegg.com/Product/Product.aspx?Item=9SIA6392VN4810>. I am
>>> using Dediprog + SOIC 8-pin flash clip for flashing the SPI chip (W25Q64).
>>> However dediprog doesn't detect the chip when it's soldered on-board. On
>>> removing the chip from board, I can detect/read/write onto it without any
>>> issues.
>>>
>>> I've tried (and failed) with the following configurations :
>>> (1) SPI pin ------> Dediprog : /CS ---> CS, DO (IO1) ---> MISO, /WP
>>> (IO2) ---> 3.3V, GND ---> GND, DI (IO0) ---> MOSI, CLK ---> CLK, /HOLD
>>> (IO3) ---> 3.3V, VCC ---> 3.3V with motherboard power ON.
>>>
>>> (2) Same config as above but I tried to isolate the chip by removing
>>> CMOS battery + removing jumper on SPI header + powering OFF the motherboard.
>>>
>>> (3) Similar as (1) and (2), but let /HOLD, /Vcc and /WP float.
>>>
>>> (4) I tried using flashrom on the box too as internal programmer, but it
>>> did not recognize the SPI chip. Error log says "Found Programmer flash chip
>>> "Opaque flash chip" (8192 kB, Programmer-specific)."
>>>
>>> I've a feeling that something on the motherboard is interfering with the
>>> SPI chip since an off-board chip is working fine. Does anybody have any
>>> pointers on what could be going wrong ?
>>>
>>
>> I suspect your motherboard does not isolate the SPI ROM's voltage supply
>> and thus your Dediprog is effectively powering other components on the
>> board.
>>
>> If you can find a way to hold the PCH and ME in reset while the board is
>> powered on, that might work. Or, with the board off, you can try using an
>> external power supply (the usual warnings about possibly frying your board
>> apply).
>>
>>
>>
>>>
>>> Thanks in advance,
>>> - Arpita
>>>
>>> --
>>> coreboot mailing list: coreboot(a)coreboot.org
>>> http://www.coreboot.org/mailman/listinfo/coreboot
>>>
>>
>>
>>
>> --
>> David Hendricks (dhendrix)
>> Systems Software Engineer, Google Inc.
>>
>
>
--
David Hendricks (dhendrix)
Systems Software Engineer, Google Inc.
Hi David,
That did the trick !!! Thanks a bunch ! For anyone else interested, here is
the combination of things I did :
SOIC config as (1) mentioned earlier + held down the power button for 30
sec to reset it + removed CMOS battery + removed jumper on SPI header (that
cuts off the processor signal to SPI chip) + plugged in the power cable
(that way enough power was there throughout the board for dediprog to
detect) + removed the DIM (dunno if that made any difference, but did it
since a post mentioned it anyways!).
Dediprog then detected it sweetly :) :)
Cheers,
- Arpita
On Tue, Oct 20, 2015 at 2:05 PM, David Hendricks <dhendrix(a)google.com>
wrote:
>
>
> On Tue, Oct 20, 2015 at 12:26 PM, Arpita Biswas <arpita.biswas07(a)gmail.com
> > wrote:
>
>> Hi all,
>>
>> I am trying to update BIOS with coreboot onto HP Envy H87 haswell
>> chipset (ipm87_mp)
>> <http://www.newegg.com/Product/Product.aspx?Item=9SIA6392VN4810>. I am
>> using Dediprog + SOIC 8-pin flash clip for flashing the SPI chip (W25Q64).
>> However dediprog doesn't detect the chip when it's soldered on-board. On
>> removing the chip from board, I can detect/read/write onto it without any
>> issues.
>>
>> I've tried (and failed) with the following configurations :
>> (1) SPI pin ------> Dediprog : /CS ---> CS, DO (IO1) ---> MISO, /WP (IO2)
>> ---> 3.3V, GND ---> GND, DI (IO0) ---> MOSI, CLK ---> CLK, /HOLD (IO3) --->
>> 3.3V, VCC ---> 3.3V with motherboard power ON.
>>
>> (2) Same config as above but I tried to isolate the chip by removing CMOS
>> battery + removing jumper on SPI header + powering OFF the motherboard.
>>
>> (3) Similar as (1) and (2), but let /HOLD, /Vcc and /WP float.
>>
>> (4) I tried using flashrom on the box too as internal programmer, but it
>> did not recognize the SPI chip. Error log says "Found Programmer flash chip
>> "Opaque flash chip" (8192 kB, Programmer-specific)."
>>
>> I've a feeling that something on the motherboard is interfering with the
>> SPI chip since an off-board chip is working fine. Does anybody have any
>> pointers on what could be going wrong ?
>>
>
> I suspect your motherboard does not isolate the SPI ROM's voltage supply
> and thus your Dediprog is effectively powering other components on the
> board.
>
> If you can find a way to hold the PCH and ME in reset while the board is
> powered on, that might work. Or, with the board off, you can try using an
> external power supply (the usual warnings about possibly frying your board
> apply).
>
>
>
>>
>> Thanks in advance,
>> - Arpita
>>
>> --
>> coreboot mailing list: coreboot(a)coreboot.org
>> http://www.coreboot.org/mailman/listinfo/coreboot
>>
>
>
>
> --
> David Hendricks (dhendrix)
> Systems Software Engineer, Google Inc.
>
On Tue, Oct 20, 2015 at 12:26 PM, Arpita Biswas <arpita.biswas07(a)gmail.com>
wrote:
> Hi all,
>
> I am trying to update BIOS with coreboot onto HP Envy H87 haswell chipset
> (ipm87_mp)
> <http://www.newegg.com/Product/Product.aspx?Item=9SIA6392VN4810>. I am
> using Dediprog + SOIC 8-pin flash clip for flashing the SPI chip (W25Q64).
> However dediprog doesn't detect the chip when it's soldered on-board. On
> removing the chip from board, I can detect/read/write onto it without any
> issues.
>
> I've tried (and failed) with the following configurations :
> (1) SPI pin ------> Dediprog : /CS ---> CS, DO (IO1) ---> MISO, /WP (IO2)
> ---> 3.3V, GND ---> GND, DI (IO0) ---> MOSI, CLK ---> CLK, /HOLD (IO3) --->
> 3.3V, VCC ---> 3.3V with motherboard power ON.
>
> (2) Same config as above but I tried to isolate the chip by removing CMOS
> battery + removing jumper on SPI header + powering OFF the motherboard.
>
> (3) Similar as (1) and (2), but let /HOLD, /Vcc and /WP float.
>
> (4) I tried using flashrom on the box too as internal programmer, but it
> did not recognize the SPI chip. Error log says "Found Programmer flash chip
> "Opaque flash chip" (8192 kB, Programmer-specific)."
>
> I've a feeling that something on the motherboard is interfering with the
> SPI chip since an off-board chip is working fine. Does anybody have any
> pointers on what could be going wrong ?
>
I suspect your motherboard does not isolate the SPI ROM's voltage supply
and thus your Dediprog is effectively powering other components on the
board.
If you can find a way to hold the PCH and ME in reset while the board is
powered on, that might work. Or, with the board off, you can try using an
external power supply (the usual warnings about possibly frying your board
apply).
>
> Thanks in advance,
> - Arpita
>
> --
> coreboot mailing list: coreboot(a)coreboot.org
> http://www.coreboot.org/mailman/listinfo/coreboot
>
--
David Hendricks (dhendrix)
Systems Software Engineer, Google Inc.
Hi all,
I am trying to update BIOS with coreboot onto HP Envy H87 haswell chipset
(ipm87_mp) <http://www.newegg.com/Product/Product.aspx?Item=9SIA6392VN4810>.
I am using Dediprog + SOIC 8-pin flash clip for flashing the SPI chip
(W25Q64). However dediprog doesn't detect the chip when it's soldered
on-board. On removing the chip from board, I can detect/read/write onto it
without any issues.
I've tried (and failed) with the following configurations :
(1) SPI pin ------> Dediprog : /CS ---> CS, DO (IO1) ---> MISO, /WP (IO2)
---> 3.3V, GND ---> GND, DI (IO0) ---> MOSI, CLK ---> CLK, /HOLD (IO3) --->
3.3V, VCC ---> 3.3V with motherboard power ON.
(2) Same config as above but I tried to isolate the chip by removing CMOS
battery + removing jumper on SPI header + powering OFF the motherboard.
(3) Similar as (1) and (2), but let /HOLD, /Vcc and /WP float.
(4) I tried using flashrom on the box too as internal programmer, but it
did not recognize the SPI chip. Error log says "Found Programmer flash chip
"Opaque flash chip" (8192 kB, Programmer-specific)."
I've a feeling that something on the motherboard is interfering with the
SPI chip since an off-board chip is working fine. Does anybody have any
pointers on what could be going wrong ?
Thanks in advance,
- Arpita
Dear Nico,
>
> It might be easier to help if we knew your Laptop model. Also, please
> provide a full log of the failing flashrom run with the -V switch, you
> can specify a log file with -o.
>
Right now I'm away from that laptop and cant remember its model
(or provide a flashrom log) However I remember the most important thing:
the model of BIOS SPI flash chip is EON EN25QH32 which is supported by
flashrom since version 0.9.6 . I got a latest datasheet at official EON
website
( here it is - http://www.eonssi.com/upfile/p2013114174725.pdf )
>
> Please further define "without problems". Did you try several reads
and
> compared the contents?
>
Yes I tried several reads and the contents of flash chip are always the
same.
Moreover, I was able to successfully write 00s and FFs for a few times,
and
right now the contents of SPI flash chip: 00's - first 1MB , FF's - last
3MB
>
> By guessing two possible issues come in mind: 1. Your programmer
doesn't provide
> enough power for erasure. 2. The write protection pin of your flash
chip is asserted.
>
Because I was able to write at least some stuff, I believe that your 1st
theory is true:
maybe a part of current that should be going to flash chip for a
successfull write,
is powering a half of the surrounding circuit instead...
>
> I'd try with the AC adapter. In that case Vcc must _not_ be connected
to
> your programmer. GND, OTOH, has to stay connected.
>
> Not forbidden. It's sometimes even encouraged because there are boards
> where the Vcc pin of the flash chip is directly connected to other
> chips, which would draw down the power from the programmer.
>
Thank you very much for advice, Nico! As soon as I get back to equipment
I am
going to disconnect a Vcc pin from a programmer to avoid the overvoltage
(just checked the datasheet above and Vcc is the 8th leg of that flash
chip)
Hopefully it will be powered good enough by the AC adapter ;-)
Just not sure what to do with a CMOS battery, too afraid to connect it
back
together with AC adapter - if there would be overvoltage I am screwed...
>
>>
>> Or its better to try to power Vcc of flash chip from "USB to TTL"
>> adapter - which has this 3V3 (3.3V) voltage pin?
>>
>
> It really depends on your machine.
>
EN25QH32 datasheet tells that this flash chip supports between 2.7V and
3.6V,
3.3V seems OK and I would probably try taking it to Vcc from "USB to TTL
adapter"
if the solution with a laptop's AC adapter will not work...
AC adapter would also powering EC controller, so what if EC will setup a
write protect?
Best wishes,
Robert Brown
<-----Original Message----->
>From: Nico Huber [nico.h at gmx.de]
>Subject: Re: [flashrom] SOIC8 test clip - cant write to BIOS SPI flash
chip
>
>
>On 17.10.2015 02:07, Robert Brown wrote:
>> But here is a problem: I could read a dump from this BIOS chip
without
>> problems, however
>
>
>> it fails when I am trying to write - so the contents of BIOS flash
chip
>> are remaining unchanged.
>Log please. By guessing two possible issues come in mind: 1. Your pro-
>grammer doesn't provide enough power for erasure. 2. The write protec-
>tion pin of your flash chip is asserted.
>
>> Should I connect to motherboard a laptop's power battery, or small
CMOS
>> battery, or AC adapter of laptop,
>I'd try with the AC adapter. In that case Vcc must _not_ be connected
to
>your programmer. GND, OTOH, has to stay connected.
>
>> so that this Vcc pin would be powered by them, or it is forbidden to
do
>> it while using SPI programmer in the same time?
>Not forbidden. It's sometimes even encouraged because there are boards
>where the Vcc pin of the flash chip is directly connected to other
>chips, which would draw down the power from the programmer.
>
>> Or its better to try to power Vcc of flash chip from "USB to TTL"
>> adapter - which has this 3V3 (3.3V) voltage pin?
>It really depends on your machine.
>
>Nico
>.
>
<span id=m2wTl><p><font face="Arial, Helvetica, sans-serif" size="2" style="font-size:13.5px">_______________________________________________________________<BR>Get the Free email that has everyone talking at <a href=http://www.mail2world.com target=new>http://www.mail2world.com</a><br> <font color=#999999>Unlimited Email Storage – POP3 – Calendar – SMS – Translator – Much More!</font></font></span>
Unfortunately I don't have any soldering tools or experience, so if you could give an advice
about ISP programming (In-System-Programming/In-Situ-Programming) , it will be super helpful!
I teardown a bricked laptop, removed AC power, laptop's power battery, and even a small CMOS battery,
and now I am trying to write a working BIOS image to laptop's SPI flash chip using a SOIC8 test clip.
But here is a problem: I could read a dump from this BIOS chip without problems, however
it fails when I am trying to write - so the contents of BIOS flash chip are remaining unchanged.
Luckily I found out this helpful wiki page - http://flashrom.org/ISP , which describes common problems
with this ISP method of flashing, as well as gives 3 hints for solution! Sadly this page is currently down,
so here is a screenshot: http://i.imgur.com/SJEYHR2.png
1. - tried to make shorter wires, less than 10cm as they recommend - it did not help
2. - soldering is out of possibility, cant do it, and also: wires are already short and they are good quality (pure copper)
3. - This hint looks more promising, but I need help in understanding this piece of information:
"disconnect Vcc from the programmer and power it with its normal PSU"
If I understand correctly, by Vcc they mean Vcc pin of the BIOS flash chip.
But if I disconnect Vcc from the programmer, what is "normal PSU" which should power this Vcc pin?
Should I connect to motherboard a laptop's power battery, or small CMOS battery, or AC adapter of laptop,
so that this Vcc pin would be powered by them, or it is forbidden to do it while using SPI programmer in the same time?
Or its better to try to power Vcc of flash chip from "USB to TTL" adapter - which has this 3V3 (3.3V) voltage pin?
Yours faithfully,
Robert Brown
We got a mail by a reporter who does not want to get his email address
published, therefore I will quote his email verbatim below.
> Hello,
>
> I can confirm that I have just successfully flashed an ST 25P10VP flash
> chip, in circuit, using a Raspberry Pi, its onboard SPI, a Pomona 5250 SOIC
> clip and some female jumper wires.
>
> I updated the Raspberry Pi B+ with rpi-update to the latest firmware and
> kernel, and compiled the code from svn://flashrom.org/flashrom/trunk on the
> Raspberry device itself. I just used the -p and -w parameters to make this
> work, no other magic. Flashrom reported write success and verified status
> on the chip.
>
> According to Micron documentation, the markings 25P10VP correspond to a
> M25P10-A, and flashrom recognizes this type indeed. Since the status for
> writing this chip is still a question mark, I thought I should report a
> success.
>
> I encountered zero errors during the use of flashrom, everything worked in
> one go. Flashrom allowed me to recover a friend's WD HDD with a burnt-out
> PCB. So a big thank you is in order!
>
> Thank you so much!
>
> P.S. Could you please keep my e-mail address private?
>
> Kind regards,
> Martijn Schiedon
I'll add the respective flag for the M25P10-A. Thanks Martijn for the
report! Please include a verbose log file next time.
--
Kind regards/Mit freundlichen Grüßen, Stefan Tauner
Author: stefanct
Date: Fri Oct 16 04:16:20 2015
New Revision: 1897
URL: http://flashrom.org/trac/flashrom/changeset/1897
Log:
Add support for 128 bytes write granularity.
Some chips such as the ENE KB9012 internal flash require a write
granularity of 128 bytes.
Signed-off-by: Paul Kocialkowski <contact(a)paulk.fr>
Acked-by: Nico Huber <nico.h(a)gmx.de>
Modified:
trunk/flash.h
trunk/flashrom.c
Modified: trunk/flash.h
==============================================================================
--- trunk/flash.h Sun Jul 5 18:53:22 2015 (r1896)
+++ trunk/flash.h Fri Oct 16 04:16:20 2015 (r1897)
@@ -85,6 +85,7 @@
write_gran_1bit, /* Each bit can be cleared individually. */
write_gran_1byte, /* A byte can be written once. Further writes to an already written byte cause
* its contents to be either undefined or to stay unchanged. */
+ write_gran_128bytes, /* If less than 128 bytes are written, the unwritten bytes are undefined. */
write_gran_264bytes, /* If less than 264 bytes are written, the unwritten bytes are undefined. */
write_gran_512bytes, /* If less than 512 bytes are written, the unwritten bytes are undefined. */
write_gran_528bytes, /* If less than 528 bytes are written, the unwritten bytes are undefined. */
Modified: trunk/flashrom.c
==============================================================================
--- trunk/flashrom.c Sun Jul 5 18:53:22 2015 (r1896)
+++ trunk/flashrom.c Fri Oct 16 04:16:20 2015 (r1897)
@@ -781,6 +781,9 @@
break;
}
break;
+ case write_gran_128bytes:
+ result = need_erase_gran_bytes(have, want, len, 128);
+ break;
case write_gran_256bytes:
result = need_erase_gran_bytes(have, want, len, 256);
break;
@@ -847,6 +850,9 @@
case write_gran_1byte_implicit_erase:
stride = 1;
break;
+ case write_gran_128bytes:
+ stride = 128;
+ break;
case write_gran_256bytes:
stride = 256;
break;