-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nrfx 5848 add gpio edriver #1
Nrfx 5848 add gpio edriver #1
Conversation
Update hal_nordic with headers for eGPIO. Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
c4ef8ae
to
c9a63a3
Compare
Add binding for emulated GPIO. Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
Add Kconfig option for emulated peripherals drivers support. Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
Add eGPIO to common Nordic peripherals. Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
Add support for emulated peripherals on nRF54L15 APP. Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
Add node for emulated gpio in nRF54L15 APP dts. Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
c9a63a3
to
6f74f10
Compare
Add driver for emulated GPIO. Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
Modify blinky sample to use emulated GPIO. Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
6f74f10
to
6c04740
Compare
compatible = "nordic,nrf-egpio"; | ||
gpio-controller; | ||
#gpio-cells = < 0x2 >; | ||
ngpios = < 0x10 >; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A way to detect pin conflicts would be needed in future.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file should be included in a eperiph snippet. Building any sample with this snippet should result in using eGPIO. None of the samples should be updated to use eGPIO by default.
Moved to: nrfconnect/sdk-nrf#16393 |
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) #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) #2 0x4dcc22 (/root/zephyr.exe+0x4dcc22) Thread T2 created by T1 here: #0 0x48c17c (/root/zephyr.exe+0x48c17c) #1 0x530192 (/root/zephyr.exe+0x530192) #2 0x4dcc22 (/root/zephyr.exe+0x4dcc22) Thread T1 created by T0 here: #0 0x48c17c (/root/zephyr.exe+0x48c17c) #1 0x52f36c (/root/zephyr.exe+0x52f36c) #2 0x5371dc (/root/zephyr.exe+0x5371dc) #3 0x5312a6 (/root/zephyr.exe+0x5312a6) #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 <iam@sung-woo.kim>
No description provided.