Commit Graph

259 Commits

Author SHA1 Message Date
hujun5
d573952790 irq: use up_interrupt_context to replace up_current_regs
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-09 18:16:43 +08:00
raiden00pl
dff79e8e54 boards/stm32f7/stm32f746g-disco: fix FMC pin
during migration from legacy pinout some of the FMC pins were ommited because
their names were identical to the new pinout, which didn't cause a compilation error.

This fixes LCD examples.

Also update incomplete stm32f769i-disco FMC support to avoid this kind of bug in the future
2024-10-09 00:04:57 +08:00
ligd
ff1b54bff3 pthread_cleanup: move clenup down to tls
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-09-14 20:15:12 +08:00
hujun5
908df725ad arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS
reason:
1 On different architectures, we can utilize more optimized strategies
  to implement up_current_regs/up_set_current_regs.
eg. use interrupt registersor percpu registers.

code size
before
    text    data     bss     dec     hex filename
 262848   49985   63893  376726   5bf96 nuttx

after
       text    data     bss     dec     hex filename
 262844   49985   63893  376722   5bf92 nuttx

size change -4

Configuring NuttX and compile:
$ ./tools/configure.sh -l qemu-armv8a:nsh_smp
$ make
Running with qemu
$ qemu-system-aarch64 -cpu cortex-a53 -smp 4 -nographic \
   -machine virt,virtualization=on,gic-version=3 \
   -net none -chardev stdio,id=con,mux=on -serial chardev:con \
   -mon chardev=con,mode=readline -kernel ./nuttx

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-09-13 23:18:58 +08:00
guoshichao
4c01594d5b nuttx: remove the unnecessary -pipe build option
Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2024-08-31 10:22:20 +08:00
yinshengkai
263f8955da fs/procfs: Supports any number of thread displays
After the number of threads exceeds the array size, it will not be displayed.
Any number of threads can be displayed using dynamic adaptation

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-08-28 14:01:25 +08:00
Petro Karashchenko
d252b6229f nuttx: use sizeof instead of define or number in snprintf
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2024-08-25 19:22:15 +08:00
cuiziwei
e21885b84a nuttx/boards:Uniform initialization format for init_array.
(1) Keep the `.init_array` and `.ctors` symbols and sort them according to their initialization priority.
(2) Exclude symbols ending with crtend.* and crtbegin.* to support c++
application.if we not exclude crtend.* crtbegin.* frame_dummy will be
added when enable any c++ application with global variables, this symbol
execution is problematic, removing it does not affect the application.

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-08-19 19:48:32 +08:00
Roberto Bucher
f5df946676 Additional encoder for F7 and added functions for TimerHook for F745 and H745 and H743 2024-08-02 20:26:06 +08:00
Alan Carvalho de Assis
8acca7c40a stm32f777zit6-meadow: Add support for two USB CDC/ACM
This modification adds support for two USB Composite CDC/ACM for
meadow board.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2024-07-21 10:31:12 +08:00
Alan Carvalho de Assis
82946d0d5f net: Enable ICMP by default if IPv4 is enabled
Signed-off-by: Alan C. Assis <acassis@gmail.com>
2024-07-09 17:08:27 +08:00
Tiago Medicci Serrano
96f83bb03a net: Enable CONFIG_NET_ARP_SEND by default
Enable logic to send ARP requests if the target IP address mapping
does not appear in the ARP table.

