Commit Graph

2946 Commits

Author SHA1 Message Date
chao an
4b4cee8916 build/kconfig: refresh all defconfig
Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-09 20:07:46 +08:00
chao an
e942a7c55e build/Kconfig: fix warnings detected by kconfiglib
Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-09 20:07:46 +08:00
chao an
3a0fdb019d nuttx: replace all ARRAY_SIZE()/ARRAYSIZE() to nitems()
Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-09 20:05:44 +08:00
Xiang Xiao
916fa4d759 boards/sim: Enable CONFIG_SIM_M32 in nimble
please reference this pr:
https://github.com/apache/mynewt-nimble/pull/1125

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-09 14:36:05 +08:00
Zhihong Chen
d082af34f7 add hpmicro chip: hpm6750
Signed-off-by: Zhihong Chen <zhihong.chen@hpmicro.com>
2023-02-09 14:17:49 +08:00
Alan Carvalho de Assis
63a847ebca esp32s3-devkit: Add support LED PWM initialization 2023-02-08 11:02:19 +08:00
Alan Carvalho de Assis
94970f32d7 esp32s2-saola-1: Add initialization to LEDC PWM 2023-02-08 10:56:32 +08:00
raiden00pl
18cf2c4297 boards/stm32f4discovery: add nxscope CDCACM example 2023-02-08 10:06:59 +08:00
raiden00pl
fc322a9c78 boards/sim: add nxscope config 2023-02-08 10:06:59 +08:00
Nathan Hartman
962e072fd5 mips/ld scripts: Fix typo in comment (s/mappled/mapped/) 2023-02-08 10:06:26 +08:00
Nathan Hartman
d383db53f9 boards/pic32mz-starterkit: Fix building with Sourcery toolchain
Fixing an issue that occurred When building with the
Sourcery CodeBench Lite MIPS Toolchain for Linux
(CONFIG_MIPS32_TOOLCHAIN_SOURCERY_CODEBENCH_LITE).
2023-02-08 10:06:01 +08:00
Ville Juven
09e7987121 sched/addrenv: Fix system crash when process group has been deleted
There is currently a big problem in the address environment handling which
is that the address environment is released too soon when the process is
exiting. The current MMU mappings will always be the exiting process's, which means
the system needs them AT LEAST until the next context switch happens. If
the next thread is a kernel thread, the address environment is needed for
longer.

Kernel threads "lend" the address environment of the previous user process.
This is beneficial in two ways:
- The kernel processes do not need an allocated address environment
- When a context switch happens from user -> kernel or kernel -> kernel,
  the TLB does not need to be flushed. This must be done only when
  changing to a different user address environment.

Another issue is when a new process is created; the address environment
of the new process must be temporarily instantiated by up_addrenv_select().
However, the system scheduler does not know that the process has a different
address environment to its own and when / if a context restore happens, the
wrong MMU page directory is restored and the process will either crash or
do something horribly wrong.

The following changes are needed to fix the issues:
- Add mm_curr which is the current address environment of the process
- Add a reference counter to safeguard the address environment
- Whenever an address environment is mapped to MMU, its reference counter
  is incremented
- Whenever and address environment is unmapped from MMU, its reference
  counter is decremented, and tested. If no more references -> drop the
  address environment and release the memory as well
- To limit the context switch delay, the address environment is freed in
  a separate low priority clean-up thread (LPWORK)
- When a process temporarily instantiates another process's address
  environment, the scheduler will now know of this and will restore the
  correct mappings to MMU

Why is this not causing more noticeable issues ? The problem only happens
under the aforementioned special conditions, and if a context switch or
IRQ occurs during this time.
2023-02-08 02:51:23 +08:00
raiden00pl
ca95d592d3 boards/stm32f4disco: add timer driver support 2023-02-08 02:43:13 +08:00
chao an
68970fe8a1 sim/dynconns: enable more configs to catch compile warning
Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-08 02:42:59 +08:00
chao an
caa16742db rp2040/raspberrypi-pico-w: update submodule to avoid invaild firmware
The cyw43-driver is a submodule in the pick-sdk, if the submodule is
not updated, the dummy firmware driver will be used, update the document
to correct the setup flow.

