Commit Graph

2854 Commits

Author SHA1 Message Date
pengyiqiang
1c62181b0d boards: adapt LVGL v8 defconfig
Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com>
2023-01-01 10:15:08 -03:00
Lee Lup Yuen
991fd3d887 arm64/pinephone: Fix missing pixels in Frame Buffer Driver
This PR fixes the missing pixels in the rendered output of the Frame Buffer Driver for PINE64 PinePhone.

We fix this by copying the RAM Frame Buffer to itself on Frame Buffer Update `FBIO_UPDATE`, which will refresh the display correctly over DMA / Display Engine / Timing Controller TCON0.

### Modified Files

`boards/arm64/a64/pinephone/Kconfig`: Add requirement for Frame Buffer Update `FB_UPDATE` for PinePhone LCD Display

`boards/arm64/a64/pinephone/src/pinephone_display.c`: Implement Frame Buffer Update `FBIO_UPDATE` by copying the RAM Frame Buffer to itself
2022-12-30 11:05:27 +08:00
田昕
96a45e2c75 sched/misc:add linux-like reboot notifier list
Signed-off-by: 田昕 <tianxin7@xiaomi.com>
2022-12-29 19:18:42 +08:00
Xiang Xiao
d5f729ed25 sched/assert: Dump the global state only when it's a fatal error
and merge assert_end into _assert

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-29 11:50:31 +09:00
Lee Lup Yuen
f9bd04ff19 arm64/pinephone: Add driver for Frame Buffer
This PR adds the Frame Buffer Driver for PINE64 PinePhone. With this driver, NuttX Apps will be able to use the standard Frame Buffer API to render graphics on PinePhone.

`boards/arm64/a64/pinephone/src/pinephone_bringup.c`: Render Test Pattern after calling `up_fbinitialize()` to start the Frame Buffer Driver

`boards/arm64/a64/pinephone/src/pinephone_display.c`: Add Frame Buffer Driver

`boards/arm64/a64/pinephone/src/pinephone_display.h`: Declare new function for rendering Test Pattern

`platforms/arm/a64/boards/pinephone/index.rst`: Add Frame Buffer as supported driver for PinePhone
2022-12-28 23:06:45 +08:00
Lee Lup Yuen
17639af0a8 arm64/pinephone: Add driver for LCD Panel (Xingbangda XBD599)
This PR adds the driver for Xingbangda XBD599 LCD Panel (based on Sitronix ST7703 LCD Controller) on PINE64 PinePhone. This PR also includes:

- The driver for X-Powers AXP803 Power Mgmt IC, which calls our driver for Allwinner A64's Reduced Serial Bus. The PMIC Driver is needed to power on the MIPI DSI Interface for the LCD Panel.

- A simple Display Driver that renders a Test Pattern on the LCD Display at startup. It calls our Allwinner A64 drivers for Display Engine, Timing Controller TCON0 and MIPI Display Serial Interface.

The NuttX Frame Buffer Driver will be implemented in the next PR.

`arch/arm64/src/a64/a64_de.c`, `a64_de.h`: Changed the Frame Buffer pointer to `const` for Allwinner A64 Display Engine

`arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for PWM, for controlling the PWM Backlight

`boards/arm64/a64/pinephone/src/pinephone_bringup.c`: Call `fb_register()` to start the Display Driver at startup

`boards/arm64/a64/pinephone/src/Makefile`: Added LCD Driver, PMIC Driver and Display Driver to Makefile

`boards/arm64/a64/pinephone/Kconfig`: Added the Kconfig option for "PINE64 PinePhone > LCD Display" (`CONFIG_PINEPHONE_LCD`) which enables the LCD Driver, PMIC Driver and Display Driver

`boards/arm64/a64/pinephone/src/pinephone_lcd.c`, `pinephone_lcd.h`: Driver for Xingbangda XBD599 LCD Panel

`boards/arm64/a64/pinephone/src/pinephone_pmic.c`, `pinephone_pmic.h`: Driver for X-Powers AXP803 Power Mgmt IC

`boards/arm64/a64/pinephone/src/pinephone_display.c`: Simple Display Driver that renders a Test Pattern in `up_fbinitialize()`

`boards/arm64/a64/pinephone/configs/lcd/defconfig`: New PinePhone Board Configuration `pinephone:lcd` that enables the LCD Driver (`CONFIG_PINEPHONE_LCD`)

`platforms/arm/a64/boards/pinephone/index.rst`: Added PinePhone Board Configuration `pinephone:lcd` that enables the LCD Driver
2022-12-27 11:44:17 +08:00
Xiang Xiao
7322eafba7 drivers/usb: Fix the typo error in Kconfig
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-25 01:01:26 +02:00
Xiang Xiao
85566fb5d7 boards/esp32c3-devkit: Enable CONFIG_PM_PROCFS to improve the ci coverage
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-24 11:26:48 -03:00
Adam Feuer
a65ecf793c Jupiter Nano support
- Adds support for the Starcat Jupiter Nano
  SAMA5D27C-LD1G board
- https://github.com/starcat-io/jupiter-nano
- this board is very similar to the Microchip/Atmel
  SAMA5D2-Xplained board (sama5d2-xult)
2022-12-24 12:04:33 +08:00
Peter van der Perk
aac9eb57e8 S32K3XX Progmem dataflash with littlefs support 2022-12-24 12:03:56 +08:00
Lee Lup Yuen
c8cf27e848 arm64/a64: Add driver for Reduced Serial Bus
This PR adds the driver for Reduced Serial Bus (RSB) on Allwinner A64 SoC. The RSB Driver will be called by the upcoming Power Mgmt IC Driver for PINE64 PinePhone, to power on the LCD Display.

`arch/arm64/src/a64/Kconfig`: Added the Kconfig option for "A64 Peripheral Selection > RSB" (`CONFIG_A64_RSB`), which enables the RSB Driver

`arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for RSB

`arch/arm64/src/a64/Make.defs`: Added the RSB Driver to the Makefile

`arch/arm64/src/a64/a64_de.c`: Increase PLL Timeout for Allwinner A64 Display Engine

`boards/arm64/a64/pinephone/configs/nsh/defconfig`: Set PinePhone Board Config `CONFIG_BOARD_LOOPSPERMSEC` to the value computed by `calib_udelay`

`arch/arm64/src/a64/a64_rsb.c`, `a64_rsb.h`: RSB Driver for Allwinner A64

`platforms/arm/a64/boards/pinephone/index.rst`: Added RSB as supported peripheral for PinePhone
2022-12-24 12:01:46 +08:00
Ville Juven
c2fa780ed0 boards/lpc17xx/lpc17_40_symtab: Remove ref. to nxsched_get_streams
I don't know how to handle this properly as I don't know what this
symbol table is supposed to do. Most likely the part that uses the
symbol table needs to be patched also...
2022-12-22 20:16:11 +08:00
Neo Xu
1697723b63 sim/config: enable luamodule
Enable existing luamodules: csjon, lfs, lsyslog and luv

Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
2022-12-22 15:26:11 +08:00
Adam Feuer
e57d0312ca Update SAMA5D2-XULT entry point
- in NuttX 11.x and 12.x the nuttx entry point
  for the sama5d2-xult board changed to 0x20008E20
  (from 0x2008040).

  This change updates defconfigs and the README.txt
  to reflect that.

- no code changes
2022-12-22 11:32:28 +08:00
ligd
1544adb548 sim: open CONFIG_SIM_WALLTIME_SIGNAL=y in sim:nsh sim:smp
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-12-21 16:59:56 +09:00
Lee Lup Yuen
64a54d2dfd arm64/a64: Add driver for Display Engine
This PR adds the driver for Display Engine 2.0 on Allwinner A64 SoC. The Display Engine Driver will be called by the upcoming LCD Driver for PINE64 PinePhone.

`arch/arm64/src/a64/Kconfig`: Added the Kconfig option for "A64 Peripheral Selection > DE" (`CONFIG_A64_DE`), which enables the Display Engine Driver

`arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for Display Engine

`arch/arm64/src/a64/Make.defs`: Added the Display Engine Driver to the Makefile

`boards/arm64/a64/pinephone/configs/nsh/defconfig`: Removed Scheduler Debug Info (`CONFIG_DEBUG_SCHED_INFO`) from the PinePhone Board Config, because it garbles the Console Output.

`arch/arm64/src/a64/a64_de.c`, `a64_de.h`: Display Engine Driver for Allwinner A64

`platforms/arm/a64/boards/pinephone/index.rst`: Added Display Engine as supported peripheral for PinePhone
2022-12-21 13:17:34 +08:00
Petro Karashchenko
b107e4f417 nuttx: unify MIN, MAX and ABS macro definition across the code
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-12-21 09:31:28 +08:00
halyssonJr
cdbb670e5d Add support to Franzininho board
rename files ESP32S2-Franzininho to Franzininho-WiFi and remove some scripts previously tested
2022-12-20 19:47:37 -03:00
Peter van der Perk
b5fd0b2381 S32K3XX MR-CANHUBK3 Add protected knsh support 2022-12-19 20:10:34 +08:00
GD32-MCU
659bd495b0 Add i2c driver for gd32f450 MCU 2022-12-17 17:12:26 +08:00
Petro Karashchenko
cc0ee12092 arch/arm/samv7: add ARCH_RAMVECTORS support
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-12-17 13:57:03 +08:00
Gustavo Henrique Nihei
739aca095a risc-v/esp32c3: Prevent double initialization of SHA peripheral
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-16 16:19:47 +02:00
zhangyuan21
632d87ee71 arch: remove up_release_pending function
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2022-12-16 21:29:57 +08:00
Masayuki Ishikawa
548c417858 boards: sabre-6quad: Improve iperf performance
Summary:
- This commit improves iperf performance
- Also, adjusts CONFIG_IDLETHREAD_STACKSIZE

Impact:
- None

Testing:
- Tested with QEMU-7.1

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-12-16 09:49:11 -03:00
Masayuki Ishikawa
492fa5ba19 boards: qemu-armv8a: Enable the ping command for netnsh and netnsh_smp
Summary:
- This commit enables the ping command for netnsh and netnsh_smp

Impact:
- None

Testing:
- Tested with QEMU-7.1

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-12-15 17:07:06 +08:00
Gustavo Henrique Nihei
b6d9d4e92f xtensa/esp32: Fix PSRAM support when Stack Smash protection is enabled
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-15 09:34:15 +08:00
Almir Okato
8f3c425067 xtensa/esp32s3: Enable booting from MCUboot bootloader
Add support for booting from MCUboot bootloader on ESP32-S3.

Signed-off-by: Almir Okato <almir.okato@espressif.com>
2022-12-15 00:42:13 +08:00
Lucas Saavedra Vaz
893b1477ea boards/esp32-lyrat: Add initial touch pad configuration 2022-12-14 22:38:10 +08:00
Peter Bee
80fa70da4e boards/sim: Add nxcamera config
Config which enables nxcamera app and video framework.
Exclude from CI macOS test because macOS does not have V4L2.
(Maybe consider adding it back after porting with avfoundation)

Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
2022-12-14 21:20:27 +08:00
Gustavo Henrique Nihei
ffa6004b5a boards/esp32-devkitc: Disable FPU test for knsh defconfig
FPU test is not supported under Protected Mode.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-14 09:30:51 +09:00
anjiahao
bc0fe0ea16 crypto:add some hardware support
esp32c3: aes hmac-sha1 hmac-sha256
stm32f0l0g0 stm32l1 : aes
sam34: aes
lpc43: aes
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-12-14 02:33:56 +08:00
anjiahao
3d2f0c0e27 crypto:support nuttx /dev/crypto
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-12-14 02:33:56 +08:00
Xu Xingliang
57190efe84 sim/lua: enable luv module by default
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2022-12-13 20:51:47 +08:00
Peter van der Perk
6b3b5751c1 S32K automatically calculate size of periphclocks array 2022-12-13 19:50:01 +08:00
Masayuki Ishikawa
f4c349963a boards: rv-virt: Improve iperf speed for virtio-mmio-net
Summary:
- This commit improves iperf speed for virtio-mmio-net

Impact:
- None

Testing:
- Tested with QEMU-7.1

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-12-13 13:21:35 +08:00
chao an
4d52618128 qemu-armv8a/netnsh: Set iob buffer size to 1514 to improve performance
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-12 16:56:11 +09:00
Xiang Xiao
4a84555d1c arduino-mega2560/nsh: Remove CONFIG_INTELHEX_BINARY
to avoid "avr-objcopy: Bad CPU type in executable" on macOS

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-11 22:41:25 +08:00
Xiang Xiao
2bc780f062 risc-v/esp32c3: Move .gitignore from common/src to common
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-11 22:41:25 +08:00
chao an
61563d6004 risc-v/es32c3: improve passthrough performance by iob offload
Use iob offload model to improve passthrough performance

1. Use iob buffer instead of reserved packet buffer
2. Enable TCP/UDP buffer mode

-------------------------------------------------
|  Protocol      | Server | Client |            |
|-----------------------------------------------|
|  TCP           |    7   |    12  |  Mbits/sec |
|  TCP(Offload)  |   17   |    11  |  Mbits/sec |
|  UDP           |   10   |    16  |  Mbits/sec |
|  UDP(Offload)  |   43   |    28  |  Mbits/sec |
-------------------------------------------------

Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-11 16:19:20 +08:00
Xiang Xiao
563f5f4fa4 Fix Error: board/esp32c3_bringup.c:150:9: error: implicit declaration of function 'board_apds9960_initialize'
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-09 21:10:40 +01:00
Peter Bee
a5a1a68a25 arch/sim: add v4l2 driver for sim
communicate with Linux host v4l2 drivers

Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
2022-12-09 23:37:49 +08:00
Gustavo Henrique Nihei
4ba7ef51c5 risc-v/esp32c3: Add ROMFS files into .gitignore
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-09 23:35:08 +08:00
Gustavo Henrique Nihei
1ced1e9f35 risc-v/esp32c3: Move files shared between boards into a common folder
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-09 11:19:27 +08:00
Gustavo Henrique Nihei
9af5dca7dc risc-v/esp32c3: Refactor and rename linker scripts
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-09 11:19:27 +08:00
chao an
ee72f920a3 esp32c3/nsh: enable dumpstack/backtrace
Dump task stack:
| nsh> ps
|   PID GROUP PRI POLICY   TYPE    NPX STATE    EVENT     SIGMASK   STACK COMMAND
|     0     0   0 FIFO     Kthread N-- Ready              00000000 002016 Idle Task
|     1     1 100 RR       Task    --- Running            00000000 001984 nsh_main
| nsh> dumpstack 0 100
| backtrace| 0: 0x4200764a 0x3fc82d60 0x420000b2 0x42000044
| backtrace| 1: 0x42007e98 0x420036b4 0x4201043c 0x42010450 0x4200cab0 0x42008fec 0x42009294 0x42008454
| backtrace| 1: 0x42007fbe 0x42007f54 0x42006200 0x4200432c
| backtrace| 2: 0x42013ec0 0x420119bc 0x42013abc 0x42006200 0x4200432c

address to line:
| $ riscv64-unknown-elf-addr2line -e nuttx 0x42007e98 0x420036b4 0x4201043c 0x42010450 0x4200cab0 0x42008fec 0x42009294 0x42008454
| nuttx/include/arch/syscall.h:238
| nuttx/sched/semaphore/sem_wait.c:201
| nuttx/sched/sched/sched_waitpid.c:127
| nuttx/sched/sched/sched_waitpid.c:597
| apps/nshlib/nsh_builtin.c:160
| apps/nshlib/nsh_parse.c:543
| apps/nshlib/nsh_parse.c:2736
| apps/nshlib/nsh_session.c:234

Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-09 01:49:48 +08:00
Ville Juven
10ef3900b2 risc-v/qemu-rv: Mark the page table section as NOLOAD
Otherwise the linker will allocate an output section for it, which actually
uses kernel ROM memory for nothing
2022-12-08 21:56:03 +08:00
Ville Juven
9b0e1659ea risc-v/mpfs: Mark the page table section as NOLOAD
Otherwise the linker will allocate an output section for it, which actually
uses kernel ROM memory for nothing
2022-12-08 21:56:03 +08:00
Gustavo Henrique Nihei
ca16e9bbd5 xtensa/esp32s3: Simplify board linker script selection
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-08 21:55:29 +08:00
Gustavo Henrique Nihei
afd95058c0 xtensa/esp32s2: Rename linker scripts into more meaningful names
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-08 21:55:29 +08:00
Gustavo Henrique Nihei
f78c6432d8 xtensa/esp32: Simplify board linker script selection
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-08 21:55:29 +08:00