Add the necessary configs to the default nsh config file in order to enable
support for MMCSD-SPI.
Signed-off-by: Robert-Ionut Alexa <robertalexa2000@gmail.com>
Add support to esp32-sparrow-kit for the LTR308 sensor. This patch also
enables the sensor in the default nsh config file.
Signed-off-by: Robert-Ionut Alexa <robertalexa2000@gmail.com>
ESP32-SPARROW-KIT is built upon ESP32-WROVER-KIT by adding various
peripherals. This is an initial commits that only backports the code
as it is, without further changes.
Signed-off-by: Robert-Ionut Alexa <robertalexa2000@gmail.com>
In order to turn longjmp context-switch safe, it's necessary
to disable interrupts before modifying windowbase and windowstart.
Otherwise, after a context switch, windowstart and windowbase
would be different, leading to a wrongly set windowstart bit due to
longjmp writing it based on the windowbase before the context switch.
This corrupts the registers at the next window overflow reaching
that wrongly set bit.
*Background:*
This PR is related to an issue first observed on ESP-IDF
https://github.com/espressif/esp-idf/issues/5229 and it was, then,
checked on NuttX using a test application.
*The test application:*
To check if the problem affects ESP32, ESP32-S2 and ESP32-S3 on
NuttX, it was created an application based on:
https://en.cppreference.com/w/c/program/longjmp
The application creates 16 tasks (`#define NUMBER_OF_TASKS 16`)
that implements the following daemon:
```
static int setjmp_longjmp_daemon(int argc, char *argv[])
{
for (int i = 0; i < NUMBER_OF_TASKS * 2; i++)
{
jmp_buf env;
volatile int count = 0;
if (setjmp(env) != UINT16_MAX)
{
foo(&env, ++count);
}
}
sem_post(&g_sem);
return EXIT_SUCCESS;
}
```
The main function also initializes a semaphore to avoid application
exiting before tasks return successfully:
```
sem_init(&g_sem, 0, -NUMBER_OF_TASKS);
```
Finally, the round-robin interval was lowered to 1ms to raise the
chances of the longjmp being interrupted by a context switch
(`CONFIG_RR_INTERVAL=1).
This setup was able to reproduce the problem prior to this patch
being applied.
- Add ioctl method to enable allocating the apb buffer.
- Add RX methods to set data width, sample rate, channels and
for receiving data from the I2S peripheral.
- Update the i2schar defconfig to enable the I2S receiver.
- Add nxlooper defconfig to enable testing the RX interface.
- Add specific bindings on ESP32-S2 bringup to enable nxlooper
to work without the need of any specific codec.
Currently NuttX on Arm64 supports Generic Interrupt Controller (GIC) Versions 3 and 4: [`arm64_gicv3.c`](https://github.com/apache/incubator-nuttx/blob/master/arch/arm64/src/common/arm64_gicv3.c), [`arm64_gic.h`](https://github.com/apache/incubator-nuttx/blob/master/arch/arm64/src/common/arm64_gic.h). This PR adds support for GIC Version 2, which is needed by [Pine64 PinePhone](https://lupyuen.github.io/articles/interrupt) based on Allwinner A64 SoC.
This 64-bit implementation of GIC v2 is mostly identical to the existing GIC v2 for 32-bit Armv7-A ([`armv7-a/arm_gicv2.c`](https://github.com/apache/incubator-nuttx/blob/master/arch/arm/src/armv7-a/arm_gicv2.c), [`armv7-a/gic.h`](https://github.com/apache/incubator-nuttx/blob/master/arch/arm/src/armv7-a/gic.h)), with minor modifications to support 64-bit Registers (Interrupt Context).
- `arch/arm64/Kconfig`: Under "ARM64 Options", we added an integer option `ARM_GIC_VERSION` ("GIC version") that selects the GIC Version. Valid values are 2, 3 and 4, default is 3.
- `arch/arm64/src/common/arm64_gicv2.c`: Implements 64-bit GIC v2 based on 32-bit [`armv7-a/arm_gicv2.c`](https://github.com/apache/incubator-nuttx/blob/master/arch/arm/src/armv7-a/arm_gicv2.c) and [`armv7-a/gic.h`](https://github.com/apache/incubator-nuttx/blob/master/arch/arm/src/armv7-a/gic.h), modified to support 64-bit Registers (Interrupt Context).
Function and Macro Names have not been changed, for easier cross-referencing between the 32-bit and 64-bit implementations of GIC v2.
- `arch/arm64/src/common/arm64_gicv3.c`: Added Conditional Compilation for GIC v3. This file will not be compiled if `ARM_GIC_VERSION` is 2.
- `arch/arm64/src/common/arm64_gic.h`: Added the Version Identifier for GIC v2. At startup we read the GIC Version from hardware and verify that it matches `ARM_GIC_VERSION`.
- `arch/arm64/include/qemu/chip.h`: Added the QEMU Base Addresses for GIC v2.
- `arch/arm64/src/common/Make.defs`: Added the source file that implements GIC v2.
- `boards/arm64/qemu/qemu-armv8a/README.txt`: Added the documentation for testing GIC v2 with QEMU.
- `boards/arm64/qemu/qemu-armv8a/configs/nsh_gicv2/defconfig`: Added the Board Configuration `qemu-armv8a:nsh_gicv2` for testing GIC v2 with QEMU. Identical to `qemu-armv8a:nsh`, except that `ARM_GIC_VERSION` is 2.
- Add ioctl method to enable allocating the apb buffer.
- Add RX methods to set data width, sample rate, channels and
for receiving data from the I2S peripheral.
- Update the i2schar defconfig to enable the I2S receiver.
- Add nxlooper defconfig to enable testing the RX interface.
- Add specific bindings on ESP32 bringup to enable nxlooper
to work without the need of any specific codec.
since this config is removed from:
commit a446b5816f
Author: Xiang Xiao <xiaoxiang@xiaomi.com>
Date: Sun Nov 6 00:18:52 2022 +0800
mm/circbuf: Remove MM_CIRCBUF option from Kconfig
since the linker can remove the unused object file from the final image
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Summary:
- This commit adds the following configs to elf/defconfig
+CONFIG_DEBUG_FULLOPT=y
+CONFIG_DEBUG_SYMBOLS=y
+CONFIG_STACK_COLORATION=y
Impact:
- None
Testing:
- Tested with esp32-devkitc (QEMU and board)
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
This change syncs the NuttX application image IRAM upper limit to the
start of the IRAM region used by the IDF 2nd stage bootloader.
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
Summary:
- This commit fixes the CI build errors regressed by
https://github.com/apache/incubator-nuttx/pull/7351
Impact:
- None
Testing:
- Build only
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
In the past, header file paths were generated by the incdir command
Now they are generated by concatenating environment variables
In this way, when executing makefile, no shell command will be executed,
it will improve the speed of executing makfile
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
Currently the IHC (Inter Hart Communication) depends on OpenAMP and
rptun. However, the bootloader portion of the IHC doesn't need
either of them. Now they are wasting a lot of bootloader space.
Reorganize the bootloader portion into a separate file 'mpfs_ihc_sbi.c'.
This file contains the OpenSBI vendor extensions, or the only required
functionalities for the bootloader. On the other hand, 'mpfs_ihc.c'
contains the non-bootloader code.
This patch also makes it possible to utilize 2 RPMSG channels. This
has been tested so that 2 separate NuttXs on harts 1 and 2 communicate
with Linux kernel that runs on harts 3 and 4.
New configuration files are added as well:
- rpmsg-ch1: sample config for RPMSG
- rpmsg-ch2: sample config for another RPMSG channel
- rpmsg-sbi: sample bootloader config for RPMSG/OpenSBI
Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
1.Don't check the return value of nxsem_init or nxmutex_init
2.Fix some style issue
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Like rpmsgdev and rpmsgmtd, rpmsgblk allow the local cpu to
access the block device in the remote cpu.
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
This option, which resolves to -w when CONFIG_CYGWIN_WINTOOL is
configured, is now appended to INCDIR in tools/Config.mk.
See git commit # 5eae32577e in the main
armv6-m/arm_exception.S:139:2: error: invalid instruction, any one of the following would fix this:
sub r1, #(4 * (10))
^
armv6-m/arm_exception.S:139:2: note: instruction requires: thumb2
sub r1, #(4 * (10))
^
armv6-m/arm_exception.S:139:10: note: invalid operand for instruction
sub r1, #(4 * (10))
^
armv6-m/arm_exception.S:139:2: note: no flag-preserving variant of this instruction available
sub r1, #(4 * (10))
^
armv6-m/arm_exception.S:139:10: note: operand must be a register in range [r0, r7]
sub r1, #(4 * (10))
^
-----------------------------------------
bringup.c:125:18: warning: variable 'ret' is uninitialized when used here [-Wuninitialized]
return ret;
^~~
bringup.c:73:10: note: initialize the variable 'ret' to silence this warning
int ret;
^
= 0
Signed-off-by: chao an <anchao@xiaomi.com>
Add initial support for the I2S peripheral on ESP32S2.
Add I2S character driver and generic I2S audio driver.
Include i2schar defconfig for ESP32-S2-Saola-1 board.
Summary:
- This commit updates README.txt regarding how to build kernel
and apps for BUILD_KERNEL
- Also update on parallel build for BUILD_FLAT
Impact:
- None
Testing:
- Tested with qemu-7.1.0
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
This change adds the following:
- Rename the board configuration name from qemu-a53 to qemu-v8a.
- Add the configurations for Cortex-A57 and Cortex-A72.
Signed-off-by: Hidenori Matsubayashi <hidenori.matsubayashi@gmail.com>
Configuring...
Building NuttX...
Normalize qemu-a53/nsh
13a14
> CONFIG_ARCH_CHIP_QEMU_A53=y
Saving the new configuration file
On branch master
Your branch is up to date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: boards/arm64/qemu/qemu-a53/configs/nsh/defconfig
modified: boards/arm64/qemu/qemu-a53/configs/nsh_smp/defconfig
retrigger ci build.
Use CONFIG_ARCH_CHIP_QEMU instead of CONFIG_ARCH_CHIP_QEMU_A53. This is because these configurations depend on the hardware configuration of qemu (memory map, irq numbers, etc.).
Signed-off-by: Hidenori Matsubayashi <hidenori.matsubayashi@gmail.com>
move usrsock rpmsg driver from userspace to kernel to reduce extra
context switch for usrsock operations
Signed-off-by: liangchaozhong <liangchaozhong@xiaomi.com>
Summary:
- This commit adds ksmp64 configuration to test BUILD_KERNEL+SMP
- NOTE: README.txt has been updated
Impact:
- None
Testing:
- Tested with QEMU 6.2
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
Summary:
- I noticed that sometimes automatic tests failed due to
missing serial outputs, although the kernel is still alive.
- This commit fixes the issue.
Impact:
- raspberrypi-pico:smp only
Testing:
- Tested with smp, ostest, etc.
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
Add initial support for the I2S peripheral on ESP32.
Add I2S character driver and generic I2S audio driver.
Include i2schar defconfig for ESP32-DevKitC board.
Summary:
- I noticed that the OpenSBI library depends on the BSD license
- This commit fixes this issue
Impact:
- None
Testing:
- Build only
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
* boards/arm/tiva/tm4c129e-launchpad/README.txt:
Expand this documentation with information about: toolchains,
debugging (including the elusive openocd incantation to flash program
the board), MCU clocking, more details about the Virtual COM port
exposed via ICDI, and a description of the recently added ostest
configuration.
* boards/arm/stm32/b-g474e-dpow1/README.txt:
(Debugging): OpenOCD requires permissions for certain operations. The
preferred thing to do is to properly configure udev rules. The
expedient thing to do is to run it as root with 'sudo', but we do not
want to encourage that, as discussed earlier on this PR [1]. This
revised text offers a compromise where we mention both options, but
we talk about udev rules first and explicitly say that using 'sudo'
is not encouraged. We leave it up to developers to decide what is
best in their particular situation.
References:
[1] https://github.com/apache/incubator-nuttx/pull/7177
* boards/arm/stm32/b-g474e-dpow1/configs/ostest/defconfig:
New file. Compared to b-g474e-dpow1:nsh, it adds the following
configs:
+CONFIG_BUILTIN=y
+CONFIG_NSH_BUILTIN_APPS=y
+CONFIG_TESTING_OSTEST=y
and, because ostest currently fails when priority inheritance is
enabled, it removes the following configs:
-CONFIG_PRIORITY_INHERITANCE=y
-CONFIG_PTHREAD_MUTEX_DEFAULT_PRIO_INHERIT=y
1. some arm instructions are not compatible with arch tlsr:
{standard input}: Assembler messages:
{standard input}:53: Error: bad instruction `svc #0'
2. remove unsupport compile option
cc1: error: unrecognized command line option "-mlittle-endian"
Signed-off-by: chao an <anchao@xiaomi.com>
1.
make[1]: *** No rule to make target 'tms570_spi.c', needed by '.depend'. Stop.
2.
In file included from armv7-r/arm_gicv2.c:36:
armv7-r/gic.h: In function 'arm_gic_nlines':
armv7-r/mpcore.h:63:29: error: 'CHIP_MPCORE_VBASE' undeclared (first use in this function)
63 | #define MPCORE_ICD_VBASE (CHIP_MPCORE_VBASE+MPCORE_ICD_OFFSET)
| ^~~~~~~~~~~~~~~~~
Signed-off-by: chao an <anchao@xiaomi.com>
Add support for MCUBoot.
Two new configurations are added:
- mcuboot-loader: mcuboot-loader app used as a bootloader.
main_mcuboot_loader as entrypoint
- mcuboot-app: used as mcuboot agent app. Needs to be
signed manually through "imgtool sign --pad --align 4 -v 0 -s
auto -H 0x200 --pad-header -S 0xc0000 nuttx.hex nuttx_sign.bin"
Signed-off-by: Andres Sanchez <tito97_sp@hotmail.com>
Simplify the clock mode from the board.h -files. Also make the
SD clock definable as well.
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
Some related products, such as Aries m100pfs, don't support eMMC
speeds up to 200MHz. Thus, provide option to select slower clock.
This has only to do with the clocking, no CMD6 is sent to select
high speed modes.
Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
since we can query this value by MTDIOC_ERASESTATE after:
commit 30cb497fe1
Author: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
Date: Tue Jul 13 19:33:12 2021 -0300
mtd: Add MTDIOC_ERASESTATE command for retrieving erase state value
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Modify the file according to the checks
update the board config files, and modify the gd32f4xx_progmem.c
Add chip GD32F450 of GD32MCU
delete the micro FAR, modify code style
Add chip GD32F450 of GD32MCU
* boards/arm/tiva/tm4c129e-launchpad: New subdirectory providing
board support for the Texas Instruments TM4C Crypto Connected
LaunchPad, or more correctly the EK-TM4C129EXL.
* Documentation/introduction/detailed_support.rst,
Documentation/introduction/supported_platforms.rst,
boards/README.txt: Document the additional board support.
* boards/Kconfig:
(ARCH_BOARD_TM4C129E_LAUNCHPAD): New config.
(ARCH_BOARD): Add tm4c129e-launchpad.
(Board-Specific Options): Source the board-specific Kconfig
boards/arm/tiva/tm4c129e-launchpad/Kconfig when selected.
The underlying hardware supports 9 endpoints:
- EP0
- 4x IN EPs
- 4x OUT EPs
Currently the driver assumes every EP number is unique. This limits
the amount of EPs to 1 + 4 = 5. Utilize the EPs in such a manner
that all may be used.
Also fix a few error handling related bugs. Update the composite
driver to match the current situation as well.
Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
NuttShell (NSH) NuttX-10.4.0
nsh> usrsocktest
Starting unit-tests...
Testing group "char_dev" =>
Group "char_dev": [OK]
Testing group "no_daemon" =>
Group "no_daemon": [OK]
Testing group "basic_daemon" =>
Group "basic_daemon": [OK]
Testing group "basic_connect" =>
Group "basic_connect": [OK]
Testing group "basic_connect_delay" =>
Group "basic_connect_delay": [OK]
Testing group "no_block_connect" =>
Group "no_block_connect": [OK]
Testing group "basic_send" =>
Group "basic_send": [OK]
Testing group "no_block_send" =>
Group "no_block_send": [OK]
Testing group "block_send" =>
Group "block_send": [OK]
Testing group "no_block_recv" =>
Group "no_block_recv": [OK]
Testing group "block_recv" =>
Group "block_recv": [OK]
Testing group "remote_disconnect" =>
Group "remote_disconnect": [OK]
Testing group "basic_setsockopt" =>
Group "basic_setsockopt": [OK]
Testing group "basic_getsockopt" =>
Group "basic_getsockopt": [OK]
Testing group "basic_getsockname" =>
Group "basic_getsockname": [OK]
Testing group "wake_with_signal" =>
Group "wake_with_signal": [OK]
Testing group "multithread" =>
Group "multithread": [OK]
Unit-test groups done... OK:17, FAILED:0, TOTAL:17
-- number of checks made: 3589
HEAP BEFORE TESTS:
total used free largest
Mem: 67108368 283088 66825280 66825216
HEAP AFTER TESTS:
total used free largest
Mem: 67108368 623408 66484960 66483360
Signed-off-by: chao an <anchao@xiaomi.com>
* Update WAMR version
* Enable CONFIG_INTERPRETERS_WAMR_DEBUG_INTERP
(TCP related config changes in this commit are for this)
* Enable CONFIG_MM_DUMP_ON_FAILURE
* Bump CONFIG_NSH_LINELEN
Summary:
- I noticed that error happens in loading nettest elf application.
- This commit fixes this issue by adding SYMTAB to the NSH
as well as adjusting some parameters in CONFIG_ELF_XXX
- Also, CONFIG_EXAMPLES_HELLO is changed from y to m for testing.
Impact:
- lm3s6965-ek:qemu-protected only
Tested:
- Tested with qemu-6.2
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
rename the UDP_BINDTODEVICE to SO_BINDTODEVICE to follow the linux
style to be compatible with non-UDP protocol binding requirements
Signed-off-by: chao.an <anchao@xiaomi.com>
so the user could disable the full image instrumentation,
but enable the instrumentation by files or directories.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
so the user could disable the full image instrumentation,
but enable the instrumentation by files or directories.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
without UBSan
```
text data bss dec hex filename
85612 208 142258 228078 37aee nuttx
```
with UBSan:
```
text data bss dec hex filename
194290 98164 208634 501088 7a560 nuttx
```
```c
int main(int argc, FAR char *argv[])
{
uint32_t ptr[32];
printf("Hello, World!! %lu\n", ptr[64]);
return 0;
}
```
Try to run this sample:
```
nsh> hello
ubsan_prologue: ================================================================================
ubsan_prologue: UBSAN: array-index-out-of-bounds in hello_main.c:39:37
__ubsan_handle_out_of_bounds: index 64 is out of range for type 'uint32_t [32]'
ubsan_epilogue: ================================================================================
Hello, World!! 1070182368
nsh>
```
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
Remove ifeq and endif and replace them with CSRC-$(CONFIG) form.
This simplifies Makefile and makes it a tiny bit more readable.
Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
In order to better test the lcdddev driver and framebuffer, newer
board configs (for the TTGO T-Display and for the simulator) were
added.
Adjusted references of the sim:lvgl_(fb/lcd) config.
This commit adds support for GPIO driver based encoder for SAMv7 boards.
This encoder do not use the microcontroller's dedicated driver but two
GPIO pins with interrupts. The position is calculated based on those
interrupts.
This can be used for boards that do not have pins routed to the dedicated
driver.
Signed-off-by: Michal Lenc <michallenc@seznam.cz>
It is not really needed; g_hart_stacks is only used during SBI init as
a temporary stack area. We can use the scratch area buffers for this, as
the scratch areas define almost 4K of extra space, which is used for
exception stacks anyway.
The SPI2_CS_X and SPI2_SCK pins are used for connection to the LTE modem.
These pins are the special pins for the host interface that are set
automatically by latching the SYSTEM0/1 pins. So, it causes a problem
with increased current consumption when the modem is in power off state.
To prevent it, set these pins to GPIO HiZ during board initialization.
When nsh is not enabled, CONFIG_NSH_PROC_MOUNTPOINT is not defined.
If in that case procfs is used, compilation will result in error.
Define sane default path for procfs in case nsh is not enable but
procfs is.
Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
When CONFIG_ARCH_BOARD_FLASH_CPU2_PROG_SIZE is bigger than 0, compilation
will fail because of missing "{}" in struct initialization.
Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
If not all partitions are defined in Kconfig, compiler may show -Wundef
warnings for each: "#if CONFIG_ > 0". Fixed by defaulting values to 0
if they are undefined.
Some variables may be unused if filesystems are not enabled in Kconfig.
These variables are marked as UNUSED() to silent compiler warnings.
Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
Summary:
- This commit enables to test C++ static object in ELF (hello++3)
Impact:
- elf defconfig only
Testing:
- Tested with QEMU and sabre-6quad board
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
Summary:
- This commit enables to test C++ static object in ELF (hello++3)
Impact:
- elf defconfig only
Testing:
- Tested with spresense
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
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>
- 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>
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>
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>
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>
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>
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.
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>