${PICO_SDK_PATH}/lib/cyw43-driver/firmware/43439A0-7.95.49.00.combined

Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-07 04:40:38 +08:00
chao an
5c047f634f raspberrypi-pico-w/telnet: enable more configs
Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-07 04:40:38 +08:00
Xiang Xiao
d8a8c2fdd8 boards: Enable assert for citest
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-06 21:33:15 +09:00
Masayuki Ishikawa
25a6448a1a boards: sabre-6quad: Update README.txt
Summary:
- This commit updates README.txt regarding QEMU with DEBUG_ASSERTIONS=y

Impact:
- None

Testing:
- Tested with QEMU-7.1

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2023-02-06 18:26:05 +08:00
Masayuki Ishikawa
50989430cd boards: sabre-6quad: Enable DEBUG_ASSERTION in citest
Summary:
- Since QEMU does not report L2CC information correctly,
  NuttX stops if DEBUG_ASSERTIONS=y.
- This commit adds DEBUG_ASSERTIONS=y to citest/defconfigs
  and disables L2CC related configs.
- Also, it disables RAMLOG to show the crash information

Impact:
- None

Testing:
- Tested with QEMU-7.1

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2023-02-06 18:26:05 +08:00
Stuart Ianna
a2a542562f fs: Implment link as a normal function instead macro
so "using ::link;" can pass the compiling. This change also
simplify the implementation of the hard link in the future.
2023-02-04 18:31:23 -03:00
wangbowen6
f925e17f18 tlsr82/backtrace: tc32 backtrace bug fix
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-02-04 18:25:58 -03:00
Xiang Xiao
83764079a1 boards/sim: Enable CONFIG_ARCH_MATH_H for libcxxtest
to undefine __GLIBC__, otherwise libcxx misthink it work with glibc

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-04 21:00:54 +02:00
Xiang Xiao
df102d1f06 Remove OK macro from the code base
let's use OK from sys/types.h instead

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-02 13:58:16 +01:00
Gustavo Henrique Nihei
e6b204f438 nuttx: Use MIN/MAX definitions from "sys/param.h"
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-02-01 23:47:44 +08:00
chao an
a045eb3c1d arm/sama5/jupiter-nano: correct config name
Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-01 22:36:42 +08:00
Stuart Ianna
05c6d7c7b9 litex: Add PWM driver.
PWM driver for multiple peripherals supplied in gateware.

Only single channel frequency and duty cycle control is implemented. Pulse counting and multichannel features are not currently feasible.

Additions also include a new board configuration for arty-a7 which enables the PWM driver and example application.
2023-02-01 09:34:57 -03:00
Huang Qi
8b27d60bcd tools: Make zig available for arm/riscv/sim
Add essential compile flags to make zig available out of box.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-02-01 11:12:44 +08:00
Xiang Xiao
9f027208d4 fs: Add model field to geometry and mtd_geometry_s
the model is very useful to track the device info

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-31 11:50:28 -03:00
David Vosahlik
372fee9412 Added SocketCAN driver implementation to the tiva chip, modified the EK-TC1294XL launchpad board to use the new SocketCAN API 2023-01-31 14:07:23 +08:00
Xiang Xiao
fcdba7a3ef sim/usrsocktest: Enable CONFIG_DEBUG_ASSERTIONS
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-31 12:08:05 +09:00
Ville Juven
0bebb94923 icicle/configs: Update some configs
- Remove the annoying color terminal for nsh target
- Add SHMFS for nsh and pnsh
- Increase stack user and kernel sizes for kernel mode
2023-01-30 21:57:25 +08:00
Fotis Panagiotopoulos
2fe8f37001 Fixed non-UTF characters. 2023-01-30 20:08:03 +08:00
chao an
ac77492dd1 sim/rpserver/rpproxy: remove colon from syslog prefix
Before:
[server: ] show_tasks:    PID   PRI    STACKBASE STACKSIZE   COMMAND
[server: ] dump_task:      0      0   0xfff8e088     69600   Idle Task

