57 lines
2.1 KiB
Plaintext
57 lines
2.1 KiB
Plaintext
- implement flash driver
|
|
- see arch/arm/src/stm32/stm32_flash.c and related
|
|
- both banks could be mapped with care taken not to erase the active code.
|
|
- perhaps the MPU could block code corruption?
|
|
|
|
- once implemented, the free() cmd replacement can show flash information.
|
|
|
|
- Seen crashes when running serial ports below 921600
|
|
|
|
- COM34 (UART1, ttyS1) runs the smoothest with 'serialblaster' test...
|
|
the other two (UART0, USART1) seem to stutter...
|
|
|
|
- created a cpuhog test. Each instance takes a semaphore, burns cpu for 6ms and then releases
|
|
the sem to exercises semaphores passing and a busy cpu. The first two instances become a
|
|
producer/consumer pair using a pipe (FIFO) to exercise the fileio data passing.
|
|
-> no crashes with 8 instances running. (No MMU, No BASEPRI)
|
|
-> no crashes with 8 instances running. (MMU + BASEPRI)
|
|
-> not however that the serial ports are very finicky with BASEPRI enabled!
|
|
This setup sends single charactes for each produced or consumed block,
|
|
and doesn't seem to have any issues:
|
|
NuttShell (NSH)
|
|
nsh> cpuhog > /dev/ttyS1 &
|
|
cpuhog [5:50]
|
|
nsh> cpuhog > /dev/ttyS2 &
|
|
cpuhog [7:50]
|
|
nsh> cpuhog &
|
|
cpuhog [8:50]
|
|
nsh> cpuhog 2
|
|
cpuhog &
|
|
cpuhog [9:50]
|
|
nsh> cpuhog 3
|
|
cpuhog &
|
|
cpuhog [10:50]
|
|
nsh> cpuhog 4
|
|
cpuhog &
|
|
cpuhog [11:50]
|
|
nsh> cpuhog 5
|
|
|
|
nsh> cpuhog &
|
|
cpuhog [12:50]
|
|
nsh> cpuhog 6
|
|
|
|
nsh> cpuhog &
|
|
cpuhog [13:50]
|
|
nsh> cpuhog 7
|
|
|
|
- USB serial not quite stable when pushing lots of data
|
|
|
|
- UARTs don't use DMA. We may need this for high baudrates.
|
|
- Inbound hardware flow control requires dma.
|
|
|
|
Current Test:
|
|
|
|
40mA: 120Mhz (240 MHz PLL) with SDCard mounted, UART0+UART1+USART1 enabled, USB Device availible (but nothing plugged in)
|
|
37.8mA: 120Mhz (120 MHz PLL) with SDCard mounted, UART0+UART1+USART1 enabled
|
|
16.9mA: "" with WFI added to up_idle()
|