The current implementation does not call
nxsched_switch_context() exactly when a
task switch occurs.
This patch fixes the issue by placing the
call at the correct location.
Signed-off-by: Chengdong Wang wangchengdong@lixiang.com
remove not related comments from libs/libbuiltin/CMakeLists.txt and
libs/libxx/CMakeLists.txt. These are a copy paste from a Makefile
which doesn't make sense for these files.
Signed-off-by: raiden00pl <raiden00@railab.me>
remove reference to non-existent readme in libc.
Pointing to the documentation page doesn't make sense in this case,
because it doesn't explain the use of `#undef XXX` for this case anyway.
Signed-off-by: raiden00pl <raiden00@railab.me>
remove reference to non-existent readme in mm/
Pointing to the documentation page doesn't make sense in this case,
because it doesn't explain the use of `#undef XXX` for this case anyway.
Signed-off-by: raiden00pl <raiden00@railab.me>
Most references to the readmes have been removed.
The removed references didn't make much sense and were inconsistent with other
sections of the code. Some sections linked to the readme, others didn't.
More importantly, most boards don't have any readme references.
Let's not treat developers as fools who need to be reminded at every step
to check the readme (which doesn't exit anymore anyway).
Signed-off-by: raiden00pl <raiden00@railab.me>
Remove the comment which is copy-paste from stm32/stm32_eth.c.
stm3240g-eval doesn't contain any valuable information about eth driver.
If we need to find an explanation of the configuration options, they are in
Kconfig files.
Signed-off-by: raiden00pl <raiden00@railab.me>
- Split workflows into sequential jobs within a single workflow to
ensure later stages run only after earlier ones succeed.
- Prevents running CI stages when prior checks would fail or are
irrelevant (e.g., draft PRs).
- Simplifies future conditional guards for skipping jobs based on
PR or branch state.
- Improves CI efficiency by focusing pipeline execution on meaningful work.
Signed-off-by: trns1997 <trns1997@gmail.com>
1. Remove STACKCHECK_SOFTWARE config,
2. Do sp value checking when STACKCHECK_MARGIN == 0,
3. Do margin-based stack check when STACKCHECK_MARGIN > 0,
4. Disable stack check when STACKCHECK_MARGIN == -1
Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
This protects the driver in case multiple threads are trying to initialize
or uninitialize the cdcacm concurrently.
Note that this only protects the case when the private pointer is not managed
outside the kernel. If someone has acquired the pointer to the driver and uses
that, it also needs to manage the protection itself if needed.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
When uninitializing cdcacm via a boardctl ioctl, use the instance number
instead of direct pointer to the driver. The reason for this is, that in
CONFIG_BUILD_KERNEL the applications sercon and serdis can't store the pointer;
they are separate processes which get killed.
The cdcacm driver will search up the driver from the file system when the direct
pointer is not given.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
clock_systime_timespec() always returns 0, so there is no need to
check the return value in the caller code, let us remove the return
value directly.
Signed-off-by: chao an <anchao.archer@bytedance.com>
Supports these Maxim/Analog Devices eeproms with a scratchpad:
DS2430,2431,2432,2433,28E04,28E07,28EC20.
For each type of an eeprom, you create a new driver.
Other than that, the driver is file oriented and supports seeks,
for example.
Signed-off-by: Stepan Pressl <pressl.stepan@gmail.com>
This commit introduces 2 new fields in the onewire_master_s struct:
uint64_t selected_rom,
uint64_t *available_roms.
The key point behind this is to allow onewire_search to capture all
devices on the bus into the kernel struct. While this commit is keeping
the old API (for the sake of not messing everything up), you don't have
to reimplement the search of all roms in very strange ways
(such as custom callbacks into the userspace).
Instead of that, a generic ioctl (only a function to be called from
the device driver) was implemented, that searches
the bus (for a particular 1wire family), saves it and then copies it
in a standard way to your application. The ioctl is called
ONEWIREIOC_GETFAMILYROMS.
Also as 1wire can interface multiple devices, a API telling the
driver which ROM to interface was missing, this commit fixes
this with the ONEWIREIOC_SETROM call.
The example usage is you first get all the devices on the bus
using ONEWIREIOC_GETFAMILYROMS. In your application, you choose
the correct device you want to talk to. Then you call
ONEWIREIOC_SETROM. And then writes, reads, ...
Signed-off-by: Stepan Pressl <pressl.stepan@gmail.com>
The wdog implementation redefined `list_node`, which could cause
conflicts or unexpected behavior when both `wdog/wdog.h` and
`list.h` are included in the same source file. This patch removes
the redundant definition to avoid such issues.
Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
E51 needs to use vendor specific CSR to enable L1 cache.
This adds the relevant register setting and makes it
configurable by CONFIG_MPFS_E51_ENABLE_CACHE. With this flag set, the L2
cache on E51 depends on the cache lane configuration. Disabling this flag
disables all caches on E51.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
This adds a header file, defining microchip's vendor specific
CSR registers for E51 monitor core on MPFS SoC
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
Refactor kvaser_pci.c to use netdev_upperhalf for SocketCAN interface.
The reason for this change is to simplify the driver code and get rid of
duplicate code that may be shared between other network devices.
Signed-off-by: p-szafonimateusz <p-szafonimateusz@xiaomi.com>
fix implicit declaration of function 'board_spisd_initialize'
src/rp23xx_common_bringup.c: In function 'rp23xx_common_bringup':
Error: src/rp23xx_common_bringup.c:390:9: error: implicit declaration of function 'board_spisd_initialize'; did you mean 'board_spidev_initialize'? [-Werror=implicit-function-declaration]
390 | ret = board_spisd_initialize(0, CONFIG_RP23XX_SPISD_SPI_CH);
| ^~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: simbit18 <simbit18@gmail.com>
fix error 'BOARD_HSTX_FREQ' undeclared
D:/nuttxpico/nuttx/arch/arm/src/rp23xx/rp23xx_clock.c
D:/nuttxpico/nuttx/arch/arm/src/rp23xx/rp23xx_clock.c: In function 'clocks_init':
D:/nuttxpico/nuttx/arch/arm/src/rp23xx/rp23xx_clock.c:297:26: error: 'BOARD_HSTX_FREQ' undeclared (first use in this function); did you mean 'BOARD_SYS_FREQ'?
297 | BOARD_HSTX_FREQ);
| ^~~~~~~~~~~~~~~
| BOARD_SYS_FREQ
Signed-off-by: simbit18 <simbit18@gmail.com>
Incorrect FSM status checks in the suspend path could cause
deadlocks when power management was enabled. This patch fixes
the condition to allow proper UART suspend/resume handling.
Signed-off-by: Thiago Finelon <thiago.sfinelon@gmail.com>
Migrate the legacy README.txt documentation file to RST format following
the standard board template.
Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
Introduce support in CMake to ignore specific directories
added by `nuttx_add_subdirectory()`. This provides more
flexibility for build configuration and allows excluding
unwanted or optional components.
* Improves modularity of project configuration.
Signed-off-by: trns1997 <trns1997@gmail.com>
Updates the common source code for the LEDC peripheral used by
Espressif's RISC-Vs SoCs. This enables newer SoCs to be supported
in the future while maintaining backwards compatibility.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>