Sean Cross
6435aec3db
Untested commit -- this should add support for the Hacker version of the PCB. Signed-off-by: Sean Cross <sean@xobs.io> |
||
---|---|---|
hw | ||
sw | ||
.gitignore | ||
.gitmodules | ||
LICENSE | ||
README.md |
Foboot: The Bootloader for Fomu
Foboot is a failsafe bootloader for Fomu. It exposes a DFU interface to the host. Foboot comes in two halves: A Software half and a Hardware half.
Building the Hardware
The hardware half is written in LiteX, and uses lxbuildenv
to handle Python dependencies. Hardware is contained within the hw/
directory. You must install software dependencies yourself:
- Python 3.5+
- Nextpnr
- Icestorm
- Yosys
- Git
Subproject dependencies will be taken care of with lxbuildenv
.
Usage
To build, run foboot-bitstream.py
:
python3 .\foboot-bitstream.py
There are multiple build options available. Use --help
to list them.
Build files will be generated in the build/
directory. You will probably be most interested in build/gateware/top.bin
and build/software/include/generated/
.
Tests
You can run tests by using the unittest
command:
python .\lxbuildenv.py -r -m unittest -v valentyusb.usbcore.cpu.epfifo_test.TestPerEndpointFifoInterface
Building the Software
Software is contained in the sw/
directory.