mirror of
https://gitea.osmocom.org/sim-card/simtrace2.git
synced 2026-03-16 21:28:33 +03:00
71 lines
2.0 KiB
Plaintext
71 lines
2.0 KiB
Plaintext
|
|
== BOARDS
|
|
|
|
A board defines a given circuit board, i.e. SIMtrace, OWHW, QMOD
|
|
|
|
It defines the given hardware model for which the program is to be
|
|
compiled.
|
|
|
|
Current boards supported are:
|
|
* simtrace: The good old Osmocom SIMtrace PCB with SAM3 instead of
|
|
SAM7, open hardware.
|
|
* qmod: A sysmocom-proprietary quad mPCIe carrier board, publicly available
|
|
* owhw: An undisclosed sysmocom-internal board, not publicly available
|
|
|
|
== APPLICATIONS
|
|
|
|
An application is a specific piece of software with given
|
|
functionality.
|
|
|
|
== ENVIRONMENTS
|
|
|
|
An environment is a runtime environment, typically defined by a linker
|
|
script. The current runtime environments include
|
|
* flash: Run natively from start of flash memory
|
|
* dfu: Run after a DFU bootloader from an offset after the first 16k
|
|
of flash (the first 16k are reserved for the bootloader)
|
|
* ram: Run from within the RAM of the chip, downloaded via JTAG/SWD
|
|
|
|
|
|
== Building
|
|
|
|
A given software build is made for a specific combination of an APP
|
|
running in a certain ENVIRONMENT on a given BOARD.
|
|
|
|
A Makefile is provided. It will create output files in the format
|
|
bin/$(BOARD)-$(APP)-$(ENV).{elf,bin}
|
|
|
|
You can specify the APP and BOARD to build when calling make, like
|
|
e.g.
|
|
* make APP=cardem BOARD=qmod
|
|
* make APP=dfu BOARD=qmod
|
|
|
|
The level of debug messages can be altered at compile time:
|
|
```
|
|
$ make TRACE_LEVEL=4
|
|
```
|
|
Accepted values: 0 (NO_TRACE) to 5 (DEBUG)
|
|
|
|
== Flashing
|
|
|
|
For flashing the firmware, there are at least two options.
|
|
|
|
=== Using JTAG + OpenOCD to flash the DFU bootloader
|
|
|
|
The first one is using openocd and a JTAG key.
|
|
For this option, a JTAG connector has to be soldered onto the board, which is not attached per default.
|
|
|
|
```
|
|
$ openocd -f openocd/openocd.cfg -c "init" -c "halt" -c "flash write_bank 0 ./bin/$(BOARD)-dfu-flash.bin 0" -c "reset" -c "shutdown"
|
|
```
|
|
|
|
=== Using bossac to flash the DFU bootloader
|
|
|
|
The second option is using rumba for flashing. No further hardware has to be provided for this option.
|
|
|
|
FIXME
|
|
|
|
=== Using DFU to flash application
|
|
|
|
FIXME
|