After:
[server] show_tasks:    PID   PRI    STACKBASE STACKSIZE   COMMAND
[server] dump_task:      0      0   0xff870c58     69600   Idle Task

Signed-off-by: chao an <anchao@xiaomi.com>
2023-01-30 20:07:04 +08:00
Masayuki Ishikawa
2ae8a9600f boards: imxrt1060-evk: Fix iperf performance for netnsh
Summary:
- Before: iperf -s 94Mbps, iperf -c 0Mbps
- After : iperf -s 94Mbps, iperf -c 93Mbps

Impact:
- Should be none

Testing:
- Tested with iperf and telnet

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2023-01-30 13:25:15 +08:00
Masayuki Ishikawa
7af531f677 boards: sabre-6quad: Add netnsh_wb
Summary:
- This commits adds netnsh_wb which enables write buffers.

Impact:
- None

Testing:
- Tested with iperf (-s 205Mbps, -c 176Mbps) on QEMU-7.1

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2023-01-30 13:25:15 +08:00
liangchaozhong
ade9d39478 make iperf works on SIM platform
Solution:
1. enable iperf on SIM projects
2. enlarge IOB's settings

Signed-off-by: liangchaozhong <liangchaozhong@xiaomi.com>
Signed-off-by: chao an <anchao@xiaomi.com>
2023-01-29 16:20:02 +08:00
Xiang Xiao
adc8cfc2be boards/tlsr82: Enable CONFIG_LIBM since the toolchain doesn't provide libm
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-28 11:30:33 -03:00
Alan Carvalho de Assis
f2b53d7234 Add board config example to test random number generator 2023-01-27 13:16:35 +08:00
Lucas Saavedra Vaz
bd06945de2 boards/xtensa/esp32-lyrat: Set up touch pad interruptions 2023-01-26 14:33:08 -03:00
Xiang Xiao
267e80a9e7 boards: Update Administrator tea result to 8Tv+Hbmr3pLVb5HHZgd26D
continue the change: https://github.com/apache/nuttx/pull/6843

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-26 17:11:07 +02:00
Petro Karashchenko
af55d894f9 boards/spresense: remove BOARDIOC_SDCARD_SETNOTIFYCB ioctl
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-01-26 23:08:28 +08:00
duduita
2fc1192019 Add initial support to Meadow F7Micro board 2023-01-26 18:05:21 +08:00
Petro Karashchenko
a58e73add8 arch/arm/tiva: simplify TIVA_CAN option usage
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-01-26 10:26:09 +08:00
Petro Karashchenko
bd7cb522a1 nuttx: use TABs instead of spaces in Kconfig files
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-01-26 10:26:09 +08:00
Xiang Xiao
926e296d48 boards/jupiter-nano: Remove sam_ostest.c
since fpu special handling is done in arch common code now

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-25 23:01:20 +02:00
Xiang Xiao
99e89809d7 board: Pass the assertion expression to board_crashdump too
continue the follow work:
commit 43e7b13697
Author: Xiang Xiao <xiaoxiang@xiaomi.com>
Date:   Sun Jan 22 19:31:32 2023 +0800

    assert: Log the assertion expression in case of fail

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-25 16:00:48 -03:00
Xiang Xiao
d7ee492fc4 board/arch: Remove FAR decorator
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-25 13:05:07 +02:00
Xiang Xiao
92d23e7d6d esp32-devkitc/coremark: Fix ci break
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-25 03:50:21 +08:00
Xiang Xiao
299de87e68 tiva/lm3s6965-ek: Remove CONFIG_DEBUG_ASSERTIONS from qemu-protected
to save the code size

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 15:00:19 -03:00
Gustavo Henrique Nihei
1b94806b35 boards/esp32: Remove duplicated MCUboot-related defconfigs
These are basically the same from the esp32-devkitc board. As the
defconfigs do not make use of any board-specific peripheral, there
is no need to duplicate them in every ESP32 board.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-01-24 08:44:22 +09:00