|
HomeCore 0.1.3 (07b5544)
Bare-metal personal computer firmware for Cortex-M
|
lm3s6965evb target is the development and regression platform. It runs in QEMU's lm3s6965evb machine, which emulates TI's Stellaris LM3S6965 evaluation board. Every CI run builds it and runs the command regression against it. The port relies on QEMU's emulated reset state. It does not configure real GPIO, UART baud rates, or a physical oscillator, so physical Stellaris bring-up is not covered.
| SoC | TI LM3S6965 (ti/lm3s6965) |
|---|---|
| Core | Cortex-M3 |
| Flash | 256 KB at 0x00000000 |
| RAM | 64 KB at 0x20000000 |
| Clock | 12.5 MHz reported, no clock setup |
| Console | UART0 through QEMU serial |
| Presets | lm3s6965evb, lm3s6965evb-release |
The script boots build/lm3s6965evb/homecore with -nographic. Exit with Ctrl-A, then X. Try help, uptime, cat /dev/uptime, mem, the file commands (also under /ram, a littlefs volume on a 32 KB ramdisk), and reboot. Reboot discards RAM files and the /ram contents and resets the session. See Files and storage.
For the non-interactive regression, run:
The SoC registers /dev/uart0, /dev/uart1, and /dev/uart2. Standard input, output, and error use UART0. The other nodes are not additional shell sessions.
QEMU's machine has no LED, so /dev/led0 is a console LED (homecore,console-led): each change prints [led0] on or [led0] off, and reads return the last state set. The physical board's status LED on PF0 is not supported. See LEDs.
board_cpu_clock_hz() returns 12.5 MHz, which matches QEMU's Stellaris reset divider configuration; see the QEMU model. Uptime follows guest virtual time and stops while emulation is paused. Update the clock reporting if clock setup or physical hardware support is added.
The main stack uses the default CONFIG_HOMECORE_KERNEL_MAIN_STACK_SIZE of 3 KB. mem reports heap use and the stack high-water mark.
The full board guide is docs/boards/lm3s6965evb.md.