On Sat, Oct 26, 2024 at 7:55 AM Alin Jerpelea <[email protected]> wrote:
> Apache NuttX 12.7.0 RC1 has been staged under [1] and it's
> time to vote on accepting it for release. Voting will be open for 72hr.
+1 FROM ME AND BIG THANK YOU FOR ALL CONTRIBUTORS!! :-)
=== BUILD HOST ===
% uname -a
FreeBSD octagon 13.3-RELEASE-p7 FreeBSD 13.3-RELEASE-p7 GENERIC amd64
=== TARGETS ==
1. SIM:LVGL.
2. ESP32.
3. ESP32C3.
4. STM32L432KC.
5. STM32F769I.
6. STM32F412ZG.
7. STM32F411RE.
8. STM32F072RB.
9. MKL25Z128.
=== SIM:LVGL ===
This is the only build I did on Linux Debian12 binaries running on
FreeBSD as Xlib.h location needs adjustment but this is not
relevant right now.. we have newest version of LVGL and now we can
announce and share NuttX for everyone asking.. several friends asked
me recently about LVGL on NuttX and it is here wow :-)
$ uname -a
Linux octagon 5.15.0 FreeBSD 13.3-RELEASE-p7 GENERIC x86_64 GNU/Linux
$ ./tools/configure.sh -l sim:lvgl_fb
#
# configuration written to .config
#
$ make
Create version.h
LN: platform/board to /XXX/nuttx-apps.git/platform/dummy
Register: lvgldemo
Register: nsh
Register: sh
CP: /XXX/nuttx.git/include/nuttx/config.h
CP: /XXX/nuttx.git/include/nuttx/fs/hostfs.h
LD: nuttx
$ ./nuttx
[LVGL] [User] (0.000, +0) check_stack_size: tid: 4, Stack size
: 67520 lv_nuttx_entry.c:297
[LVGL] [User] (0.000, +0) lv_nuttx_fbdev_set_file: The
framebuffer device was opened successfully lv_nuttx_fbdev.c:108
[LVGL] [User] (0.000, +0) lv_nuttx_fbdev_set_file: VideoInfo:
lv_nuttx_fbdev.c:116
[LVGL] [User] (0.000, +0) lv_nuttx_fbdev_set_file: fmt:
13 lv_nuttx_fbdev.c:117
[LVGL] [User] (0.000, +0) lv_nuttx_fbdev_set_file: xres:
640 lv_nuttx_fbdev.c:118
[LVGL] [User] (0.000, +0) lv_nuttx_fbdev_set_file: yres:
480 lv_nuttx_fbdev.c:119
[LVGL] [User] (0.000, +0) lv_nuttx_fbdev_set_file: nplanes: 1
lv_nuttx_fbdev.c:120
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: PlaneInfo (plane 0):
lv_nuttx_fbdev.c:319
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: mem: 0x44e00000
lv_nuttx_fbdev.c:320
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: fblen: 2457600
lv_nuttx_fbdev.c:321
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: stride: 2560
lv_nuttx_fbdev.c:322
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: display: 0
lv_nuttx_fbdev.c:323
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: bpp: 32
lv_nuttx_fbdev.c:324
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: PlaneInfo (plane 0):
lv_nuttx_fbdev.c:319
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: mem: 0x44e00000
lv_nuttx_fbdev.c:320
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: fblen: 2457600
lv_nuttx_fbdev.c:321
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: stride: 2560
lv_nuttx_fbdev.c:322
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: display: 0
lv_nuttx_fbdev.c:323
[LVGL] [User] (0.000, +0) fbdev_get_pinfo: bpp: 32
lv_nuttx_fbdev.c:324
[LVGL] [User] (0.000, +0) fbdev_init_mem2: Use consecutive mem2
= 0x44f2c000, yoffset = 480 lv_nuttx_fbdev.c:370
[LVGL] [User] (0.000, +0) lv_nuttx_fbdev_set_file: Resolution
is set to 640x480 at 130dpi lv_nuttx_fbdev.c:174
[LVGL] [User] (0.000, +0) lv_nuttx_touchscreen_create:
touchscreen /dev/input0 opening lv_nuttx_touchscreen.c:68
[LVGL] [User] (0.000, +0) lv_nuttx_touchscreen_create:
touchscreen /dev/input0 open success lv_nuttx_touchscreen.c:75
[LVGL] [Warn] (0.000, +0) lv_demo_widgets:
LV_FONT_MONTSERRAT_20 is not enabled for the widgets demo. Using
LV_FONT_DEFAULT instead. lv_demo_widgets.c:143
X connection to :0.0 broken (explicit kill or server shutdown).
Works like a charm :-)
=== ESP32 ===
xtensa-esp32-elf-cc (crosstool-NG esp-2021r2-patch5) 8.4.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===> ESP32: esp32-devkitc:nsh
+ /usr/bin/time -h ./tools/configure.sh -B esp32-devkitc:nsh
4,28s real 1,87s user 2,74s sys
+ /usr/bin/time -h gmake -j8
42,59s real 1m31,25s user 1m11,53s sys
+ /usr/bin/time -h gmake flash
16,06s real 3,08s user 3,54s sys
+ cu -l /dev/cuaU0 -s 115200
*000 len 0x10d6c (68972)
padd: lma 0x00020d74 vma 0x00000000 len 0xf2a4 (62116)
dmap: lma 0x00030020 vma 0x3f400020 len 0x284c (10316)
total segments stored 6
NuttShell (NSH) NuttX-12.7.0
nsh>
nsh> uname -a
NuttX 12.7.0 5d8cdeaea8 Oct 27 2024 16:39:21 xtensa esp32-devkitc
nsh> free
total used free maxused maxfree nused nfree
Umem: 323552 6424 317128 6800 186680 22 3
===> ESP32: esp32-devkitc:ostest
+ /usr/bin/time -h gmake clean distclean
14,54s real 6,33s user 8,98s sys
+ /usr/bin/time -h ./tools/configure.sh -B esp32-devkitc:ostest
4,27s real 1,81s user 2,80s sys
+ /usr/bin/time -h gmake -j8
44,40s real 1m35,74s user 1m12,23s sys
+ /usr/bin/time -h gmake flash
18,84s real 3,21s user 3,76s sys
+ cu -l /dev/cuaU0 -s 115200
Connected
*000 len 0x188a0 (100512)
padd: lma 0x000288a8 vma 0x00000000 len 0x7770 (30576)
dmap: lma 0x00030020 vma 0x3f400020 len 0x9104 (37124)
total segments stored 6
NuttShell (NSH) NuttX-12.7.0
nsh> uname -a
NuttX 12.7.0 5d8cdeaea8 Oct 27 2024 16:41:30 xtensa esp32-devkitc
nsh> free
total used free maxused maxfree nused nfree
Umem: 320976 6424 314552 6800 184104 22 3
nsh> ostest
(..)
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 4e5d0 4e5d0
ordblks 7 6
mxordblk 2cf28 2cf28
uordblks 5710 5710
fordblks 48ec0 48ec0
Final memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 4e5d0 4e5d0
ordblks 3 6
mxordblk 2cf28 2cf28
uordblks 46d8 5710
fordblks 49ef8 48ec0
user_main: Exiting
ostest_main: Exiting with status 0
nsh> free
total used free maxused maxfree nused nfree
Umem: 320976 6520 314456 46112 184104 24 3
===> ESP32: esp32-devkitc:coremark
+ /usr/bin/time -h gmake clean distclean
14,84s real 5,80s user 9,82s sys
+ /usr/bin/time -h ./tools/configure.sh -B esp32-devkitc:coremark
4,36s real 2,00s user 2,70s sys
+ /usr/bin/time -h gmake -j8
44,01s real 1m36,01s user 1m9,48s sys
+ /usr/bin/time -h gmake flash
14,01s real 2,55s user 3,16s sys
+ cu -l /dev/cuaU0 -s 115200
Connected
0x400e0000 len 0xe308 (58120)
padd: lma 0x0001e310 vma 0x00000000 len 0x1d08 (7432)
dmap: lma 0x00020020 vma 0x3f400020 len 0x1534 (5428)
total segments stored 6
Running CoreMark...
2K performance run parameters for coremark.
CoreMark Size : 666
Total ticks : 1218
Total time (secs): 12.180000
Iterations/Sec : 985.221675
Iterations : 12000
Compiler version : GCC8.4.0
Compiler flags : -O3 -fno-strict-aliasing -fomit-frame-pointer
-ffunction-sections -fdata-sections
Parallel PThreads : 2
Memory location : HEAP
seedcrc : 0xe9f5
[0]crclist : 0xe714
[1]crclist : 0xe714
[0]crcmatrix : 0x1fd7
[1]crcmatrix : 0x1fd7
[0]crcstate : 0x8e3a
[1]crcstate : 0x8e3a
[0]crcfinal : 0xa14c
[1]crcfinal : 0xa14c
Correct operation validated. See README.md for run and reporting rules.
CoreMark 1.0 : 985.221675 / GCC8.4.0 -O3 -fno-strict-aliasing
-fomit-frame-pointer -ffunction-sections -fdata-sections / HEAP /
2:PThreads
=== ESP32C3 ===
riscv32-esp-elf-cc (crosstool-NG esp-2021r2-patch5) 8.4.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===> ESP32C3: esp32c3-devkit:nsh
+ /usr/bin/time -h ./tools/configure.sh -B esp32c3-devkit:nsh
4,63s real 2,17s user 2,80s sys
+ /usr/bin/time -h gmake -j8 CROSSDEV=riscv32-esp-elf-
38,41s real 1m19,30s user 1m7,38s sys
+ /usr/bin/time -h gmake flash CROSSDEV=riscv32-esp-elf-
24,25s real 7,02s user 12,80s sys
+ cu -l /dev/cuaU0 -s 115200
Connected
chip revision: v0.3
I (35) boot.esp32c3: SPI Speed : 80MHz
I (40) boot.esp32c3: SPI Mode : DIO
I (44) boot.esp32c3: SPI Flash Size : 4MB
I (49) boot: Enabling RNG early entropy source...
I (54) boot: Partition Table:
I (58) boot: ## Label Usage Type ST Offset Length
I (65) boot: 0 factory factory app 00 00 00010000 00100000
I (73) boot: End of partition table
nsh> uname -a
NuttX 12.7.0 5d8cdeaea8 Oct 27 2024 16:11:18 risc-v esp32c3-devkit
nsh> ?
help usage: help [-v] [<cmd>]
. cp exit ls rm uname
[ cmp expr mkdir rmdir umount
? dirname false mkrd set unset
alias dd fdinfo mount sleep uptime
unalias df free mv source usleep
basename dmesg help pidof test xd
break echo hexdump printf time
cat env kill ps true
cd exec pkill pwd truncate
Builtin Apps:
dumpstack nsh sh
nsh> free
total used free maxused maxfree nused nfree
Umem: 373820 5364 368456 5720 368456 19 1
===> ESP32C3: esp32c3-devkit:ostest
+ gmake clean distclean CROSSDEV=riscv32-esp-elf-
+ /usr/bin/time -h ./tools/configure.sh -B esp32c3-devkit:ostest
4,70s real 2,25s user 2,78s sys
+ /usr/bin/time -h gmake -j8 CROSSDEV=riscv32-esp-elf-
36,99s real 1m15,21s user 1m7,97s sys
+ /usr/bin/time -h gmake flash CROSSDEV=riscv32-esp-elf-
27,26s real 6,96s user 13,59s sys
+ cu -l /dev/cuaU0 -s 115200
nsh> uname -a
NuttX 12.7.0 5d8cdeaea8 Oct 27 2024 16:13:30 risc-v esp32c3-devkit
nsh> ?
help usage: help [-v] [<cmd>]
. cp exit ls rm uname
[ cmp expr mkdir rmdir umount
? dirname false mkrd set unset
alias dd fdinfo mount sleep uptime
unalias df free mv source usleep
basename dmesg help pidof test xd
break echo hexdump printf time
cat env kill ps true
cd exec pkill pwd truncate
Builtin Apps:
nsh ostest sh
nsh> free
total used free maxused maxfree nused nfree
Umem: 372348 5364 366984 5720 366984 19 1
nsh> free
total used free maxused maxfree nused nfree
Umem: 372348 5364 366984 5720 366984 19 1
nsh> ostest
(..)
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 5ae7c 5ae7c
ordblks 6 5
mxordblk 522f8 522f8
uordblks 529c 529c
fordblks 55be0 55be0
user_main: vfork() test
vfork_test: Child 63 ran successfully
Final memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 5ae7c 5ae7c
ordblks 1 4
mxordblk 56c18 522f8
uordblks 4264 69cc
fordblks 56c18 544b0
user_main: Exiting
ostest_main: Exiting with status 0
nsh> free
total used free maxused maxfree nused nfree
Umem: 372348 5452 366896 44840 346896 21 3
+ gmake clean distclean CROSSDEV=riscv32-esp-elf-
===> ESP32C3: esp32c3-devkit:coremark
+ /usr/bin/time -h ./tools/configure.sh -B esp32c3-devkit:coremark
4,63s real 2,20s user 2,75s sys
+ /usr/bin/time -h gmake -j8 CROSSDEV=riscv32-esp-elf-
36,05s real 1m12,48s user 1m4,20s sys
+ /usr/bin/time -h gmake flash CROSSDEV=riscv32-esp-elf-
21,04s real 6,41s user 12,20s sys
+ cu -l /dev/cuaU0 -s 115200
CoreMark Size : 666
Total ticks : 1472
Total time (secs): 14.720000
Iterations/Sec : 407.608696
Iterations : 6000
Compiler version : GCC8.4.0
Compiler flags : -O3 -fno-strict-aliasing -fomit-frame-pointer
-ffunction-sections -fdata-sections -nostdlib
Memory location : HEAP
seedcrc : 0xe9f5
[0]crclist : 0xe714
[0]crcmatrix : 0x1fd7
[0]crcstate : 0x8e3a
[0]crcfinal : 0xa14c
Correct operation validated. See README.md for run and reporting rules.
CoreMark 1.0 : 407.608696 / GCC8.4.0 -O3 -fno-strict-aliasing
-fomit-frame-pointer -ffunction-sections -fdata-sections -nostdlib /
HEAP
=== STM32L432KC ===
+ arm-none-eabi-gcc --version
arm-none-eabi-gcc (GNU Arm Embedded Toolchain ) 10.3.1 20210824 (release)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===> STM32L432KC: nucleo-l432kc:nsh
+ /usr/bin/time -h ./tools/configure.sh -B nucleo-l432kc:nsh
4,42s real 1,95s user 2,84s sys
+ /usr/bin/time -h gmake -j8 -j8 CROSSDEV=arm-none-eabi-
39,81s real 2m45,33s user 46,96s sys
+ /usr/bin/time -h openocd -f interface/stlink.cfg -f
target/stm32l4x.cfg -c 'program nuttx.bin 0x08000000; reset run; exit'
4,90s real 0,06s user 0,15s sys
+ cu -l /dev/cuaU0 -s 115200
Connected
nsh> uname -a
NuttX 12.7.0 5d8cdeaea8 Oct 27 2024 17:15:46 arm nucleo-l432kc
nsh> ?
help usage: help [-v] [<cmd>]
. cd exec mkdir set umount
[ cp exit mkrd sleep unset
? cmp expr mount source uptime
alias dirname false mv test usleep
unalias date help printf time xd
basename dd hexdump pwd true
break dmesg kill rm truncate
cat echo ls rmdir uname
Builtin Apps:
alarm nsh ostest rand sh
nsh> free
nsh: free: command not found
=== STM32F769I ===
arm-none-eabi-gcc (GNU Arm Embedded Toolchain ) 10.3.1 20210824 (release)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===> STM32F769I: stm32f769i-disco:nsh
+ /usr/bin/time -h ./tools/configure.sh -B stm32f769i-disco:nsh
4,89s real 2,12s user 2,84s sys
+ /usr/bin/time -h gmake -j8 -j8 CROSSDEV=arm-none-eabi-
44,91s real 3m14,32s user 48,12s sys
+ /usr/bin/time -h openocd -f interface/stlink.cfg -f
target/stm32f7x.cfg -c 'program nuttx.bin 0x08000000; reset run; exit'
1,49s real 0,02s user 0,02s sys
+ cu -l /dev/cuaU0 -s 115200
Connected
nsh> uname -a
NuttX 12.7.0 5d8cdeaea8 Oct 27 2024 17:25:48 arm stm32f769i-disco
nsh> ?
help usage: help [-v] [<cmd>]
. cd exit mkrd sleep unset
[ cp expr mount source uptime
? cmp false mv test usleep
alias dirname help printf time xd
unalias dd hexdump pwd true
basename dmesg kill rm truncate
break echo ls rmdir uname
cat exec mkdir set umount
Builtin Apps:
nsh sh
nsh> free
nsh: free: command not found
=== STM32F412ZG ===
arm-none-eabi-gcc (GNU Arm Embedded Toolchain ) 10.3.1 20210824 (release)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===> STM32F412ZG: nucleo-f412zg:nsh
+ /usr/bin/time -h ./tools/configure.sh -B nucleo-f412zg:nsh
4,56s real 2,00s user 2,89s sys
+ /usr/bin/time -h gmake -j8 -j8 CROSSDEV=arm-none-eabi-
44,24s real 3m14,18s user 48,01s sys
+ /usr/bin/time -h openocd -f interface/stlink.cfg -f
target/stm32f4x.cfg -c 'program nuttx.bin 0x08000000; reset run; exit'
+ cu -l /dev/cuaU0 -s 115200
Connected
No response, looking at the documentation we need to bring back
console port back to ST-Link UART.. or does not work at all ;-)
=== STM32F411RE ===
arm-none-eabi-gcc (GNU Arm Embedded Toolchain ) 10.3.1 20210824 (release)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===> STM32F411RE: nucleo-f4x1re:f411-nsh
+ /usr/bin/time -h ./tools/configure.sh -B nucleo-f4x1re:f411-nsh
4,50s real 2,03s user 2,83s sys
+ /usr/bin/time -h gmake -j8 -j8 CROSSDEV=arm-none-eabi-
44,22s real 3m13,37s user 47,08s sys
+ /usr/bin/time -h openocd -f interface/stlink.cfg -f
target/stm32f4x.cfg -c 'program nuttx.bin 0x08000000; reset run; exit'
3,28s real 0,01s user 0,05s sys
+ cu -l /dev/cuaU0 -s 115200
Connected
K
nsh> uname -a1dewdwcommansh> ? exi?
Hmm output seems broken. This is old devkit lets update ST-Link
firmware and see if that helps :-)
+ cu -l /dev/cuaU0 -s 115200
Connected
nsh> uname -a
NuttX 12.7.0 5d8cdeaea8 Oct 27 2024 18:37:34 arm nucleo-f4x1re
nsh> ?
help usage: help [-v] [<cmd>]
. cd exit mkrd sleep unset
[ cp expr mount source uptime
? cmp false mv test usleep
alias dirname help printf time xd
unalias dd hexdump pwd true
basename dmesg kill rm truncate
break echo ls rmdir uname
cat exec mkdir set umount
Builtin Apps:
nsh sh
nsh> free
nsh: free: command not found
Yup old ST-Link firmware is was buggy :-)
=== STM32F072RB ===
arm-none-eabi-gcc (GNU Arm Embedded Toolchain ) 10.3.1 20210824 (release)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===> STM32F072RB: nucleo-f072rb:nsh
+ /usr/bin/time -h ./tools/configure.sh -B nucleo-f072rb:nsh
4,50s real 2,03s user 2,81s sys
+ /usr/bin/time -h gmake -j8 -j8 CROSSDEV=arm-none-eabi-
33,96s real 2m19,68s user 37,82s sys
+ /usr/bin/time -h openocd -f interface/stlink.cfg -f
target/stm32f0x.cfg -c 'program nuttx.bin 0x08000000; reset run; exit'
1,77s real 0,05s user 0,06s sys
+ cu -l /dev/cuaU0 -s 115200
Connected
This ST-Link is old and does not have UART, external converter needs
to be connected but I did not manage to make a connection on various
pins, looking at documentation this need cleanup or does not work at
all ;-)
=== MKL25Z128 ===
arm-none-eabi-gcc (GNU Arm Embedded Toolchain ) 10.3.1 20210824 (release)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===> MKL25Z128: freedom-kl25z:nsh
+ /usr/bin/time -h ./tools/configure.sh -B freedom-kl25z:nsh
4,59s real 2,00s user 2,90s sys
+ /usr/bin/time -h gmake -j8 -j8 CROSSDEV=arm-none-eabi-
33,22s real 2m18,94s user 38,79s sys
This is FRDM-KL25Z board. We don't have flashing/debugging
instructions with OpenOCD for this target in our documentation. But it
uses OpenSDA debug probe so I copied nuttx.bin into the USB MSD and it
worked although very minimalistic configuration :-)
% cu -l /dev/cuaU0 -s 115200
Connected
nsh> uname -a
nsh> ?
help usage: help [-v] [<cmd>]
? cmp exec exit help hexdump xd
Builtin Apps:
nsh pwm sh
nsh> uname
nsh> ls
nsh> ls /dev
--
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info