mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-26 22:52:34 +02:00
doc: Add doc for buspirate programmer
Doc migrated from the wiki page: https://wiki.flashrom.org/Bus_Pirate Change-Id: I5a57f08ea3fce0c78d73aa61b85ff7b0cff450b8 Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org> Reviewed-on: https://review.coreboot.org/c/flashrom/+/83471 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: David Reguera Garcia (Dreg) <regueragarciadavid@gmail.com> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
parent
d611c31447
commit
d99afdc026
BIN
doc/supported_hw/supported_prog/Buspirate_v3_back.jpg
Normal file
BIN
doc/supported_hw/supported_prog/Buspirate_v3_back.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 261 KiB |
BIN
doc/supported_hw/supported_prog/Buspirate_v3_front.jpg
Normal file
BIN
doc/supported_hw/supported_prog/Buspirate_v3_front.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 354 KiB |
Binary file not shown.
After Width: | Height: | Size: 54 KiB |
78
doc/supported_hw/supported_prog/buspirate.rst
Normal file
78
doc/supported_hw/supported_prog/buspirate.rst
Normal file
@ -0,0 +1,78 @@
|
||||
==========
|
||||
Bus Pirate
|
||||
==========
|
||||
|
||||
The `Bus Pirate <http://dangerousprototypes.com/docs/Bus_Pirate>`_ is an open source design
|
||||
for a multi-purpose chip-level serial protocol transceiver and debugger.
|
||||
flashrom supports the Bus Pirate for `SPI programming <http://dangerousprototypes.com/docs/SPI>`_.
|
||||
It also has `SPI sniffing <http://dangerousprototypes.com/docs/Bus_Pirate_binary_SPI_sniffer_utility>`_
|
||||
functionality, which may come in useful for analysing chip or programmer behaviour.
|
||||
|
||||
They are available for around US$30 from various sources.
|
||||
|
||||
Connections
|
||||
===========
|
||||
|
||||
The table below shows how a typical SPI flash chip (sitting in the center of the table)
|
||||
needs to be connected (NB: not all flash chips feature all of the pins below, but in general
|
||||
you should always connect all input pins of ICs to some defined potential (usually GND or VCC),
|
||||
ideally with a pull-up/down resistor in between). Most SPI flash chips require a 3.3V supply voltage,
|
||||
but there exist some models that use e.g. 1.8V. Make sure the device in question is compatible
|
||||
before connecting any wires.
|
||||
|
||||
*NB: Some rather rare SPI flash chips (e.g. Atmel AT45DB series) have a completely different layout, please beware.*
|
||||
|
||||
+----------------------+------------+------+---------------------------------+------+------------+-----------------------------+
|
||||
| Description | Bus Pirate | Dir. | Flash chip | Dir. | Bus Pirate | Description |
|
||||
+======================+============+======+===+===========+=============+===+======+============+=============================+
|
||||
| (not) Chip Select | CS | → | 1 | /CS | VCC | 8 | ← | +3.3v | Supply |
|
||||
+----------------------+------------+------+---+-----------+-------------+---+------+------------+-----------------------------+
|
||||
| Master In, Slave Out | MISO | ← | 2 | DO (IO1) | /HOLD (IO3) | 7 | ← | +3.3v | (not) hold (see datasheets) |
|
||||
+----------------------+------------+------+---+-----------+-------------+---+------+------------+-----------------------------+
|
||||
| (not) Write Protect | +3.3v | → | 3 | /WP (IO2) | CLK | 6 | ← | CLK | The SPI clock |
|
||||
+----------------------+------------+------+---+-----------+-------------+---+------+------------+-----------------------------+
|
||||
| Ground | GND | → | 4 | GND | DI (IO0) | 5 | ← | MOSI | Master Out, Slave In |
|
||||
+----------------------+------------+------+---+-----------+-------------+---+------+------------+-----------------------------+
|
||||
|
||||
Usage
|
||||
=========
|
||||
|
||||
::
|
||||
|
||||
$ flashrom -p buspirate_spi:dev=/dev/device,spispeed=frequency
|
||||
|
||||
Example::
|
||||
|
||||
$ flashrom -p buspirate_spi:dev=/dev/ttyUSB0,spispeed=1M
|
||||
|
||||
Troubleshooting
|
||||
===============
|
||||
|
||||
In case of problems probing the chip with flashrom - especially when connecting chips
|
||||
still soldered in a system - please take a look at the doc :doc:`/user_docs/in_system`. In-system programming is often possible
|
||||
**only as long as no other devices on the SPI bus are trying to access the device**.
|
||||
|
||||
Speedup
|
||||
=========
|
||||
|
||||
A beta firmware build exists, to speed up the buspirate.
|
||||
`See this post on dangerousprototypes.com <http://dangerousprototypes.com/forum/viewtopic.php?f=40&t=3864&start=15#p41505>`_
|
||||
|
||||
See also: http://dangerousprototypes.com/docs/Bus_Pirate#Firmware_upgrades
|
||||
|
||||
Images
|
||||
==========
|
||||
|
||||
Bus Pirate v3, front.
|
||||
|
||||
.. image:: Buspirate_v3_front.jpg
|
||||
|
||||
Bus Pirate v3, back.
|
||||
|
||||
.. image:: Buspirate_v3_back.jpg
|
||||
|
||||
Recovering a bricked Lycom PE-115 88SE8123 PCIe to SATA adapter using flashrom and a Bus Pirate - power to the
|
||||
PE-115 is supplied by a PC. The test probes of the bus pirate are attached directly to the SOIC Atmel AT26F004 SPI flash chip.
|
||||
The other test clip is connected to GND on another device for convenience (easier than getting yet another clip onto a SOIC device).
|
||||
|
||||
.. image:: Lycom-pe115-flashrom-buspirate-2.jpg
|
@ -15,5 +15,6 @@ Patches to add/update documentation, or migrate docs from `old wiki website <htt
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
buspirate
|
||||
dummyflasher
|
||||
serprog/index
|
||||
|
Loading…
x
Reference in New Issue
Block a user