SPI FLASH Recovery/XO-4: Difference between revisions
Jump to navigation
Jump to search
(→Setup) |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
== You Need == |
== You Need == |
||
*the bricked laptop, called the ''target'', |
*the bricked laptop, called the ''target'', (which cannot be a B1 because the SPI FLASH operating voltage is 1.8V not 3.3V), |
||
*a working XO-1.5 laptop, with latest [[Firmware]], and a serial cable, called the ''host'', |
*a working XO-1.5 laptop, with latest [[Firmware]], and a serial cable, called the ''host'', |
||
*a third computer to act as a ''terminal'' to the ''host'', a serial cable, with serial port configured for 115200 bps, |
*a third computer to act as a ''terminal'' to the ''host'', a serial cable, with serial port configured for 115200 bps, |
||
Line 14: | Line 14: | ||
*remove main battery and power cords from ''target'' and ''host'' laptops, |
*remove main battery and power cords from ''target'' and ''host'' laptops, |
||
*disassemble the ''target'' and ''host'' to PCB level, |
*disassemble the ''target'' and ''host'' to PCB level, |
||
*place the PCBs upside down on a non-conductive but |
*place the PCBs upside down on a non-conductive but antistatic surface, with top edges close but not touching, adding insulation or adhesive if there is a risk of movement, |
||
*connect the serial cable between the ''host'' and the ''terminal'' and verify normal operation of the ''host'', then turn off the ''host'', |
*connect the serial cable between the ''host'' and the ''terminal'' and verify normal operation of the ''host'', then turn off the ''host'', |
||
*short the D4 component position next to J3 on the ''host'', this provides 3.3V to J3 when the host is powered, but without protecting the ''host'' from power flowing from the ''target'', be sure not to power the target, |
*short the D4 component position next to J3 on the ''host'', this provides 3.3V to J3 when the host is powered, but without protecting the ''host'' from power flowing from the ''target'', be sure not to power the target, |
||
Line 27: | Line 27: | ||
*turn on the ''host'', while on the ''terminal'' use ESC to interrupt the ''host'' startup and obtain the [[Ok]] prompt, |
*turn on the ''host'', while on the ''terminal'' use ESC to interrupt the ''host'' startup and obtain the [[Ok]] prompt, |
||
ok |
ok |
||
*ensure the ''host'' is running Q3C12 plus svn 3622 or later, |
|||
*configure the ''host'' SPI FLASH user interface for XO-4 SPI FLASH (after this, do not use it for reflashing of the host without first rebooting), |
*configure the ''host'' SPI FLASH user interface for XO-4 SPI FLASH (after this, do not use it for reflashing of the ''host'' without first rebooting), |
||
ok use- |
ok use-layout-xo-4 |
||
ok 1f.0000 to mfg-data-offset |
|||
⚫ | |||
ok mfg-data-offset h# 30 - to crc-offset |
|||
ok 20.0000 to /flash |
|||
ok /flash to mfg-data-end-offset |
|||
ok 1e.ffc0 to signature-offset |
|||
ok " "(03)"CL4" machine-signature swap cmove |
|||
⚫ | |||
ok excavate u:\copy.rom |
ok excavate u:\copy.rom |
||
SPI FLASH is type 14.1540ef, W25Q16, 2 MB. |
SPI FLASH is type 14.1540ef, W25Q16, 2 MB. |
||
1fc000 |
1fc000 |
||
ok |
ok |
||
* |
*write the intended image, |
||
ok |
ok recover u:\new.rom |
||
Reading u:\new.rom |
Reading u:\new.rom |
||
Got firmware version: CL4 Q7B27 Q7B |
Got firmware version: CL4 Q7B27 Q7B |
||
Checking integrity ... |
Checking integrity ... |
||
ok |
|||
*write the intended image (requires Q3C12), |
|||
ok reflash |
|||
SPI FLASH is type 14.1540ef, W25Q16, 2 MB. |
SPI FLASH is type 14.1540ef, W25Q16, 2 MB. |
||
Writing |
Writing |
||
1e0000 |
1e0000 |
||
Writing |
Writing |
||
1f0000 |
|||
Verifying |
Verifying |
||
1e0000 |
1e0000 |
||
Verifying |
Verifying |
||
1f0000 |
|||
ok |
ok |
||
*turn off the ''host''. |
*turn off the ''host''. |
Latest revision as of 21:39, 21 March 2013
You Need
- the bricked laptop, called the target, (which cannot be a B1 because the SPI FLASH operating voltage is 1.8V not 3.3V),
- a working XO-1.5 laptop, with latest Firmware, and a serial cable, called the host,
- a third computer to act as a terminal to the host, a serial cable, with serial port configured for 115200 bps,
- wire, soldering iron, antistatic environment,
- twelve pin headers, in four rows of three,
- six 15cm lengths of female to female pin header jumper cables,
Setup
- remove main battery and power cords from target and host laptops,
- disassemble the target and host to PCB level,
- place the PCBs upside down on a non-conductive but antistatic surface, with top edges close but not touching, adding insulation or adhesive if there is a risk of movement,
- connect the serial cable between the host and the terminal and verify normal operation of the host, then turn off the host,
- short the D4 component position next to J3 on the host, this provides 3.3V to J3 when the host is powered, but without protecting the host from power flowing from the target, be sure not to power the target,
- add a 2K resistor between pins 1 and 2 of J3 on the host, this compensates for a weak pullup,
- install pin headers on J3 on the host,
- install pin headers on J2 on the target,
- connect each pin of J3 on the host to J2 on the target in turn, using the jumper cables, pin 1 of J3 to pin 1 of J2,
- add power cord to host only.
Transfer
- turn on the host, while on the terminal use ESC to interrupt the host startup and obtain the Ok prompt,
ok
- ensure the host is running Q3C12 plus svn 3622 or later,
- configure the host SPI FLASH user interface for XO-4 SPI FLASH (after this, do not use it for reflashing of the host without first rebooting),
ok use-layout-xo-4
- copy the SPI FLASH to a USB drive,
ok excavate u:\copy.rom SPI FLASH is type 14.1540ef, W25Q16, 2 MB. 1fc000 ok
- write the intended image,
ok recover u:\new.rom Reading u:\new.rom Got firmware version: CL4 Q7B27 Q7B Checking integrity ... SPI FLASH is type 14.1540ef, W25Q16, 2 MB. Writing 1e0000 Writing Verifying 1e0000 Verifying ok
- turn off the host.
ok power-off
Testing
- disconnect the cable between the target and the host,
- attach serial cable to target,
- attach power cable to target,
- test the target by using ESC to obtain the Ok prompt.
Reasssembly
- remove the header or ensure internal plastic is cut to permit it to remain.