Commit Graph

2686 Commits

Author SHA1 Message Date
Masayuki Ishikawa
50ad3d62aa boards: esp32-devkitc: Enable to test C++ static object in ELF
Summary:
- This commit enables to test C++ static object in ELF (hello++3)

Impact:
- elf defconfig only

Testing:
- Tested with both QEMU and esp32-devkitc board

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-07-22 21:38:17 +08:00
Xiang Xiao
1d43b4a4eb libc/stdio: Enable LIBC_FLOATINGPOINT by default if ARCH_FPU is enabled
and DEFAULT_SMALL is false

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-07-21 09:53:09 -04:00
Abdelatif Guettouche
4ccedb176e arch/esp32: Re-organise shared functions and options for ESP32 Wireless code
- Introduce the ESP32_WIFI option to replace the broader
ESP32_WIRELESS option.  ESP32_WIRELESS is used by both WIFI and BLE.

 - Move common functions from esp32_wifi_adapter to esp32_wireless.

 - Change the order of including the external libraries to avoid undefined references.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2022-07-20 22:02:28 +03:00
Xiang Xiao
f9e3ef3464 Revert "libc/stdio: enable long long formating by CONFIG_HAVE_LONG_LONG"
This reverts commit b1c72c023c.
2022-07-20 18:06:29 +03:00
raiden00pl
c9ec91a5b5 stm32g071b-disco: add OLED support 2022-07-18 14:14:51 +03:00
raiden00pl
1ca8bf2cdb boards: remove references to STM32xx_SPI_DMA, which is now a hidden option 2022-07-16 11:10:01 +03:00
raiden00pl
9276e41321 b-l072z-lrwan1: use board common logic for ssd1306 2022-07-15 10:22:58 -03:00
raiden00pl
072b2bca45 boards/stm32f0l0g0: add ssd1306 to board common logic 2022-07-15 10:22:58 -03:00
raiden00pl
703e5e4226 boards/stm32f0l0g0: common board logic support 2022-07-15 10:22:58 -03:00
qinwei1
e77b06721b arch: arm64: ARMv8-A support for NuttX
N/A

Summary:

Arm64 support for NuttX, Features supported:

1. Cortex-a53 single core and SMP support: it's can run into nsh shell at
   qemu virt machine.

2. qemu-a53 board configuration support: it's only for evaluate propose

3. FPU support for armv8-a: FPU context switching at NEON/floating-point
  TRAP is supported.

4. psci interface, armv8 cache operation(data cache) and smccc support.

5. fix mass code style issue, thank for @xiaoxiang781216, @hartmannathan @pkarashchenko

Please refer to boards/arm64/qemu/qemu-a53/README.txt for detail

Note:
1. GCC MACOS issue
The GCC 11.2 toolchain for MACOS may get crash while compiling
float operation function, the following link describe the issue
and give analyse at the issue:

https://bugs.linaro.org/show_bug.cgi?id=5825

it's seem GCC give a wrong instruction at certain machine which
without architecture features

the new toolchain is not available still, so just disable the MACOS
cibuild check at present

Signed-off-by: qinwei1 <qinwei1@xiaomi.com>
2022-07-14 09:35:49 -04:00
Gustavo Henrique Nihei
68c722c051 xtensa/esp32: Build patched IDFBoot for Protected Mode support
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-14 14:57:57 +08:00
Gustavo Henrique Nihei
27fc3c959d xtensa/esp32: Configure the PID controller for privilege separation
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-14 14:57:57 +08:00
Gustavo Henrique Nihei
76acfef5ec xtensa/esp32: Add support for Protected Mode
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-14 14:57:57 +08:00
Gustavo Henrique Nihei
83442aa70c boards: Convert DEBUGASSERT(false) into more intuitive DEBUGPANIC()
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-14 12:08:45 +08:00
Gustavo Henrique Nihei
9695659620 boards: Fix typo in "register" word
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-13 22:57:19 +03:00
Xiang Xiao
b1c72c023c libc/stdio: enable long long formating by CONFIG_HAVE_LONG_LONG
and remove CONFIG_LIBC_LONG_LONG option to simplify the usage.
note: the size will increase 668
before change:
   text    data     bss     dec     hex filename
 168440     348    4480  173268   2a4d4 nuttx

after change:
   text    data     bss     dec     hex filename
 169108     348    4480  173936   2a770 nuttx

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-07-13 09:50:38 -03:00
Gustavo Henrique Nihei
cc0ea2689c esp32c3-devkit: Change output section identifiers to satisfy GDB
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-12 10:56:59 +08:00
Gustavo Henrique Nihei
c462ea6088 esp32c3-devkit: Improve documentation related to Protected Mode
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-12 10:56:59 +08:00
Gustavo Henrique Nihei
686c9f0ad7 esp32c3-devkit: Use prebuilt bootloader binaries on knsh defconfig
After #6400 the prebuilt bootloader may be used for loading the NuttX
images when BUILD_PROTECTED is enabled.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-12 10:56:59 +08:00
Abdelatif Guettouche
6de170b154 boards/xtensa: Remove outdated information.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2022-07-12 01:10:31 +08:00
Masayuki Ishikawa
2dfe88d759 boards: sabre-6quad: Add netknsh/defconfig
Summary:
- This commit adds sabre-6quad:netknsh config

Impact:
- None

Testing:
- Tested with qemu-6.2

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-07-11 09:32:52 -03:00
raiden00pl
2192b8df2b boards: add initial support for stm32g071b-disco board 2022-07-10 21:02:23 -03:00
Xiang Xiao
76ccbc9a73 Fix warning: (NET_TCP_NO_STACK && NET_USRSOCK_TCP) selects NET_TCP which has unmet direct dependencies (NET && SCHED_WORKQUEUE)
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-07-11 02:17:22 +08:00
raiden00pl
b3e11b605a boards: add initial support for stm32l0538-disco 2022-07-09 23:37:33 +08:00
Alan Carvalho de Assis
cd3e93ef17 esp32s3-devkit: Add support to ST7735 SPI LCD 2022-07-09 01:36:41 +08:00
Huang Qi
2e9fa4586b boards/sim/vncserver: Enable LPWORK to fix warning
Fix:
```
warning: (NET_TCP_NO_STACK && NET_USRSOCK_TCP) selects NET_TCP which has unmet direct dependencies (NET && SCHED_WORKQUEUE)
```

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-07-08 13:28:34 +08:00
Nathan Hartman
849f760b77 Fix various typos 2022-07-08 02:15:54 +08:00
curuvar
aa6ec6518c Added ADC to RP2040 2022-07-07 12:45:28 -03:00
Masayuki Ishikawa
7307b8b6d5 boards: stm32f4discovery: Add iperf to rndis/defconfig
- NOTE: This commit also removes CONFIG_HOST_WINDOWS=y

nsh> iperf -c 10.0.2.15
       IP: 10.0.2.20

 mode=tcp-client sip=10.0.2.20:5001,dip=10.0.2.15:5001, interval=3, time=30

           Interval         Transfer         Bandwidth

   0.00-   3.01 sec    2211840 Bytes    5.88 Mbits/sec
   3.01-   6.02 sec    4423680 Bytes    5.88 Mbits/sec
   6.02-   9.03 sec    6651904 Bytes    5.92 Mbits/sec
   9.03-  12.04 sec    8863744 Bytes    5.88 Mbits/sec
  12.04-  15.05 sec   11091968 Bytes    5.92 Mbits/sec
  15.05-  18.06 sec   13303808 Bytes    5.88 Mbits/sec
  18.06-  21.07 sec   15532032 Bytes    5.92 Mbits/sec
  21.07-  24.08 sec   17743872 Bytes    5.88 Mbits/sec
  24.08-  27.09 sec   19972096 Bytes    5.92 Mbits/sec
  27.09-  30.10 sec   22183936 Bytes    5.88 Mbits/sec
   0.00-  30.10 sec   22183936 Bytes    5.90 Mbits/sec

nsh> iperf -s
       IP: 10.0.2.20

 mode=tcp-server sip=10.0.2.20:5001,dip=0.0.0.0:5001, interval=3, time=0
accept: 10.0.2.15,59072

           Interval         Transfer         Bandwidth

   0.00-   3.01 sec    1780056 Bytes    4.73 Mbits/sec
   3.01-   6.02 sec    3566544 Bytes    4.75 Mbits/sec
   6.02-   9.03 sec    5350888 Bytes    4.74 Mbits/sec

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-07-07 11:40:33 +03:00
curuvar
178ba6fbb4 Add ws2812 bringup logic to all RP2040 boards. 2022-07-07 12:33:25 +08:00
Adam Kaliszan
caf92cdadf Esp32 lilygo tty t5v2 bugfix
E-ink initialization failed because small bug in the code (just 5 missing chars
2022-07-01 20:02:56 +08:00
curuvar
feb5c5307a fixed up defconfig files. 2022-06-30 22:13:49 -07:00
curuvar
0c3db448bb Added Adafruit Feather RP2040, Adafruit KB2040 and Added neopixel driver to support RP2040 2022-06-30 22:13:49 -07:00
Sergey Nikitenko
4285274c31 New stm32wb chip family 2022-07-01 12:13:58 +08:00
Adam Kaliszan
fafe91cec6 Nucleo Wl55JC board supports E-ink display
All works
SPI pinouts is arduino compatibile
Additional lines for display are configurable using make menuconfig
2022-06-30 15:36:25 +08:00
Gustavo Henrique Nihei
30636b3c97 esp32s3-devkit: Add support for BMP180 pressure sensor
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-06-30 00:32:17 +03:00
Gustavo Henrique Nihei
036e3375e8 esp32s3-devkit: Add support for I2C chardev driver
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-06-30 00:32:17 +03:00
Gustavo Henrique Nihei
43685aefc8 esp32s2-saola-1: Add support for BMP180 pressure sensor
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-06-30 00:32:02 +03:00
Gustavo Henrique Nihei
01b3ddd22f esp32s2-saola-1: Add support for I2C chardev driver
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-06-30 00:32:02 +03:00
Gustavo Henrique Nihei
31cddc922c xtensa/esp32s2: Sync GPIO driver implementation with ESP32-S3
Sync driver interfaces, also fixes the handling of special pin value for
esp32s2_gpio_matrix_in and esp32s2_gpio_matrix_out functions

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-06-30 00:10:41 +08:00
Adam Kaliszan
7e6d93da4d Support for 2.13 inch display v2 2022-06-28 23:41:11 +08:00
Adam Kaliszan
7df798991c Esp32 lilygo t5v2 fixed Data/Command line support. 2022-06-28 09:34:17 -03:00
zouboan
00e8e4fa28 boards/stm32f4discovery: add setup of pwm capture device
drivers/timers/capture.c: add support of pwm capture driver
2022-06-28 10:35:43 +08:00
Nimish Telang
4afd25b567 this flag is meaningless for the linker 2022-06-27 20:03:03 -03:00
Andrey
c6c0baa233 Added configuration files for usinf BMP280 with ESP32-DevkitC 2022-06-26 11:36:08 +03:00
Satoshi Togawa
667afb3b91 sama5: add config SAMA5_SYSTEMRESET in arch/arm/src/Kconfig
SAMA5D2 and SAMA5D4 does not support external reset.
Some SAMA5 board's Kconfig contain item SAMA5_SYSTEMRESET, but it is better in arch/arm/src/Kconfig.
2022-06-25 12:03:15 +08:00
Alan Carvalho de Assis
429c474aff esp32-devkit: As suggest by Gustavo, remove mmcsdspi
ESP32-Devkit doesn't have MMC/SD slot to put a card and it is basically
the same defconfig submitted to esp32-wrover-kit board that has that slot.
2022-06-24 21:32:40 -03:00
Alan Carvalho de Assis
d8e95284cb esp32: Add mmcsdspi config 2022-06-24 21:32:40 -03:00
Alan Carvalho de Assis
87a2f35c2c esp32: Remove hard-coded SPI port for MMC/SD SPI 2022-06-24 21:32:40 -03:00
curuvar
412539e66c Added PWM support to rp2040 2022-06-23 10:17:40 -03:00
curuvar
75facdee72 Added PWM support for rp2040 2022-06-23 10:17:40 -03:00
Huang Qi
9481456fde risc-v/esp32c3: Implement up_perf_xxx API
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-06-21 21:35:22 +08:00
Michael Jung
9140693567 Add lcd_dev_s pointer to lcd_planeinfo_s
In order to support multiple LCD instances per board, add a pointer from
lcd_planeinfo_s to the lcd_dev_s which it belongs to.  Also enhance the
putrun, getrun, putarea and getarea methods to pass through the
lcd_dev_s pointer to the respective device driver.

Port all LCD device drivers to this lcd_planeinfo_s extension.

Enhance SSD1306 driver to support multiple LCDs.

Signed-off-by: Michael Jung <michael.jung@secore.ly>
2022-06-21 21:33:23 +08:00
Richard Tucker
f68a5f0913 boards/risc-v/litex/arty_a7: add netnsh defconfig 2022-06-21 12:06:37 +03:00
chao.an
fbddae8813 wireless/bcm43xxx: add customized MAC address support
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-06-19 10:13:23 +08:00
Adam Kaliszan
615a296b30 Eps32 Lilygo t5v2 BSP
E-ink display is working
2022-06-18 08:03:45 +03:00
Jukka Laitinen
1c8a661c9f boards/risc-v/mpfs/m100pfsevp/include/board_liberodefs.h: Update memory initialization parameters
Sync some of the AXI configuration and DDR training parameters with the manufacturer's
defaults.

The TIP_CFG parameter correction helps with DDR training failures on some individual boards
The AXI end address values fix early random crash in power-on boot on some individual boards

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2022-06-17 15:40:21 +08:00
Alan Carvalho de Assis
faa1c3a74c esp32s3: Add basic support to ESP32-S3-EYE 2022-06-16 17:20:32 +03:00
Abdelatif Guettouche
db8b32cb07 boards/esp32: Increase the NTP deamon stack size as it was overflowing.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2022-06-15 13:07:28 -03:00
Eero Nurkkala
5683e020e8 risc-v/mpfs: update clock configuration parameters
Update PLL configuration parameters to match the values provided
by the vendor.

Also remove extra call to mpfs_pll_config() as it's already called
at mpfs_clockconfig().

Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2022-06-15 21:29:45 +08:00
Michał Łyszczek
4d4566e9ed nucleo-wl55jc: add partition table support for progmem FLASH
This patch adds working integration of progmem FLASH. User can partition
internal FLASH memory to up to 4 partitions and use any combination of
raw, nxffs, smartfs and mtd_config filesystems (unless there are other
limitations like nxffs supports only single instance).

Support for dual CPU is added to Kconfig to not overwrite CPU2 program code.

Code guards user to not allocate more memory than there is on FLASH, and
warns user if not all FLASH memory is used. Errors will be printed when
user tries to initialize two instances of nxffs or mtd_config filesystems.

Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
2022-06-15 20:29:17 +08:00
Michał Łyszczek
4e5d8aca3d nucleo-wl55jc: add buttons and gpio interrupt support
This patch adds to the nucleo-wl55jc previously implemented EXTI support.
Button support with nuttx's button driver is added.

I've written small example to show how to use GPIO EXTI. B3 button can be
used (selectable via Kconfig) to toggle Red LED.

I've added new defconfig for demo purposes. I've included there config
and enabled example programs that are meant to demonstrate functions of
the board and does not really have a place in real world project. Like
Red LED can be toggled with B3 button, or LED example that flashes LEDS,
or button example to show which button has been pressed.

Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>

--
v1 -> v2:
Suggested by: Petro Karashchenko
- Change (1 << 0) to (1 << BUTTON1_BIT (and similar)

v2 -> v3:
- Fix invalid BUTTON3_BIT value

v3 -> v4:
Suggested by: Petro Karashchenko
- Change 0/1 to false/true
2022-06-13 20:21:20 +08:00
Gustavo Henrique Nihei
5805ad3954 risc-v/esp32c3: Disable access to invalid memory regions using MPU
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-06-11 01:55:46 +08:00
Ville Juven
16286081e1 risc-v/mpfs: Move the entry point to .start section
Remove the object linkage and use an explicit .start section
2022-06-10 20:18:23 +08:00
Eero Nurkkala
39d389545e risc-v/mpfs: usb: add composite support
This provides USB composite (CDC/ACM and Mass Storage) support
for mpfs board. In addition, a number of USB fixes are included:

 - Support for Setup Out packets
 - Proper support for larger than packet size writes
 - Finishing setup packets properly

Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2022-06-09 20:44:40 +08:00
Abdelatif Guettouche
c23699be60 esp32c3-devkit/knsh: Enable CONFIG_RAW_BINARY to convert the ELF file.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2022-06-08 20:16:00 +08:00
Michał Łyszczek
f643edbe41 boards/nucleo-wl55jc: add new board
This patch includes bare minimum support for nucleo-wl55jc board.
It compiles and nsh shell is working properly on virtual com port
over USB. 3 onboard leds with userled driver are working.

Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
2022-06-07 23:20:02 +08:00
wangbowen6
af87921eda arm/tlsr82: gpio driver bug fix and optimize.
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-06-07 22:26:36 +08:00
Xiang Xiao
5509f8f4ba arch/x86: Fix the Kconfig warning
arch/x86/Kconfig:28:warning: choice value used outside its choice group
arch/x86/Kconfig:29:warning: defaults for choice values not supported

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-07 12:43:11 +09:00
Jeonghyun Kim
4058f01faf Correct code formatting 2022-06-07 03:20:57 +08:00
Jeonghyun Kim
f53792fea0 board: nucleo-l432kc: Add spi driver registering function and Make it is called on appinit. 2022-06-07 03:20:57 +08:00
Jeonghyun Kim
1717ffdb38 chip: stm32l4: Register spi character driver when both spi port and driver available 2022-06-07 03:20:57 +08:00
Jeonghyun Kim
f7295dd434 board: nucleo-l432kc: Add missing TIM1 CH3, CH4 pin definition 2022-06-07 03:20:57 +08:00
Hidenori Matsubayashi
cbcc748985 Fix wrong path in README for RISC-V
Signed-off-by: Hidenori Matsubayashi <hidenori.matsubayashi@gmail.com>
2022-06-05 16:05:40 +08:00
YAMAMOTO Takashi
375a64fed6 esp32-devkitc:wamr_wasi_debug: pin WAMR version
The "main" branch occasionally got broken.
It isn't nice to break our (nuttx's) CI every time it happens.
2022-06-04 01:05:45 +08:00
Alin Jerpelea
3366f1fb35 boards: spresense: defconfig: enable ISX019 camera driver
Enable the second camera driver for Spresense board

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-05-31 19:52:33 +08:00
Alin Jerpelea
72f399e052 drivers: video: add isx019 camera sensor
The driver is provided by Spresense SDK

ISX019 has the DOL-HDR feature, which combines images with different exposure so that
both bright and dark data of high-contrast subject can be viewed at the same time.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-05-31 19:52:33 +08:00
SPRESENSE
a25ac08774 boards: cxd56xx: Change pin initialization timing for camera
Change pin initialization timing for camera from board power on to camera device
power on for the following purposes.
- avoid unnecessary power consumption
- Make the corresponding pins available for other uses when camera is not in use
2022-05-30 20:38:47 +03:00
wangbowen6
360e319959 arm/tlsr82: ble performance optimize and problems solve.
RF and system timer interrupt are used for ble.

tlsr82_flash.c:
1. BLE will loss packets during flash operation beacause the interrupt
   is disabled and the operation take too long (especially erasing,
   about 100ms), so allow RF and system timer interrupt during flash
   operation;
2. Add sched_lock()/sched_unlock() to avoid the task switch in ble and
   system timer interrupt;

flash_boot_ble.ld:
3. Because of 1, the code executes in RF and system timer interrupt
   must be in ram to avoid bus error. The sem_post() will be called and
   const variable g_tasklisttable will be accessed in RF and system
   timer interrupt handler;
4. To improve the performance, copy some frequently called function to
   ram as well, such as: sem_take(), sched_lock(), sched_unlock(),
   some lib functions, some zephyr ble functions and some tinycrypt
   functions;
5. The RF and system timer interrupt handler will call some libgcc
   functions, so copy all the libgcc functions to ram exclude _divdi3.o,
   _udivdi3.o and _umoddi3.o;

tlsr82_serial.c
6. Make up_putc() be thread safe, add enter/leave_critical_section() in
   function uart_send_byte();

tc32_doirq.c
7. Increase the RF and system timer interrupt response priority;

Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-05-30 19:52:38 +08:00
Xiang Xiao
56e8bb1759 boards: Remove the unnessary CONFIG_SCHED_LPWORK=y from defconfig
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-28 18:41:51 +03:00
Xiang Xiao
7ec6b4c7dd Change dpends on SCHED_[L|H]PWORK to SCHED_WORKQUEUE
since the code could map the unsupported work to the
supported one and remove select SCHED_WORKQUEUE from
Kconfig since SCHED_[L|H]PWORK already do the selection

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-28 18:41:51 +03:00
zhanghongyu
3f8b71924f tcp: move wd_timer from wifi driver to tcp stack
Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
2022-05-28 16:29:51 +08:00
klmchp
6bd2d172b0 Fix sama5d2 Kconfig errors and add missing pin definitions
1.Fix sama5d2 Kconfig. 2. Add missing pin definitions of sama5d2-xult board for sam_emacb and sam_lcd drivers.
2022-05-28 14:41:15 +08:00
Ville Juven
5782fc46f5 mpfs/knsh: Add C++ support
Increase the kernel stack size to 2K because it overflows when executing
dtors.
2022-05-27 09:14:49 -03:00
YAMAMOTO Takashi
864f43b562 esp32*: Disable CONFIG_RAW_BINARY
Because it uses the same filename as esp32 Config.mk. (nuttx.bin)
2022-05-27 13:41:51 +03:00
Oki Minabe
f0fb530eaa arch: imx6: add support kernel build and smp
Summary:
- add support BUILD_KERNEL and SMP for imx6
- prepare page tables of cpu1,2,3
- add sabre-6quad:knsh_smp config

Impact:
- imx6

Testing:
- getprime, smp on sabre-6quad:knsh_smp w/ qemu

Signed-off-by: Oki Minabe <minabe.oki@gmail.com>
2022-05-27 01:31:58 +08:00
Alan Carvalho de Assis
d4b0fc9eb4 xtensa/esp32s3: Add basic support to SPI
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
Co-authored-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-05-25 16:10:29 -03:00
Ville Juven
2d57694855 esp32:wamr_wasi_debug: Remove CONFIG_SCHED_ONEXIT
This file got merged just before merging the patch that removes this
config from the kernel, this cleans it up
2022-05-25 13:44:13 +02:00
Ville Juven
5800dd2af5 boards/xxx: Remove CONFIG_SCHED_ATEXIT/ONEXIT from all defconfigs 2022-05-25 15:28:43 +08:00
YAMAMOTO Takashi
1b9694ab98 esp32-devkitc: Add an example config wamr + wasi 2022-05-25 14:47:16 +08:00
Gustavo Henrique Nihei
b4392f7323 xtensa/esp32: Fix leak of semaphores created by Wi-Fi kernel thread
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-05-25 09:46:30 +09:00
Gustavo Henrique Nihei
18d74dbea0 risc-v/esp32c3: Fix leak of semaphores created by Wi-Fi kernel thread
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-05-25 09:46:30 +09:00
Gustavo Henrique Nihei
b2d77c0e9c Revert "risc-v/esp32c3: Use onexit to free thread private semaphore"
This reverts commit f5eaf82c93.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-05-25 09:46:30 +09:00
Eero Nurkkala
3ea7d4bab4 risc-v/mpfs: amend OpenSBI to utilize IHC
Linux kernel uses M-mode trap for handling Inter-Hart Communication (IHC).
This patch provides all the required functionalities for this purpose.
Previously, HSS bootloader was required. Now, NuttX is run as the
bootloader providing OpenSBI vendor extensions instead. This setup has
been tested on the following configuration:

 - Hart 0 has NuttX in bootloader mode with OpenSBI
 - Hart 1 unused
 - Hart 2 has NuttX configured at 0xa2000000
 - Hart 3 has U-boot / Linux kernel (at 0x80200000)
 - Hart 4 has U-boot / Linux kernel (at 0x80200000)

Upon startup, NuttX on hart 0 will initialize SD-card driver, loads
the hart 2 NuttX from the SD-card and loads the U-boot to 0x80200000.
Also the nuttx.sbi -binary is loaded from SD-card into address 0x80000000,
which is also marked as reserved area in the Linux kernel device tree (for
the chuck 0x80000000 - 0x80200000).

Hart 2 NuttX waits until Linux kernel (IHC master) is started. After the
initial handshake, RPMsg / virtIO bus along with the IHC may be used for
proper AMP mode.

Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2022-05-24 03:25:37 +08:00
wangbowen6
200109fd28 arm/tlsr82: optimize the adc driver.
1. Add vbat mode for chip internal voltage sample;
2. Add adc channel config;
3. Using DFIFO2 to get the sample value, follow telink sdk.
4. Add calibration function and config;

Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-05-22 23:10:06 +08:00
Karel Kočí
2f03b42bfc boards: arm: kl: keep cfmconfig sections in linker script
This makes sure that this section is present even if LTO is enabled.
2022-05-21 00:03:03 +08:00
Xiang Xiao
1067b6afc9 boards/sim: Remove the unnecessary CONFIG_SIM_M32
to enable build on macOS

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-19 23:23:01 +03:00
Xiang Xiao
ce7113387b board/sim: Enable hellocxx in loadable config
to test the support of C++ ELF binary

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-19 23:23:01 +03:00
Xiang Xiao
b30e0a26ef Move "-nostartfiles -nodefaultlibs" from Make.defs to Toolchian.defs
and replace "-nostartfiles -nodefaultlibs" with "-nostdlib"

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-18 08:26:02 -04:00
Gustavo Henrique Nihei
4f31c89963 esp32c3-devkit: Rename linker script to indicate use for Flat mode
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-05-18 11:43:52 +08:00
Gustavo Henrique Nihei
c778f35f08 risc-v/esp32c3: Add support for Protected Mode
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-05-18 11:43:52 +08:00
Adam Kaliszan
fb3d080fd1 NucleoF401RE Oled
Stm NucleoF401RE supports SSD1306 oled display on SPI bus.
2022-05-16 11:43:28 -03:00
Xiang Xiao
5958d3ac62 risc-v: Move "LDFLAGS += -melf32lriscv" from Make.defs to Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-16 11:17:08 +03:00
Xiang Xiao
f5dd839879 boards/arm: Remove "LDFLAGS += -g" whichi is already added by Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-16 11:17:08 +03:00
Xiang Xiao
1f920e55d3 Move warning option from Make.defs to Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-15 15:40:35 +03:00
Xiang Xiao
8b7c5b039d arch: Move -fsanitize=kernel-address to ARCHOPTIMIZATION
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-15 15:40:35 +03:00
Xiang Xiao
4f090eb7fd arch/sparc: Move toolchain macro from board's Make.defs to Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-15 15:40:35 +03:00
Xiang Xiao
21188ce37e boards/nrf52: Remove toolchain macro which is already defined in Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-15 15:40:35 +03:00
Xiang Xiao
468007307c boards/nrf52: Remove ARCHCCVERSION/ARCHCCMAJOR which isn't used
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-15 15:40:35 +03:00
Xiang Xiao
51cf7ba05a Remove FAR from arm/risc-v/xtensa/sim/x86
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-15 13:55:58 +03:00
Masayuki Ishikawa
dc2a01e75a boards: rv-virt: Add knsh64 related files
Summary:
- This commit adds knsh64 related files

Impact:
- None

Testing:
- Tested with qemu-6.2

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-05-13 04:14:01 +08:00
Eero Nurkkala
77e36d1acc risc-v/mpfs: introduce IHC driver
This provides an example of Asymmetric Multiprocessing (AMP). The
master from Linux sends pings that this NuttX echoes back. The system
uses RPMsg from OpenAMP.

The Inter-Hart Communication module is present in the vendor's software
stack with the tag "2021.11". The software is present on github at the
polarfire-soc project. The following conditions must be met:

 1. FPGA programmed with 2021.11 software
 2. HSS (Vendor bootloader) with 2021.11 software
 3. U-boot and Linux kernel from 2011.11 software

Currently the IHC works as a slave only on the hart number 4.

On the NuttX side, this patch uses rptun that incorporates rpmsg and
virtio. If it used only rpmsg and virtio, the future maintenance would
likely be much heavier. Using rptun also simplifies many things.

Upon success, the master side from Linux may issue an example test:

root@icicle-kit-es-amp:/opt/microchip/amp/rpmsg-pingpong# ./rpmsg-pingpong

However, the rpmsg-pingpong.c (compiled on target with gcc), may need to
be modified as seen below to match the device id:
 - char *rpmsg_dev="virtio0.rpmsg-amp-demo-channel.-1.0";
 + char *rpmsg_dev="virtio0.rpmsg-amp-demo-channel.-1.1024";

This work uses a separate linker script. Due to a bug yet unknown to date,
a small NuttX, when loaded by the vendor HSS bootloader, will cause the
Linux kernel to hang at boot. Thus, the binary size is increased with
a section 'filler_area' whose only purpose is to increase the image size
so that the Linux kernel will boot up.

Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2022-05-12 22:56:12 +08:00
wangbowen6
28684f24b7 arm/tlsr82: pwm driver optimize and add pulse count support.
1. add pulse count support for pwm0;
2. add more detailed config for pwm;
3. pwm configuration and start process optimize;
4. tlsr82/Kconfig format;

Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-05-11 13:15:44 +03:00
Xiang Xiao
06e36f6a13 boards/b-l475e-iot01a: Fix selects WL_SPIRIT which has unmet direct dependencies (DRIVERS_WIRELESS && ALLOW_BSD_COMPONENTS)
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-11 17:39:33 +09:00
Masayuki Ishikawa
9af903dcf0 boards: lm3s6965-ek: Remove CONFIG_TIVA_ETHERNET from qemu-kostest
Summary:
- The configuration is no longer needed because Kconfig has
  been fixed in the previous commit

Impact:
- None

Testing:
- Tested with QEMU

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-05-11 15:09:34 +08:00
wangbowen6
73f7cc5855 tlsr82: first commit of telink tlsr82xx chip port.
tlsr82: first commit of telink tlsr82xx chip port.

 - tc32 archtecture context switch;
 - tc32 backtrace;
 - timer, uart, pwm, gpio, adc driver;
 - flash, watchdog driver;
 - uart txdma/rxdma;
 - spi console driver;
 - add board bringup and reset;

Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-05-09 12:33:39 +08:00
Zou Hanya
acfbd6cf6f nucleo-g474re: Add Nucleo G474RE bord suport
based on boards/arm/stm32/b-g474e-dpow1 2022-05-01 aeb9c5d822
2022-05-09 10:34:40 +08:00
okayserh
2696aee11d Fixed the bug that prevented the code from working in uninitialized
state (wrong I2C write size). Some improvements of the code.
2022-05-09 10:34:29 +08:00
Xiang Xiao
d9a519444c boards/arm: Fix undefined reference to `arm_netinitialize'
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-08 16:58:50 +03:00
okayserh
476770e9fd Added functionality for Audio support with the STM32F746 Discoboard
In particular additions to wm8994.h and filled functionality into
wm8994.c.

Resolved a few more remarks from review.
2022-05-07 11:52:51 -03:00
Xiang Xiao
75bf7be0c3 boards/arm: Enable gcov in pimoroni-tiny2040:nsh
to improve the ci coverage

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-06 14:43:57 -03:00
Xiang Xiao
8a6546ab10 boards/sim: Enable gcov in kasan config
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-06 14:43:57 -03:00
Xiang Xiao
eba185b04b boards/sim: Change -fprofile-arcs to -fprofile-generate
to generate more information for profile feedback optimization
and remove -lgcov from STDLIBS since gcc/clang will automatically
add the profile help lirary(triggered by -fprofile-generate).

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-06 14:43:57 -03:00
JacobCrabill
5f82c82e4d boards/stm32h7: Add socketcan config to nucleo-h743zi2 2022-05-06 08:54:58 +02:00
Xiang Xiao
a229e4a399 boards: Remove CONFIG_C99_BOOL8 from all defconfig
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-05 16:23:32 -03:00
Xiang Xiao
bbdbca00c1 libc/assert: let CONFIG_NDEBUG default to !CONFIG_DEBUG_ASSERTIONS
so the user could just change CONFIG_DEBUG_ASSERTIONS in most case

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-04 10:07:34 +03:00
Xiang Xiao
c628529e2d arch/arm: Remove FAR and CODE from board folder(3)
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-03 16:50:52 +03:00
Xiang Xiao
a3c9b413d8 arch/arm: Remove FAR and CODE from board folder(2)
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-03 16:50:52 +03:00
Xiang Xiao
cd001725b7 arch/arm: Remove FAR and CODE from board folder(1)
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-03 16:50:52 +03:00
Xiang Xiao
fead1964cb boards/space: Remove the unneeded XXXEXT definition
these make variable is defined in common place now

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-03 16:48:35 +03:00
Masayuki Ishikawa
0908c67d73 boards: rv-virt: Add support ELF to nsh and nsh64 defconfigs
Summary:
- This commit adds support ELF to nsh and nsh64 defconfigs

Impact:
- None

Testing:
  nsh> mount -t hostfs -o fs=../apps/bin /system/bin
  nsh> hello
  Hello, World!!

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-05-03 13:57:24 +08:00
Masayuki Ishikawa
9b20f97064 boards: rv-virt: Add hostfs support to nsh and nsh64 defconfigs
Summary:
- This commit adds hostfs support to nsh and nsh64 defconfigs

Impact:
- None

Testing:
- Tested with qemu-6.2

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-05-02 19:46:58 +08:00
Ville Juven
a5d49140ea MPFS: Add dummy rofms image
To allow building with ROMFS enabled
2022-05-02 16:13:15 +08:00
Ville Juven
31b916c485 MPFS: Add kernel space mappings
Mappings are done with vaddr=paddr.
- I/O space mapped with two gigapages
- Kernel space mapped to statically allocated page tables. 2MB of kernel
  memory is supported.
- Page pool is mapped to the kernel space, to allow virtual memory access
  for the kernel e.g. to initialize the page memory when it is allocated.
2022-05-02 16:13:15 +08:00
Ville Juven
2287ebcbcf MPFS: Add knsh (CONFIG_BUILD_KERNEL=y)
Re-name the old knsh (CONFIG_BUILD_PROTECTED=y) to pnsh
2022-05-02 16:13:15 +08:00
Masayuki Ishikawa
7b6ac23277 boards: sabre-6quad: Add defconfig for libcxx
Summary:
- This commit adds defconfig for libcxx

Impact:
- None

Testing:
- Tested with QEMU

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-05-02 10:24:16 +03:00
Masayuki Ishikawa
c5af689180 boards: sabre-6quad: Fix dramboot.ld for libcxx
Summary:
- I noticed that cxxtest does not work correctly.
- Finally, I found that initializers for c++ is not called.
- This commit fixes this issue

Impact:
- None

Testing:
- Tested with cxxtest (defconfig will be added later)

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-05-02 10:24:16 +03:00
Xiang Xiao
f77a0ec7fa arch: Move -finstrument-functions from Make.defs to Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-01 23:54:15 +03:00
Xiang Xiao
1fde7e17bb arch: Move -fstack-protector-all from Make.defs to Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-01 23:54:15 +03:00
Xiang Xiao
aeb9c5d822 boards: Move -fno-strict-aliasing from Make.defs to Toolchain.defs
and migrate MAXOPTIMIZATION into ARCHOPTIMIZATION

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-01 11:36:41 +03:00
Xiang Xiao
220f1dd6a0 boards: run tools/refresh.sh to normalize defconfig
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-01 09:50:50 +03:00
Xiang Xiao
b12c0a1e31 boards: Remove -std=c++1x from Make.defs
let the implementation of standard library choice what they want

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-29 21:08:14 -03:00
Xiang Xiao
7f91fcdf89 boards/arm: Remove the unneeded C++ config from stm32l4/nucleo-l476rg
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-29 21:08:14 -03:00
Xiang Xiao
94cb0c6072 arch: Move -nostdinc++ to Tooolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-29 21:08:14 -03:00
Ville Juven
d495007943 MPFS: Remove # CONFIG_ARCH_FPU is not set from defconfigs
For some reason # CONFIG_ARCH_FPU is not set also unsets ARCH_FPU
for the .config file, meaning FPU support is not built.
2022-04-27 23:20:51 +08:00
Xiang Xiao
fc16cfaefe Correct the code alignment found in review
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-26 11:34:28 +03:00
Xiang Xiao
8f8ee25a9c boards: Move -g from Make.defs to Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-25 16:23:03 +03:00
Xiang Xiao
e9f5eb0823 boards: Move "-fno-exceptions -fcheck-new" from Make.defs to Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-25 16:22:46 +03:00
Xiang Xiao
25d819253b boards/risc-v: Remove "MAXOPTIMIZATION = -Os" from Make.defs
since it is already defined in Toolchain.defs

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-25 07:58:00 +03:00
Xiang Xiao
75326e563d boards: Move -fno-common from Make.defs to Toolchain.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-25 07:57:29 +03:00
Xiang Xiao
547c85b0ae boards: Switch the elf link script to binfmt/libelf/gnu-elf.ld
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-24 17:02:37 +02:00
Oki Minabe
54508a3798 boards/boardctl: correct boarctl return value
Summary:
- Correct boardctl function's return value
- In case of BOARDIOC_TESTSET, `ret' has 0 or 1 or an error,
  but `ret' is ignored except error.

Impact:
- boardctl return value except errors

Testing:
- custom Cortex-A9 board

Signed-off-by: Oki Minabe <minabe.oki@gmail.com>
2022-04-23 16:25:53 +08:00
Xiang Xiao
5a565e753c pm: Move pm_initialize call from driver_initialize to xxx_pminitialize
since it's too late with the below commit:
ommit a594a5d7a8
Author: chao.an <anchao@xiaomi.com>
Date:   Mon Apr 11 19:44:26 2022 +0800

    sched/init: drivers_initialize() should be late than up_initialize()

    up_initialize
    |
     ->up_serialinit
       |
        ->uart_register  /* ("/dev/console", &CONSOLE_DEV); */

    drivers_initialize
    |
     ->syslog_console_init
       |
        ->register_driver /* ("/dev/console", &g_consoleops, 0666, NULL); */

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-22 14:36:27 +03:00
chao.an
1c8e12406e compile/opt: add config DEBUG_LINK_MAP
Selecting this option will pass "-Map=$(TOPDIR)$(DELIM)nuttx.map" to ld
when linking NuttX ELF. That file can be useful for verifying
and debugging magic section games, and for seeing which
pieces of code get eliminated with DEBUG_OPT_UNUSED_SECTIONS.

Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-22 01:37:23 +08:00
chao.an
64d7326ed5 compile/opt: add config DEBUG_OPT_UNUSED_SECTIONS
Enable this option to optimization the unused input sections with the
linker by compiling with " -ffunction-sections -fdata-sections ", and
linking with " --gc-sections ".

Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-22 01:37:23 +08:00
Jiuzhu Dong
de1c184e6c boards/sim: support rc.sysinit
Follow: http://glennastory.net/boot/sysinit.html

This is first script that init runs is rc.sysinit. This
script does serval initialization tasks about basic service.

The boot sequence currently provided to the board level is:
board_earlyinitialize->
    board_lateinitialize(Peripherals driver, core driver, ...)->
	run rcS script(mount fs, run service) ->
	    board_appinitialize->

After this patch:
The boot sequence currently provided to the board level is:
board_earlyinitialize->
    board_lateinitialize(core driver,...)->
	run rc.sysinit script(mount fs, run core service) ->
	    board_appinitialize(Peripherals driver)->
		run rcS script(run other service)->

So, Peripheral drivers can do more with the file system and
core services.

Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-04-21 12:54:53 +03:00
Alin Jerpelea
69d67c324d boards: sim: Add Apache license to files
In the initial contribution those files were missing the license

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-04-20 21:05:45 +08:00
Alin Jerpelea
fbaa259298 arch: arm: stm32: Add Apache license to files
In the initial contribution those files were missing the license

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-04-20 21:05:45 +08:00
Alin Jerpelea
e85cbb81f9 arch: arm: sama5: Add Apache license to files
In the initial contribution those files were missing the license

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-04-20 21:05:45 +08:00
chao.an
fc3565e9eb arch/z80: Unify the toolchain definition of SDCC for linux and windows
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-19 23:17:27 +08:00
chao.an
2df591b3bb arch/armv7-a/r: Unify the toolchain definition of eabi for linux and windows
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-19 23:17:27 +08:00
chao.an
4a085e1cdb arch/arm/armv6-m: Unify the toolchain definition of eabi for linux and windows
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-19 23:17:27 +08:00
chao.an
2246afcdd8 arch/armv7-m: Unify the toolchain definition of eabi/clang/iar for linux and windows
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-19 23:17:27 +08:00
chao.an
a79bf8c9eb arch/armv8-m: Unify the toolchain definition of eabi/clang for linux and windows
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-19 23:17:27 +08:00
Xiang Xiao
d80c2d7419 arch/arm: Remove all lazy fpu related code
since it is broken and inefficient, and then removed by:
commit dc961baaea
Author: chao.an <anchao@xiaomi.com>
Date:   Thu Apr 14 18:07:14 2022 +0800

    arm/armv7-[a|r]: move fpu save/restore to assembly handler

    Save/Restore FPU registers in C environment is dangerous practive,
    which cannot guarantee the compiler won't generate the assembly code
    with float point registers, especially in interrupt handling

    Signed-off-by: chao.an <anchao@xiaomi.com>

commit 8d66dbc068
Author: chao.an <anchao@xiaomi.com>
Date:   Thu Apr 7 13:48:04 2022 +0800

    arm/armv[7|8]-m: skip the fpu save/restore if stack frame is integer-only

    Signed-off-by: chao.an <anchao@xiaomi.com>

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-19 11:09:36 +03:00
Xiang Xiao
7a0fd8d10f arch/risc-v: Remove FAR from chip and board folder
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-19 00:22:45 +03:00
chao.an
dc2e4b7024 boards/ostest: remove board ostest implement
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-18 22:22:16 +08:00
chao.an
5bdfae66ce arch/arm: export arm_saveusercontext()
rename arm_saveusercontext() -> up_arm_saveusercontext()

Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-18 22:22:16 +08:00
Xiang Xiao
ef1a98dd00 Remove the unneeded void cast
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-17 23:32:05 +03:00
Xiang Xiao
6af167c086 arch/sparc: Remove FAR from chip and board folder
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-17 18:42:38 +03:00
Xiang Xiao
977fa987e2 arch/mips: Remove FAR from chip and board folder
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-17 18:42:38 +03:00
Xiang Xiao
af00e016e9 arch/sim: Remove FAR from chip and board folder
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-17 18:42:38 +03:00
Xiang Xiao
6bc61b5752 arch/xtensa: Remove FAR from chip and board folder
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-17 18:42:38 +03:00
Jan Charvat
6d566e0fda boards/risc-v/esp32c3: ESP32C3 TWAI (CAN) controller config for DevKitM-1.
Signed-off-by: Jan Charvat <jancharvat.charvat@gmail.com>
2022-04-15 22:55:26 +08:00
Jan Charvat
0d9d2f4bf8 boards/risc-v/esp32c3: ESP32C3 TWAI (CAN) controller bringup for DevKitM-1.
Signed-off-by: Jan Charvat <jancharvat.charvat@gmail.com>
2022-04-15 22:55:26 +08:00
Petro Karashchenko
09b3fb25ab drivers: remove unimplemented open/close/ioctl interfaces
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-04-15 16:56:25 +08:00
Xiang Xiao
6041a2f0db boards/esp32_twai: Remove arm_arch.h from comment
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-15 11:50:02 +03:00
Xiang Xiao
382b6d3b6f boards/arm/a1x: Remove the check CONFIG_ARCH_FPU around arm_fpuconfig
forget in below change:
commit df5a8a53ae
Author: Xiang Xiao <xiaoxiang@xiaomi.com>
Date:   Tue Apr 12 03:18:46 2022 +0800

    arch/arm: Move FPU initialization to common place

    Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-14 23:09:42 +03:00
Alan C. Assis
c232be541c Add SPIRAM to ESP32-S2 2022-04-14 22:10:23 +08:00
Huang Qi
1975878835 arch/risc-v: Apply common mtime driver to mtime based chps
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-04-12 12:14:40 +03:00
Lingao Meng
a56199c7dd sim: bt: Add specific bluetooth HCI number id
Add option for attached the local bluetooth device use
specific bluetooth HCI number id.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2022-04-12 15:15:25 +08:00
SPRESENSE
64e5867a8b cxd56/spresense: Add callback mechanism to notice SDCard injection
Add a mechanism to callback to an application to notice the SDCard
status is changed (inserted or ejected).
2022-04-12 07:55:00 +09:00
SPRESENSE
81534df8a3 boards: cxd56xx: Add board function for scd41 sensor driver
Add board function for SCD41 CO2, temperature and humidity sensor driver.
2022-04-12 07:55:00 +09:00
SPRESENSE
771bd8ca17 board/spresense: Add pin selection of ILI934x
Add Kconfig choice for selecting RST and DC pins on ILI934x LCD.
2022-04-12 07:55:00 +09:00
SPRESENSE
22d2ef0bf4 boards: cxd56xx: Make board_late_initialize a weak function
Add a weak_function to the board_late_initialize function so that
it can be replaced by another file, such as a user application.
2022-04-12 07:55:00 +09:00
SPRESENSE
c2e45444ff boards: cxd56xx: Fix an issue i2c tool not working
It caused i2c tool not to work due to i2c uninitializing processing.
Since this process is not necessary in the normal case, we will
move it to the error case.
2022-04-12 07:55:00 +09:00
Xiang Xiao
c235c0fa43 boards/lx_cpu: Enable up_perf API
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-08 21:02:13 -03:00
Xiang Xiao
1f7b49d700 boards/nucleo-h743zi2: Enable up_perf API
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-08 21:02:13 -03:00
Jiuzhu Dong
d87cf8d4ca fs/poll: change format for type pollevent_t
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-04-07 12:14:06 +08:00
yinshengkai
db012687f9 arch/sim: support simulator keyboard devices 2022-04-06 15:26:57 +03:00
Alan C. Assis
b8a9d7da19 esp32: Add board support to TWAI/CANBus 2022-04-06 15:09:46 +03:00
Michael Jung
747da36eae b-u585i-iot02a:nsh: Drop TrustedFirmware-M dependency
Make the nsh defconfig for the b-u585i-iot02a run stand-alone (i.e. not
as a companion that relies on TF-M doing low-level board
initialization).
2022-04-03 23:20:03 +03:00
Michael Jung
9d07559906 b-u585i-iot02a: Fix stdclock initialization
Correct the respective defines to initialize the B-U585I-IOT02A clock
tree correctly by means of stm32_stdclockconfig().
2022-04-03 23:20:03 +03:00
raiden00pl
7403678db7 boards/nucleo-f446re: initialize up_perf 2022-04-02 10:34:35 -03:00
Ville Juven
c15b6701ce RISC-V: Implement option to run NuttX in supervisor mode (S-mode)
- Add config "ARCH_USE_S_MODE" which controls whether the kernel
  runs in M-mode or S-mode
- Add more MSTATUS and most of the SSTATUS register definitions
- Add more MIP flags for interrupt delegation
- Add handling of interrupts from S-mode
- Add handling of FPU from S-mode
- Add new context handling functions that are not dependent on the trap
  handlers / ecall

NOTE: S-mode requires a companion SW (SBI) which is not yet implemented,
      thus S-mode is not usable as is, yet.
2022-04-01 16:19:42 -03:00
田昕
4071f460b2 boards/boardctl:common boardctl to read reset cause.
Signed-off-by: 田昕 <tianxin7@xiaomi.com>
2022-03-30 09:59:10 +03:00
Gustavo Henrique Nihei
e1f28c19c2 arch/arm: Make CXX exception and RTTI depend on Kconfig options
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-30 11:19:29 +08:00
Gustavo Henrique Nihei
7b4d9f0afd esp32[s2/s3/c3]: Add defconfigs for testing C++
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-30 11:19:29 +08:00
Gustavo Henrique Nihei
06d0a9f1ad xtensa|risc-v: Make CXX exception and RTTI depend on Kconfig options
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-30 11:19:29 +08:00
Gustavo Henrique Nihei
a0617177e8 risc-v/esp32c3: Fix inclusion of C++ constructors/destructors table
RISC-V GCC is configured with --enable-initfini-array so it emits an
.init_array section instead of .ctors

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-30 11:19:29 +08:00
Lee Lup Yuen
416ec42077 riscv/esp32c3: Remove check for LCD driver
## Summary

`esp32c3_spi2_cmddata()` implements SPI Cmd/Data `SPI_CMDDATA()` for only 3 LCD drivers: ST7735, ST7789 and GC9A01.

This patch removes the check for LCD drivers, so that SPI Cmd/Data will work for all LCD drivers.

More details: https://github.com/apache/incubator-nuttx/pull/5898

## Impact

This change impacts LCD drivers that call `SPI_CMDDATA()`.

Previously `SPI_CMDDATA()` would fail with `ENODEV` for LCD drivers other than ST7735, ST7789 and GC9A01.

After patching, `SPI_CMDDATA()` will work correctly with all LCD drivers.

## Testing

This is a minor patch so no testing is needed.
2022-03-29 23:09:57 -03:00
Richard Tucker
dc93c309b5 boards/risc-v/litex/arty_a7: update README to include building in LITESDCARD peripheral 2022-03-30 02:35:27 +08:00
Richard Tucker
3939575d7c boards/risc-v/litex/arty_a7: add SDCARD support for the Arty_A7 board 2022-03-30 02:35:27 +08:00
Petro Karashchenko
f5665db1f2 boards: correct path to RCRAWS files during file copy
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-29 12:11:09 +08:00
Ville Juven
30c25a95f3 MPFS: Fix error in flat build linker script
Use sram instead of ksram (copy&paste error)
2022-03-28 14:05:51 +03:00
Petro Karashchenko
c61710c7b8 boards/arm/uid: fix pointer to int compare
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-28 00:31:27 +08:00
zouboan
466063ac9e sched/sched/sched_timerexpiration: change from sched_time to eventtime
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-27 18:22:58 +03:00
ligd
f623ac0f13 armv7-m/armv8-m: move up_pref* api to common place
Signed-off-by: ligd <liguiding1@xiaomi.com>
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-03-26 13:39:18 +02:00
Gustavo Henrique Nihei
0f0f85979e sim: Enable CXX_EXCEPTION and CXX_RTTI on C++ defconfigs
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-26 05:56:37 +02:00
Gustavo Henrique Nihei
2cd1769619 libxx: Add CXX_RTTI for enabling RTTI support for C++ applications
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-26 05:56:37 +02:00
Gustavo Henrique Nihei
5198a56fe8 esp32s3-devkit: Fix the number of memory regions in some configurations
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-25 15:56:44 +02:00
Masayuki Ishikawa
594ae1e7fc boards: rv-virt: Fix stack corruption for rv64 configs
Summary:
- This commit fixes stack corruption for rv64 configs

Impact:
- None

Testing:
- Tested with qemu-6.2

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-03-25 12:26:12 +02:00
Michael Mogenson
97fa9b849c defconfig: add Lua configs for sim and teensy-4.x 2022-03-24 14:02:32 +08:00
Gustavo Henrique Nihei
c92c4af304 xtensa/esp32s2: Initialize instruction cache on startup
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-23 20:05:40 -03:00
Gustavo Henrique Nihei
7cb8f02ecc esp32s2-saola-1: Use cache-related definitions from Kconfig
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-23 19:38:28 -03:00
Gustavo Henrique Nihei
04b80cc8d2 xtensa/esp32s2: Remove unused and not unsupported configs from Kconfig
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-23 19:38:28 -03:00
Gustavo Henrique Nihei
23cfded18f esp32s3-devkit: Add support for BOOT button as user button
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-23 07:23:51 +09:00
Petro Karashchenko
68902d8732 pid_t: unify usage of special task IDs
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-22 21:22:32 +08:00
Petro Karashchenko
757d01d915 progmem: eliminate PROGMEM_ERASESTATE configuration option
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-22 10:01:41 -03:00
Petro Karashchenko
9a9a06dd7d boards/arm/same70-qmtech: Remove dead code
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-22 10:01:09 +08:00
Abdelatif Guettouche
954ff496b4 esp32s3-devkit/spiflash: Use SmartFS instead of LittleFS.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2022-03-21 22:17:23 +08:00
Xiang Xiao
85550ee340 boards/sim: Enable uinput for rpproxy and rpserver
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-21 09:03:05 +02:00
Xiang Xiao
d19aa5aca4 input: Move uinput initialization from boards/sim to drivers
since uinput can be used not only on simulator but also on real device

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-21 09:03:05 +02:00
Xiang Xiao
fd5fb26f51 input/uinput: Rename UINPUT_TOUCHSCREEN to UINPUT_TOUCH
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-21 09:03:05 +02:00
Gerson Fernando Budke
49b15e3577 boards/arm/samv7/samv71-xult: Fix mcuboot update example missing config
Signed-off-by: Gerson Fernando Budke <gerson.budke@ossystems.com.br>
2022-03-19 21:00:16 +02:00
Gerson Fernando Budke
6740ec3fee boards/arm/samv7/samv71-xult: Add mcuboot update example configs
Add MCUboot Update Agent and Slot Confirm configurations. It uses
ethernet with dhcp client to perform download of new image into
internal flash memory.

Signed-off-by: Gerson Fernando Budke <gerson.budke@ossystems.com.br>
2022-03-19 16:09:49 +02:00
Gerson Fernando Budke
2965345e14 boards/arm/samv7: Fix mcuboot configs
MCUboot apps were moved to examples directory. This fix configs due to
recent changes.

Signed-off-by: Gerson Fernando Budke <gerson.budke@ossystems.com.br>
2022-03-19 16:09:49 +02:00
Gerson Fernando Budke
2d906bb28f boards/xtensa/esp32: Fix mcuboot configs
MCUboot apps were moved to examples directory. This fix configs due to
recent changes.

Signed-off-by: Gerson Fernando Budke <gerson.budke@ossystems.com.br>
2022-03-19 16:09:49 +02:00
Gerson Fernando Budke
4caa8b19e9 boards/risc-v/esp32c3: Fix mcuboot configs
MCUboot apps were moved to examples directory. This fix configs due to
recent changes.

Signed-off-by: Gerson Fernando Budke <gerson.budke@ossystems.com.br>
2022-03-19 16:09:49 +02:00
Petro Karashchenko
c01cd62666 boards/arm/samv7/same70-qmtech: add gpio driver support
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-19 17:37:18 +08:00
Petro Karashchenko
2af9b574f6 boards/arm/samv7: define MTD progmem partitions at board level
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-19 11:42:10 +08:00
Petro Karashchenko
fe0fbdc088 config: finalize transition from USERMAIN_STACKSIZE to INIT_STACKSIZE
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-19 11:32:47 +08:00
Petro Karashchenko
20ac85860c config: finalize transition from USER_ENTRYPOINT to INIT_ENTRYPOINT
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-19 11:32:47 +08:00
Huang Qi
edef327655 arch/arm: Move ARCHCPUFLAGS to Toolchain.defs
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-03-19 02:24:00 +08:00
Petro Karashchenko
c1fb14ccaa boards/arm/samv7/same70-qmtech: add /dev/timer0 support
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-19 02:21:03 +08:00
Petro Karashchenko
6472a698b6 style/typo: fix few style and typo issues
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-18 17:05:10 +01:00
Janne Rosberg
49abe527ca risc-v/mpfs/icicle: add example config for ethernet 2022-03-18 17:22:27 +02:00
Janne Rosberg
8c755c9414 esp32c3-devkit/ble: add CONFIG_NETDEV_LATEINIT to defconfig 2022-03-18 17:22:27 +02:00
Janne Rosberg
cff7c760a5 bl602evb/wifi: add CONFIG_NETDEV_LATEINIT to defconfig 2022-03-18 17:22:27 +02:00
Ville Juven
15960f25a5 MPFS: Add board_memorymap.h
Move the target specific memory map to a separate file so there is no
need to copy&paste the __xxram_start etc linker symbols to each file
that needs them.

Also add MMU flags for I/O and kernel areas, they will be needed
when the kernel runs with virtual addresses also.
2022-03-18 09:35:00 -03:00
Ville Juven
13fd93ed2a MPFS: Add linker script for CONFIG_BUILD_KERNEL 2022-03-18 18:20:12 +08:00
yinshengkai
eebd736891 board/sim: update uinput init & Kconfig
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2022-03-17 19:44:17 +02:00
Masayuki Ishikawa
2cbad5d92e boards: sabre-6quad: Enable environ and path in knsh/defconfig
Summary:
- This commit enables environ and path in knsh/defconfig

Impact:
- None

Testing:
- Tested with QEMU

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-03-17 13:41:01 +08:00
YAMAMOTO Takashi
439e5d0030 Add an esp32 config with efuse (esp32-devkitc:efuse)
esp32-devkitc:wapi + efuse enabled.
2022-03-17 13:40:51 +08:00
YAMAMOTO Takashi
cab24374b5 esp32: fix build errors with efuse
```
board/esp32_bringup.c: In function 'esp32_bringup':
board/esp32_bringup.c:171:9: error: implicit declaration of function 'esp32_efuse_initialize'; did you mean 'esp32_mmcsd_initialize'? [-Werror=implicit-function-declaration]
   ret = esp32_efuse_initialize("/dev/efuse");
         ^~~~~~~~~~~~~~~~~~~~~~
         esp32_mmcsd_initialize
```
2022-03-17 13:40:51 +08:00
Petro Karashchenko
b302173f31 Revert "zig-build added"
This reverts commit 4880613b26.
2022-03-16 22:17:16 +02:00
Matheus Catarino França
4880613b26 zig-build added
zig install added on CI - fixed

Docker - zig install

parent 5d2e3573c25b48ba7c3d697de11e64896e818aea
author Matheus Catarino França <matheus-catarino@hotmail.com> 1647344723 -0300
committer Matheus Catarino França <matheus-catarino@hotmail.com> 1647344723 -0300

zig-build added

zig install added on CI - fixed

Docker - zig install

CI - replace wget2curl

rm bloat curl command & zig latest version

ZIG_ENV - rm bin folder

ident format

Apply suggestions from code review

Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>

rm arch-zigoptimization

rm arch-zigoptimization ref
2022-03-17 02:09:36 +08:00
chao.an
7a27b58ca1 sim: Enable garbage collection of unused input sections
LDFLAGS += -Wl,--gc-sections

GC should be enabled on arch/sim/src/Makefile:

326   $(if $(CONFIG_HAVE_CXX),\
327   $(Q) "$(CXX)" $(CFLAGS) $(LDFLAGS) -o $(TOPDIR)/$@ $(HEADOBJ) nuttx.rel $(HOSTOBJS) $(STDLIBS),\
328   $(Q) "$(CC)" $(CFLAGS) $(LDFLAGS) -o $(TOPDIR)/$@ $(HEADOBJ) nuttx.rel $(HOSTOBJS) $(STDLIBS))

Signed-off-by: chao.an <anchao@xiaomi.com>
2022-03-16 15:40:06 +02:00
Xiang Xiao
bbf12f3b1b boards/sim/adb: Enable CONFIG_ADBD_SOCKET_SERVICE
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-16 10:17:15 +02:00
Petro Karashchenko
985829190e arch/arm/samv7/sam_tc: implement timer driver support
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-16 03:19:57 +08:00