Please check the comment in https://github.com/apache/nuttx/issues/12446#issuecomment-2145856778
2024-06-06 02:40:16 +08:00
simbit18
09bfaa7292 fix nxstyle
fix Relative file path does not match actual file.
2024-05-11 01:19:06 +08:00
Xu Xingliang
62c2b3e1ec lvgl: update existing config to use lvgl v9
These configs are changed based on below rules.
1. always enable +CONFIG_LV_USE_NUTTX=y
2. If touchpad is used, enable +CONFIG_LV_USE_NUTTX_TOUCHSCREEN=y
3. enable log by +CONFIG_LV_USE_LOG=y
4. If -CONFIG_LV_MEM_CUSTOM=y previously defined, replace it with +CONFIG_LV_USE_CLIB_MALLOC=y +CONFIG_LV_USE_CLIB_SPRINTF=y +CONFIG_LV_USE_CLIB_STRING=y
5. If -CONFIG_LV_PORT_USE_FBDEV=y, default config is for fbdev. If -CONFIG_LV_PORT_USE_LCDDEV=y, +CONFIG_LV_USE_NUTTX_LCD=y
6. Remove all -CONFIG_LV_TICK_CUSTOM=y -CONFIG_LV_TICK_CUSTOM_INCLUDE="port/lv_port_tick.h"
7. If -CONFIG_LV_PORT_LCDDEV_DOUBLE_BUFFER=y, replace it with CONFIG_LV_NUTTX_LCD_DOUBLE_BUFFER=y. For fbdev, double buffer is automatically detected.
8. If -CONFIG_LV_COLOR_16_SWAP=y, need to upgrade the LCD driver to support hardware byte order swap.

Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2024-04-29 10:06:43 +08:00
Alan Carvalho de Assis
12849b66e6 stm32f777zit6-meadow: Add audio support (CS4344) 2024-04-27 13:12:47 +08:00
Alan Carvalho de Assis
d9148add03 stm32f7/common: Add CS4344 audio codec initialization 2024-04-27 13:12:47 +08:00
simbit18
7677f10d3f fix nxstyle
fix Relative file path does not match actual file.
2024-04-16 19:09:12 +08:00
zouboan
03e90d9311 boards/stm32_bbsram.c: fix some build error when enable BBSRAM 2024-02-02 12:36:20 -03:00
raiden00pl
c0ffcca0e8 boards: remove obsolete CONFIG_EXAMPLES_FOC_IPHASE_ADC option 2023-11-15 03:43:25 -08:00
raiden00pl
99513ac23e drivers/foc: return scaling factor for phase currents and BEMF via ioctl
These values are board-specific properties that must be known on the application side.
Until now, these values had to be hardcoded on the application side.
2023-11-14 04:34:49 -08:00
raiden00pl
7d99f01cf7 drivers/foc: get hardware information via lower-half interface 2023-11-14 04:34:49 -08:00
chenrun1
de17f43481 boards:Modify test "ramtest" path
Based on the PR#2161 change, we need to modify the macro switch in most boards to configure ramtest.

Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
2023-10-26 13:17:35 +02:00
simbit18
37729540c0 Fix Kconfig style
Remove spaces from Kconfig
Add comments
2023-10-26 01:53:58 +08:00
Alan Carvalho de Assis
444b6d9635 boards: Update all boards that were using CONFIG_NET_LL_GUARDSIZE=50 2023-10-16 08:55:21 +08:00
simbit18
4f985f4367 Fix Kconfig style
Remove spaces from Kconfig
Add comments
2023-09-22 00:35:48 +08:00
Xiang Xiao
8dbe86084e Remove FAR from source code under 32bit arch and board
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-09-16 19:12:13 +03:00
Alan Carvalho de Assis
0f73199de6 board/stm32f777zit6-meadow: Add support to F7 Core Compute
This patch add basic support to Meadow F7 Core Compute board.
The board profile "f7corecomp" include support to USB Console
and SD Card.
2023-09-16 14:32:53 +08:00
simbit18
74b4672b76 Fix Kconfig style
Remove spaces from Kconfig
Add comments
2023-09-08 01:13:53 +08:00
zhangyuan21
0efd4d0e12 usbdev: Split usbdev descriptor information
The class device only handles descriptor information specific to the class,
and shared descriptor information is passed through parameters and
handled by the composite driver.

Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2023-09-06 02:29:32 +08:00
Alan Carvalho de Assis
c27c33e9a9 Run refresh.sh to update all board configs 2023-09-02 14:45:44 +08:00
cuiziwei
4ec7af779d nuttx/boards:init_array.* needs to be executed in order
When I try to set priorities in certain programs, such as init_priority(HIGH_PRIORITY), I've noticed that during linking, there's no guarantee that the programs will be compiled in the sequence I've specified based on priority. This has led to some runtime errors in my program.

