Commit 94dd9462 authored by David Boddie's avatar David Boddie

Clean up new devkit information

Move detailed information into a troubleshooting page.
Move old first steps into the legacy section.
Make the reader aware that old information does not apply to new kits.
parent ebb60cec
......@@ -17,8 +17,8 @@ commands and some application setup that is not board specific.
.. toctree::
:maxdepth: 2
Boards/First-Steps
Boards/imx8
Boards/Troubleshooting
Boards/dev-kit/modem
Boards/mini-tutorials
Boards/Legacy/index
......
.. _first-steps:
.. _imx6_first_steps:
First Steps
===========
The development board (whether a physical one or an emulated one) will give you a place to see the effects of the active Librem 5 development. The software running on this board will become the software running on the Librem 5 phone but you don't have to wait for your Librem 5 phone to interact with it!
The development board (whether a physical one or an emulated one) will give you
a place to see the effects of the active Librem 5 development. The software
running on this board will become the software running on the Librem 5 phone
but you don't have to wait for your Librem 5 phone to interact with it!
Regardless of which development board you are using, here are some first steps you will take when booting the system.
If you are using the i.MX6 development board, here are some first steps you
will take when booting the system.
.. _make-bootable-drive:
......
......@@ -8,4 +8,5 @@ generally available or are considered to be obsolete for current development.
.. toctree::
First-Steps
imx6
.. _imx8_devkit_troubleshooting:
Troubleshooting
===============
This page provides information for developers who need to investigate a problem
with a development kit and want to diagnose it. It contains some useful
starting points for investigation.
.. contents::
Installing the SOM
------------------
If the SOM is not installed or has been removed, follow these instructions to
install it.
1. Power board without SOM via USB-C.
2. Check the voltages.
.. figure:: images/voltage-points.png
:scale: 50%
:alt: The voltage points to measure
The voltage points to measure (click to enlarge)
+------------------+-----------------+
| Point | Voltage |
+==================+=================+
| VBUS | 5.2V |
+------------------+-----------------+
| VBAT | 4.2V |
+------------------+-----------------+
| VBAT\ :sub:`REG` | 4.2V |
+------------------+-----------------+
| 5V\ :sub:`SOM` | 5.0V |
+------------------+-----------------+
| 3V3 | 3.3V |
+------------------+-----------------+
| 3V3\ :sub:`P` | ~0(without SOM) |
+------------------+-----------------+
Each voltage is measured against ground (green circle in above image).
3. Plug in the SOM.
Attach USB to Serial Adapter
----------------------------
.. _attach-usb-to-serial-adapter-1:
1. Solder in the UART debug plug
2. Attach USB to Serial Adapter
.. figure:: images/uart-pinout.png
:scale: 50%
:alt: UART pinout (click to enlarge)
UART pinout
+-----+-------+
| PIN | Color |
+=====+=======+
| 1 | black |
+-----+-------+
| 2 | n/c |
+-----+-------+
| 3 | n/c |
+-----+-------+
| 4 | green |
+-----+-------+
| 5 | white |
+-----+-------+
| 6 | n/c |
+-----+-------+
PIN 1 is the one closest to the volume button while PIN 6 is the one
closest to the power button.
Booting via nfsroot
-------------------
The SOM comes with a pre-flashed u-boot so you can connect the
USB-to-UART-Debug cable and boot the device. Breaking into uboot you can
boot using a nfsroot filesystem via
::
setenv nfsrootboot "setenv bootargs ${args_common} debug root=/dev/nfs ip=:::::eth0:dhcp nfsrootdebug nfsroot=<nfsserverip>:<nfsrootpath>,v3,tcp; dhcp ${loadaddr} Image-librem5-devkit; dhcp ${fdt_addr} librem5-devkit.dtb; booti ${loadaddr} - ${fdt_addr}"
setenv bootcmd run nfsrootboot
saveenv
boot
You need to fill in **nfsrootpath** and **nfsserverip** above. At
**nfsrootpath** there needs to be a armhf or arm64 root filesystem which
you can e.g. create via Debian's deboostrap.
For that to work the **BOOT MODE** switch needs to be set to **eMMC**
(instead of **USB**).
Installing a Minimal Linux on the eMMC
--------------------------------------
You can use ``dd`` to copy a pre-built image onto the eMMC or you can just use
``debootstrap`` to create one from scratch. This can be useful if you don't
want that many services starting up by default:
.. code:: bash
e2fsck /dev/mmcblk0p2
mount /dev/mmcblk0p2 /mnt
debootstrap --arch=arm64 buster /mnt
Back in u-boot we can switch to using the rootfs on the eMMC then (we're
still pulling kernel and device tree via tftp though:
::
setenv emmcboot "setenv bootargs ${args_common} debug root=/dev/mmcblk0p2; dhcp ${loadaddr} Image-librem5-devkit; dhcp ${fdt_addr} librem5-devkit.dtb; booti ${loadaddr} - ${fdt_addr}"
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment