Skip to content

Conversation

ajf58
Copy link
Owner

@ajf58 ajf58 commented May 8, 2024

No description provided.

@raffarost raffarost force-pushed the feature/esp32c6 branch 13 times, most recently from 810f237 to 22760ce Compare June 4, 2024 13:03
@raffarost raffarost force-pushed the feature/esp32c6 branch 17 times, most recently from ff8b1a8 to 2e2406c Compare June 13, 2024 12:25
Nicolas Pitre and others added 24 commits June 14, 2024 17:11
We need those simple alternatives to be used during early boot when the
MMU is not yet enabled. However they don't have to be the slowest they
can be. Those functions are mainly used to clear .bss sections and copy
.data to final destination when doing XIP, etc. Therefore it is very
likely for provided pointers to be 64-bit aligned. Let's optimize for
that case.

Signed-off-by: Nicolas Pitre <[email protected]>
Assembly implementation for z_early_memset() and z_early_memcpy().
Otherwise the compiler will happily replace our C code with a direct
call to memset/memcpy which kind of defeats the purpose.

Signed-off-by: Nicolas Pitre <[email protected]>
avoid convert pointers to incomplete type using the pointer to first item

Signed-off-by: Hess Nathan <[email protected]>
adding vendor prefix to prepare for adding lora module

Signed-off-by: David Ullmann <[email protected]>
adding the Kconfig for reyax lora module

Signed-off-by: David Ullmann <[email protected]>
adding board support for reyax module as a shield on psoc62s4 board

Signed-off-by: David Ullmann <[email protected]>
implementation of reyax lora module

Signed-off-by: David Ullmann <[email protected]>
adding test to build the reyax lora driver

Signed-off-by: David Ullmann <[email protected]>
updated release notes for 3.7

Signed-off-by: David Ullmann <[email protected]>
hal_espressif update for C6 support

Signed-off-by: Raffael Rostagno <[email protected]>
Add clock, interrupt controller and pinctrl related macros
for esp32c6

Signed-off-by: Lucas Tamborrino <[email protected]>
Add basic support for esp32c6 SoC.

Signed-off-by: Marek Matej <[email protected]>
Add esp32c6 basic device tree.

Signed-off-by: Lucas Tamborrino <[email protected]>
Add esp32c6_devkitc basic support.

Signed-off-by: Lucas Tamborrino <[email protected]>
Changes to bring support for esp32c6 SoC.
- clock control
- gpio
- pinctrl
- serial
- timer

Signed-off-by: Lucas Tamborrino <[email protected]>
Added support to watchdog timer to ESP32C6

Signed-off-by: Raffael Rostagno <[email protected]>
Added GP-SPI2 (general purpose SPI2) support for ESP32C6

Signed-off-by: Raffael Rostagno <[email protected]>
Added support for general purpose SPI2 (GP-SPI2)

Signed-off-by: Raffael Rostagno <[email protected]>
Fix to properly allocate IRQs for interrupt sources over 60.
It also screens out non-allocatable IRQs used by the CPU.

Signed-off-by: Raffael Rostagno <[email protected]>
Clock source SCLK added for C6 on LEDC

Signed-off-by: Raffael Rostagno <[email protected]>
Added basic PWM test for esp32c6_devkitc

Signed-off-by: Raffael Rostagno <[email protected]>
Added support for C6 to allow CPU clock config

Signed-off-by: Raffael Rostagno <[email protected]>
Added support for C6 for CPU and LP clock testing

Signed-off-by: Raffael Rostagno <[email protected]>
Kconfig, .ld and comments fixing
Fixed address of UART1, WDT and RTC timer disabled by default

Signed-off-by: Raffael Rostagno <[email protected]>
ajf58 pushed a commit that referenced this pull request Oct 25, 2024
hci_packet_complete(buf, buf_size) should check whether buf_size is
enough.
For instance, hci_packet_complete can receive buf with buf_size 1,
leading to the buffer overflow in cmd->param_len, which is buf[3].
This can happen when rx_thread() receives two frames in 512 bytes
and the first frame size is 511. Then, rx_thread() will call
hci_packet_complete() with 1.

==5==ERROR: AddressSanitizer: global-buffer-overflow on address
0x000000ad81c2 at pc 0x0000005279b3 bp 0x7fffe74f5b70 sp 0x7fffe74f5b68

READ of size 2 at 0x000000ad81c2 thread T6
    #0 0x5279b2  (/root/zephyr.exe+0x5279b2)
    #1 0x4d697d  (/root/zephyr.exe+0x4d697d)
    zephyrproject-rtos#2 0x7ffff60e5daa  (/lib/x86_64-linux-gnu/libc.so.6+0x89daa)
(BuildId: 2e01923fea4ad9f7fa50fe24e0f3385a45a6cd1c)

0x000000ad81c2 is located 2 bytes to the right of global variable
'rx_thread.frame' defined in 'zephyr/drivers/bluetooth/hci/userchan.c'
(0xad7fc0) of size 512
SUMMARY: AddressSanitizer: global-buffer-overflow
(/root/zephyr.exe+0x5279b2)
Thread T6 created by T2 here:
    #0 0x48c17c  (/root/zephyr.exe+0x48c17c)
    #1 0x530192  (/root/zephyr.exe+0x530192)
    zephyrproject-rtos#2 0x4dcc22  (/root/zephyr.exe+0x4dcc22)

Thread T2 created by T1 here:
    #0 0x48c17c  (/root/zephyr.exe+0x48c17c)
    #1 0x530192  (/root/zephyr.exe+0x530192)
    zephyrproject-rtos#2 0x4dcc22  (/root/zephyr.exe+0x4dcc22)

Thread T1 created by T0 here:
    #0 0x48c17c  (/root/zephyr.exe+0x48c17c)
    #1 0x52f36c  (/root/zephyr.exe+0x52f36c)
    zephyrproject-rtos#2 0x5371dc  (/root/zephyr.exe+0x5371dc)
    zephyrproject-rtos#3 0x5312a6  (/root/zephyr.exe+0x5312a6)
    zephyrproject-rtos#4 0x52ed7b  (/root/zephyr.exe+0x52ed7b)
    zephyrproject-rtos#5 0x52eddd  (/root/zephyr.exe+0x52eddd)
    zephyrproject-rtos#6 0x7ffff6083c89  (/lib/x86_64-linux-gnu/libc.so.6+0x27c89)
(BuildId: 2e01923fea4ad9f7fa50fe24e0f3385a45a6cd1c)

==5==ABORTING

Signed-off-by: Sungwoo Kim <[email protected]>
ajf58 pushed a commit that referenced this pull request Nov 10, 2024
With introduction of Raw modes, nRF70 driver now advertises get_c
onfig OP, but doesn't implement all types.

This causes problems two-fold with checksum calculations:
  1. The "config" isn't uninitialized, so, every call returns differnet
     values. So, for UDP header checksum would be done and
     pkt->chksumdone would be set. But for IPv4 header checksum might be
     skipped.
  2. Even if we initialize to zero, then network stack gets all zeros
     and calculates checksum by itself rendering offload moot.

There is another problem in #1, as there is only single flag for pkt for
all checksum, nRF70 driver sees this and tells UMAC to skip checksum for
the entire packet. The design isn't coherent, and should be converted to
communicate per-type checksum status (some are filled by network stack
and some HW).

But as nRF70 support all checksum offloads, advertise all types for both
RX and TX.

Upstream PR #: 80882

Signed-off-by: Chaitanya Tata <[email protected]>
@raffarost raffarost deleted the feature/esp32c6 branch December 9, 2024 18:30
ajf58 pushed a commit that referenced this pull request Jun 12, 2025
Current code does not build on Cortex-M0, seems like it does not like
subs:

Error: instruction not supported in Thumb16 mode -- `subs r3,#1'

Adding a unified assembler language declaration in the snippet seems to
fix the problem, also add an M0+ board so this is tested in CI.

Signed-off-by: Fabio Baltieri <[email protected]>
ajf58 pushed a commit that referenced this pull request Sep 11, 2025
Add support for NV12/NV21, NV16/NV61 and YUV420/YVU420
(semi)planar formats which can be output by the main #1 pipe.

Signed-off-by: Alain Volmat <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.