-
Notifications
You must be signed in to change notification settings - Fork 5k
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
char: silabs: si446x (SiLabs Si446x Transceiver) driver added. #4430
Conversation
I'll accept the overlay (with an appropriate README entry), but the driver needs to be submitted upstream to the Linux kernel maintainers. |
I have removed the driver, and updated the README for the overlay as requested. |
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.
There are a few small issues with the overlay and README entry that I've commented on, but the real problem with this PR is that without the driver people can't use it, and if they're building their own kernel/module they might as well build the overlay with it.
@@ -2720,6 +2720,12 @@ Params: speed SPI bus speed (default 4000000) | |||
reset_pin GPIO pin for RESET (default 25) | |||
height Display height (32 or 64; default 64) | |||
|
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.
Two blank lines between overlays, please.
Load: dtoverlay=si446x-spi0,<param>=<val> | ||
Params: speed SPI bus speed (default 4000000) | ||
int_pin GPIO pin for interrupts (default 17) | ||
reset_pin GPIO pin for RESET (default 27) | ||
|
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.
Another blank line here.
arch/arm/boot/dts/overlays/README
Outdated
@@ -2720,6 +2720,12 @@ Params: speed SPI bus speed (default 4000000) | |||
reset_pin GPIO pin for RESET (default 25) | |||
height Display height (32 or 64; default 64) | |||
|
|||
Name: si446x-spi0 | |||
Info: Overlay for Si446x UHF Transceiver via SPI using si446x driver (currently out-of-tree at https://github.com/sunipkmukherjee/silabs.git) |
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 line is far too long - there is a hard limit of 80 characters in this file.
/plugin/; | ||
|
||
/ { | ||
compatible = "brcm,bcm2708"; |
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 should be "brcm,bcm2835"
.
<&uhf0>, "irq_pin:0", | ||
<&uhf0_pins>, "brcm,pins:0"; | ||
reset_pin = <&uhf0>, "sdn_pin:0", | ||
<&uhf0_pins>, "brcm,pins:1"; |
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.
The offset for a parameter target is in bytes - this should say "brcm,pins:4"
.
I agree with you that anyone using the driver can build their own overlay as well. I have submitted a message to LKML, and waiting for a follow up. In the mean time, the inclusion of the overlay can point people towards the code, and independent testing that will be very helpful. The available info/code about this transceiver is not large, which is why I am looking into getting this to a place that can benefit others. Thanks for the corrections on the overlay. |
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
Fixed up and merged offline. |
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
kernel: KMS and FKMS right/bottom margin fixes See: raspberrypi/linux#4451 kernel: overlays: Add overlay for Si446x Transceiver SPI See: raspberrypi/linux#4430 kernel: ARM: dts: bcm2711: fold in the correct interrupt kernel: dtoverlays: Add overlay for cap1106 capacitive touch sensor See: raspberrypi/linux#4442 firmware: arm_loader: Add rng-seed DT property See: #1595 firmware: isp: Set the YUV420/YVU420 format stride to 64 byte
kernel: KMS and FKMS right/bottom margin fixes See: raspberrypi/linux#4451 kernel: overlays: Add overlay for Si446x Transceiver SPI See: raspberrypi/linux#4430 kernel: ARM: dts: bcm2711: fold in the correct interrupt kernel: dtoverlays: Add overlay for cap1106 capacitive touch sensor See: raspberrypi/linux#4442 firmware: arm_loader: Add rng-seed DT property See: raspberrypi/firmware#1595 firmware: isp: Set the YUV420/YVU420 format stride to 64 byte
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
commit 4d94d5c99bf36f3a11529277d3c7eef455ca352c from https://github.com/raspberrypi/linux.git rpi-5.10.y See: raspberrypi/linux#4430 Signed-off-by: Sunip K. Mukherjee <[email protected]> Signed-off-by: Meng Li <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: raspberrypi#4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
See: #4430 Signed-off-by: Sunip K. Mukherjee <[email protected]>
Did you get anywhere with the upstreaming? Some checking has just flagged |
Hi Phil,
Sorry to say it's been in development hell for a bit while I've been
working on my PhD, I'll be going back to it in a next couple of months.
There is a memory buffer bug in the implementation currently that I need to
fix.
Hope you are doing well.
Sunip
…On Fri, Mar 3, 2023, 12:19 PM Phil Elwell ***@***.***> wrote:
Did you get anywhere with the upstreaming? Some checking has just flagged
silabs,si446x as a compatible string that isn't implemented by any
drivers in our trees.
—
Reply to this email directly, view it on GitHub
<#4430 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADF2RQOM2YXCQ4A2SFQQLPDW2IRZTANCNFSM47Y6TNNA>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
No problem - I'll add the compatible string to the list of exceptions. |
Implements basic API calls over ioctl, and receive/transmit using read/write. Reads can be non-blocking with polling support. Writes are blocking. Overlay
si446x-spi0
provided.The device is initialized by an userspace program that requires inclusion of the radio configuration generated by the WDS tool from SiLabs, and patched following Zak Kemble's guide (https://blog.zakkemble.net/si4463-radio-library-avr-arduino/).