I realized that in the ld file, when initializing dynamic arrays, there's no assurance of initializing init_array.* before init_array. This has resulted in runtime errors in the program. Consequently, I've rearranged the init_array.* in the ld file of NuttX to be placed before init_array and added a SORT operation to init_array.* to ensure accurate initialization based on priorities during linking.
2023-08-29 22:54:37 +08:00
Alan Carvalho de Assis
610a06cf7c stm32f7/stm32f769i-disco: Add common board support 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
51983159af stm32f7/stm32f746-ws: Add common board support 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
04286eb191 stm32f7/stm32f746g-disco: Add common board support 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
4dcceb00cb stm32f7/steval-eth001v1: Add common board support 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
0aeb17b973 stm32f7/nucleo-144: Add common board support 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
b41f526fa6 stm32f7: Add support to ProjectLab base board 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
69a0c28557 stm32f777zit6-meadow: Fix I2C1 pinout 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
3d45cf8bfc stm32f7/common: Add support to BMI270 sensor 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
e40fae408c stm32f7/common: Add light sensor BH1750 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
fd10727f13 stm32f777zit6-meadow: Modify to support common board drivers 2023-08-28 21:03:19 +03:00
Alan Carvalho de Assis
0e914506da boards/stm32f7: Add Common Board Drivers support 2023-08-28 21:03:19 +03:00
Alexis Christoforides
033f265e53 Meadow.OS source code migration - Part 1 - Take 2
This patch starts to implement the ability to build Meadow.OS for the Meadow F7 board with the NuttX  mainline. It will be followed by more patches, progressively enabling full Meadow.OS functionality. This configuration is a work in progress.

The Meadow.OS source code is needed to build this configuration. Meadow.OS is being open-sourced under the Apache 2.0 license. A prototype of the source code release and integration with NuttX  is at https://github.com/WildernessLabs/Meadow.OS/tree/prototype

This is the second revision of this patch, as the first one (https://github.com/apache/nuttx/pull/9997) was causing build issues on NuttX CI and was reverted.

This should only impact the Meadow F7 board configurations.

No testing to be done, as the configuration is under development.
2023-08-26 08:49:17 +02:00
raiden00pl
a4637613d8 Documentation: migrate STM32F7 2023-08-24 17:56:59 +08:00
Xiang Xiao
90f8315432 arch: Remove up_netinitialize
since this api change to xxx_netinitialize

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-08-20 14:33:17 +03:00
Alan Carvalho de Assis
9d51024434 Revert "Meadow.OS source code migration - Part 1"
It is causing error in the mainline:

boards/arm/stm32f7/.../src/Meadow.OS/espcp/Kconfig: No such file or directory

This reverts commit 24e37ec3e8.
2023-08-12 00:36:31 +03:00
Alexis Christoforides
24e37ec3e8 Meadow.OS source code migration - Part 1 2023-08-11 16:37:10 -03:00
Alan Carvalho de Assis
5417e193d6 stm32f7-meadow: Update usbnsh defconfig to include QSPI Flash 2023-08-09 11:06:23 +08:00
Alan Carvalho de Assis
1a57847e04 stm32f7-meadow: Fix QUADSPI call function
New board uses a different flash model
2023-08-09 11:06:23 +08:00
cuiziwei
25eb09c3bb nuttx/boards:add KEEP to *(.init_array .init_array.*)
replace *(.init_array .init_array.*) with KEEP(*(.init_array .init_array.*)).

The KEEP statement within a linker script will instruct the linker to keep the specified section, even if no symbols inside it are referenced. This statement is used within the SECTIONS section of the linker script. This becomes relevant when garbage collection is performed at link time, enabled by passing the --gc-sections switch to the linker. The KEEP statement instructs the linker to use the specified section as a root node when creating a dependency graph, looking for unused sections. Essentially forcing the section to be marked as used.

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2023-08-05 05:02:25 -07:00