From 021c1ed681f1369d2073a69aacd740b953dba756 Mon Sep 17 00:00:00 2001 From: Francis Rowe Date: Sat, 28 Feb 2015 07:06:17 -0500 Subject: docs/install/bbb_setup.html: Make the guide easier to use. --- (limited to 'docs/install/bbb_setup.html') diff --git a/docs/install/bbb_setup.html b/docs/install/bbb_setup.html index eebc890..c263718 100644 --- a/docs/install/bbb_setup.html +++ b/docs/install/bbb_setup.html @@ -15,13 +15,18 @@

How to programme an SPI flash chip with the BeagleBone Black

-

This section documents how to use the BBB as an external flashrom programmer, for reading and writing an SPI flash chip.

+

+ This document exists as a guide for reading from or writing to an SPI flash chip with the BeagleBone Black, + using the flashrom software. + BeagleBone Black rev. C was used when creating this guide, but earlier revisions + may also work. +

Back to previous index

-
+
-

Hardware requirements

+

Hardware requirements

Shopping list (pictures of this hardware is shown later): @@ -30,6 +35,7 @@

  • External SPI programmer: BeagleBone Black (rev. C) is highly recommended. Sometimes referred to as 'BBB'. + This page contains a list of distributors.
  • Clip for connecting to the flash chip: if you have a SOIC-16 @@ -40,11 +46,16 @@ (they break easily).
  • - External 3.3V DC power supply. + External 3.3V DC power supply, for powering the flash chip. An ATX power supply / PSU (common on Intel/AMD desktop computers) will work for this.
  • - jumper cables (2.54mm / 0.1" headers) + External 5V DC power supply, for powering the BBB. + The BeagleBone can have power supplied via USB, but a + dedicated power supply is recommended. +
  • +
  • + Pin header / jumper cables (2.54mm / 0.1" headers) You should get male-male, male-female and female-female cables in 10cm and 20cm sizes. Just get a load of them.
  • @@ -53,13 +64,9 @@ with one.)
  • - FTDI serial board, for unbricking the BeagleBone if - necessary. -
  • -
  • - 5V DC power supply (from wall outlet to the BeagleBone). - The BeagleBone can have power supplied via USB, but a - dedicated power supply is recommended. + FTDI TTL cable or debug board, for accessing the serial console on your BBB. + This page contains + a list.
  • @@ -69,7 +76,7 @@
    -
    +

    Setting up the 3.3V DC PSU

    @@ -91,46 +98,63 @@

    + The male end of a 0.1" or 2.54mm header cable is not thick enough to remain permanently + connected to the ATX PSU on its own. + When connecting header cables to the connector on the ATX PSU, use a female end attached to + a thicker piece of wire (you could use a paper clip), or wedge the male end of the jumper cable + into the sides of the hole in the connector, instead of going through the centre. +

    + +

    Here is an example set up:

    -
    +
    + +

    Accessing the operating system on the BBB

    +

    + The operating system on your BBB will probably have an SSH daemon + running where the root account has no password. Use SSH to access + the operating system and set a root password. By default, the OS + on your BBB will most likely use DHCP, so it should already have an IP + address. +

    +

    + You will also be using the OS on your BBB for programming an SPI flash chip. +

    +

    Alternatives to SSH (in case SSH fails)

    +

    + You can also use a serial FTDI debug board with GNU Screen, to access the serial console.
    + # screen /dev/ttyUSB0 115200
    + Here are some example photos:
    + +
    +

    +

    + You can also connect the USB cable from the BBB to another computer and a new network interface will appear, + with its own IP address. This is directly accessible from SSH, or screen:
    + # screen /dev/ttyACM0 115200 +

    +

    + You can also access the uboot console, using the serial method + instead of SSH. +

    + +
    + +
    + +

    Setting up spidev on the BBB

    -

    Setting up the BBB

    -

    - Your BBB will have an sshd with no password on root. Find it's IP address - (it will use DHCP by default) and set a root password. The steps below - are done while SSH'd into a BBB. -

    -

    - You can also use a serial FTDI debug board, with GNU Screen (example):
    - # screen /dev/ttyUSB0 115200
    - -
    - show an FTDI debug board in use. With screen you can then login as root, like you would using SSH.
    - Using this, you can also see text output (from kernel, etc) when booting the machine. -

    -

    - You can also simply connect the USB cable from the BBB to another computer and a new network interface will appear, - with it's own IP address: this is the BBB. You can SSH into that. Or, you can (example):
    - # screen /dev/ttyACM0 115200 -

    -

    - These instructions may or may not work for you. They are simply the steps that this author took. -

    -

    - setting up SPIDEV on the BBB: http://elinux.org/BeagleBone_Black_Enable_SPIDEV#SPI0 - - If you only setup SPI0, you don't have to disable the HDMI out. (you only need one). - That guide is for seting up the device overlay for SPIDEV, last part is to make it persist across reboots. - Needed to turn the BBB into an SPI flasher. -

    - Don't bother modifying uEnv.txt. it won't work; - use the workaround here instead: http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Loading_custom_capes. + Log on as root on the BBB, using either SSH or a serial console as defined in + #bbb_access. Make sure that you have internet access + on your BBB.

    +

    Follow the instructions at http://elinux.org/BeagleBone_Black_Enable_SPIDEV#SPI0 up to (and excluding) the point where it tells you to modify uEnv.txt @@ -166,26 +190,9 @@ fi

    Run apt-get update and apt-get upgrade then reboot the BBB, before continuing.

    +

    - Run those commands:
    - # echo BB-SPI0-01 > /sys/devices/bone_capemgr.*/slots
    - Then I did:
    - # ls -al /dev/spidev0.*
    - ls: cannot access /dev/spidev0.*: No such file or directory
    - Then I rebooted and did:
    - # cat /sys/devices/bone_capemgr.*/slots
    - Output: -

    -
    - 0: 54:PF--- 
    - 1: 55:PF--- 
    - 2: 56:PF--- 
    - 3: 57:PF--- 
    - 4: ff:P-O-L Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G
    - 5: ff:P-O-L Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI
    -
    -

    - And then:
    + Check that the firmware exists:
    # ls /lib/firmware/BB-SPI0-01-00A0.*
    Output:

    @@ -207,16 +214,9 @@ fi 5: ff:P-O-L Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI 7: ff:P-O-L Override Board Name,00A0,Override Manuf,BB-SPI0-01 +

    - Then check if the device exists:
    - # ls -al /dev/spidev0.*
    - Output: -

    -
    -ls: cannot access /dev/spidev0.*: No such file or directory
    -
    -

    - It didn't exist under that name, but I then did:
    + Verify that the spidev device now exists:
    # ls -al /dev/spid*
    Output:

    @@ -231,7 +231,7 @@ crw-rw---T 1 root spi 153, 0 Nov 19 21:07 /dev/spidev1.0 entry already exists.

    - Get flashrom from libreboot_util release archive, or build it from libreboot_src/git if you need to. + Get flashrom from the libreboot_util release archive, or build it from libreboot_src/git if you need to. An ARM binary (statically compiled) for flashrom exists in libreboot_util releases.

    @@ -253,7 +253,7 @@ Note: flashrom can never write if the flash chip isn't found automatically.
    -
    +

    Connecting the Pomona 5250/5252 @@ -310,10 +310,6 @@ Note: flashrom can never write if the flash chip isn't found automatically.

    - That's basically it. Now refer back to the installation page for how to use this on your board. -

    - -

    Back to top of page.

    -- cgit v0.9.1