Skip to contentSkip to conversation

Staging: silabs si4455 serial driver

PATCH Superseded József Horváth 2 participants 2 messages Dec 10, 2020

Subsystems (2)

v1 of 8 Superseded Latest is v8 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Staging: silabs si4455 serial driver

I send this again, because my original mail content was corrupted.

This is a serial port driver for
Silicon Labs Si4455 Sub-GHz transciver.

---
 .../bindings/staging/serial/silabs,si4455.txt |   39 +
 drivers/staging/Kconfig                       |    2 +
 drivers/staging/Makefile                      |    1 +
 drivers/staging/si4455/Kconfig                |    8 +
 drivers/staging/si4455/Makefile               |    2 +
 drivers/staging/si4455/TODO                   |    3 +
 drivers/staging/si4455/si4455.c               | 1465 +++++++++++++++++
 drivers/staging/si4455/si4455_api.h           |   56 +
 8 files changed, 1576 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/staging/serial/silabs,si4455.txt
 create mode 100644 drivers/staging/si4455/Kconfig
 create mode 100644 drivers/staging/si4455/Makefile
 create mode 100644 drivers/staging/si4455/TODO
 create mode 100644 drivers/staging/si4455/si4455.c
 create mode 100644 drivers/staging/si4455/si4455_api.h
Documentation/devicetree/bindings/staging/serial/silabs,si4455.txt new file +39 -0
new file mode 100644
index 000000000000..abd659b7b952
@@ -0,0 +1,39 @@
+* Silicon Labs Si4455 EASY-TO-USE, LOW-CURRENT OOK/(G)FSK SUB-GHZ TRANSCEIVER
+
+Required properties:
+- compatible: Should be one of the following:
+  - "silabs,si4455" for Silicon Labs Si4455-B1A or Si4455-C2A (driver automatically detects the part info),
+  - "silabs,si4455b1a" for Silicon Labs Si4455-B1A,
+  - "silabs,si4455c2a" for Silicon Labs Si4455-C2A,
+- reg: SPI chip select number.
+- interrupts: Specifies the interrupt source of the parent interrupt
+  controller. The format of the interrupt specifier depends on the
+  parent interrupt controller.
+- clocks: phandle to the IC source clock (only external clock source supported).
+- spi-max-frequency: maximum clock frequency on SPI port
+- shdn-gpios: gpio pin for SDN
+
+Example:
+
+/ {
+	clocks {
+                si4455_1_2_osc: si4455_1_2_osc {
+                        compatible = "fixed-clock";
+                        #clock-cells = <0>;
+                        clock-frequency  = <30000000>;
+                };
+	};
+};
+
+&spi0 {
+	si4455: si4455@0 {
+		compatible = "silabs,si4455";
+		reg = <0>;
+		clocks = <&si4455_1_2_osc>;
+		interrupt-parent = <&gpio>;
+		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
+                shdn-gpios = <&gpio 26 1>;
+                status = "okay";
+                spi-max-frequency = <3000000>;
+	};
+};
drivers/staging/Kconfig +2 -0
index 9b7cb7c5766a..2cf0c9bfe878 100644
@@ -118,4 +118,6 @@ source "drivers/staging/wfx/Kconfig"
 
 source "drivers/staging/hikey9xx/Kconfig"
 
+source "drivers/staging/si4455/Kconfig"
+
 endif # STAGING
drivers/staging/Makefile +1 -0
index 38226737c9f3..043c63287bc6 100644
@@ -49,3 +49,4 @@ obj-$(CONFIG_QLGE)		+= qlge/
 obj-$(CONFIG_WIMAX)		+= wimax/
 obj-$(CONFIG_WFX)		+= wfx/
 obj-y				+= hikey9xx/
+obj-$(CONFIG_SERIAL_SI4455)	+= si4455/
drivers/staging/si4455/Kconfig new file +8 -0
new file mode 100644
index 000000000000..666f726f2583
@@ -0,0 +1,8 @@
+# SPDX-License-Identifier: GPL-2.0
+config SERIAL_SI4455
+	tristate "Si4455 support"
+	depends on SPI
+	select SERIAL_CORE
+	help
+	  This driver is for Silicon Labs's Si4455 Sub-GHz transciver.
+	  Say 'Y' here if you wish to use it as serial port.
drivers/staging/si4455/Makefile new file +2 -0
new file mode 100644
index 000000000000..1a6474673509
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0
+obj-$(CONFIG_SERIAL_SI4455) := si4455.o
drivers/staging/si4455/TODO new file +3 -0
new file mode 100644
index 000000000000..aee5c7613b31
@@ -0,0 +1,3 @@
+TODO:
+        - add variable packet length support
+        - add firmware patching support in case of Si4455-C2A
drivers/staging/si4455/si4455.c new file +1465 -0

1,465 lines not on this page · raw message

drivers/staging/si4455/si4455_api.h new file +56 -0

56 lines not on this page · raw message

Signature · 1 line
2.17.1
#1 lore raw
Quoted 6 lines · József Horváth

I send this again, because my original mail content was corrupted.

This is a serial port driver for
Silicon Labs Si4455 Sub-GHz transciver.

Quoted 8 lines
---
 .../bindings/staging/serial/silabs,si4455.txt |   39 +
 drivers/staging/Kconfig                       |    2 +
 drivers/staging/Makefile                      |    1 +
 drivers/staging/si4455/Kconfig                |    8 +
 drivers/staging/si4455/Makefile               |    2 +
 drivers/staging/si4455/TODO                   |    3 +
 drivers/staging/si4455/si4455.c               | 1465 +++++++++++++++++

I said I wasn't going to take this into drivers/staging/ so why is this still here?

confused,

greg k-h