mirror of https://gerrit.osmocom.org/simtrace2
msg->l2h should always point at the first byte of the header after the generic simtrace header. For some reason this doesn't work if used globally, but it is required for the MSGC_MODEM messages to be interpreted correctly. |
||
---|---|---|
.. | ||
apps | ||
atmel_softpack_libraries | ||
libboard | ||
libcommon | ||
libosmocore | ||
openocd | ||
test | ||
usbstring | ||
Makefile | ||
README.txt |
README.txt
== 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