Skip to contentSkip to conversation

UART driver for Conexat Digicolor SoCs

PATCH New Baruch Siach 1 participant 4 messages Dec 18, 2014

Subsystems (3)
lore
Share & tools
lore

Baruch Siach

author maintainer
#0 lore raw

cover UART driver for Conexat Digicolor SoCs

This set of patches adds a driver for the peripheral known as USART of the Conexant CX92755 SoC. The CX92755 is one an ARM based SoC series known as Digicolor. USART apparently stands for Universal Synchronous/Asynchronous Receiver/Transmitter. Besides plain UART, the USART can also do SPI and I2S. Here we only add a UART driver, others may follow later.

CX92755 is based on Cortex-A8. I plan to post ARM basic platform support code (along with clocksource and interrupt controller drivers) in the coming few days.

Baruch Siach (3):
devicetree: bindings: add Conexant vendor prefix
serial: driver for Conexant Digicolor USART
serial: add device tree binding documentation for Conexant USART

 .../devicetree/bindings/serial/digicolor-usart.txt |  27 +
 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 drivers/tty/serial/Kconfig                         |  15 +
 drivers/tty/serial/Makefile                        |   1 +
 drivers/tty/serial/digicolor-usart.c               | 563 +++++++++++++++++++++
 include/uapi/linux/serial_core.h                   |   3 +
 6 files changed, 610 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/serial/digicolor-usart.txt
 create mode 100644 drivers/tty/serial/digicolor-usart.c
Signature · 1 line
2.1.3
author maintainer
#1 lore raw

PATCH 1/3 devicetree: bindings: add Conexant vendor prefix

Use "cnxt" since it once was the stock ticker of Conexant.

---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/vendor-prefixes.txt +1 -0
index a344ec2713a5..de3e75d909b3 100644
@@ -35,6 +35,7 @@ chrp	Common Hardware Reference Platform
 chunghwa	Chunghwa Picture Tubes Ltd.
 cirrus	Cirrus Logic, Inc.
 cnm	Chips&Media, Inc.
+cnxt	Conexant Systems, Inc.
 cortina	Cortina Systems, Inc.
 crystalfontz	Crystalfontz America, Inc.
 dallas	Maxim Integrated Products (formerly Dallas Semiconductor)
Signature · 1 line
2.1.3
author maintainer
#2 lore raw

PATCH 2/3 serial: driver for Conexant Digicolor USART

In reply to Baruch Siach
---
 drivers/tty/serial/Kconfig           |  15 +
 drivers/tty/serial/Makefile          |   1 +
 drivers/tty/serial/digicolor-usart.c | 563 +++++++++++++++++++++++++++++++++++
 include/uapi/linux/serial_core.h     |   3 +
 4 files changed, 582 insertions(+)
 create mode 100644 drivers/tty/serial/digicolor-usart.c
drivers/tty/serial/Kconfig +15 -0
index 649b784081c7..fb6fde0f4d7a 100644
@@ -1545,6 +1545,21 @@ config SERIAL_FSL_LPUART_CONSOLE
 	  If you have enabled the lpuart serial port on the Freescale SoCs,
 	  you can make it the console by answering Y to this option.
 
+config SERIAL_CONEXANT_DIGICOLOR
+	tristate "Conexant Digicolor CX92xxx USART serial port support"
+	depends on OF
+	select SERIAL_CORE
+	help
+	  Support for the on-chip USART on Conexant Digicolor SoCs.
+
+config SERIAL_CONEXANT_DIGICOLOR_CONSOLE
+	bool "Console on Conexant Digicolor serial port"
+	depends on SERIAL_CONEXANT_DIGICOLOR=y
+	select SERIAL_CORE_CONSOLE
+	help
+	  If you have enabled the USART serial port on Conexant Digicolor
+	  SoCs, you can make it the console by answering Y to this option.
+
 config SERIAL_ST_ASC
 	tristate "ST ASC serial port support"
 	select SERIAL_CORE
drivers/tty/serial/Makefile +1 -0
index 9a548acf5fdc..770a19bb7fcb 100644
@@ -92,6 +92,7 @@ obj-$(CONFIG_SERIAL_EFM32_UART) += efm32-uart.o
 obj-$(CONFIG_SERIAL_ARC)	+= arc_uart.o
 obj-$(CONFIG_SERIAL_RP2)	+= rp2.o
 obj-$(CONFIG_SERIAL_FSL_LPUART)	+= fsl_lpuart.o
+obj-$(CONFIG_SERIAL_CONEXANT_DIGICOLOR)	+= digicolor-usart.o
 obj-$(CONFIG_SERIAL_MEN_Z135)	+= men_z135_uart.o
 
 # GPIOLIB helpers for modem control lines
drivers/tty/serial/digicolor-usart.c new file +563 -0

563 lines not on this page · raw message

include/uapi/linux/serial_core.h +3 -0
index 16ad8521af6a..af9a212d4c02 100644
@@ -247,4 +247,7 @@
 /* MESON */
 #define PORT_MESON	109
 
+/* Conexant Digicolor */
+#define PORT_DIGICOLOR	110
+
 #endif /* _UAPILINUX_SERIAL_CORE_H */
Signature · 1 line
2.1.3
author maintainer
#3 lore raw

PATCH 3/3 serial: add device tree binding documentation for Conexant USART

In reply to Baruch Siach
---
 .../devicetree/bindings/serial/digicolor-usart.txt | 27 ++++++++++++++++++++++
 1 file changed, 27 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/serial/digicolor-usart.txt
Documentation/devicetree/bindings/serial/digicolor-usart.txt new file +27 -0
new file mode 100644
index 000000000000..2d3ede66889d
@@ -0,0 +1,27 @@
+Binding for Conexant Digicolor USART
+
+Note: this binding is only applicable for using the USART peripheral as
+UART. USART also support synchronous serial protocols like SPI and I2S. Use
+the binding that matches the wiring of your system.
+
+Required properties:
+- compatible : should be "cnxt,cx92755-usart".
+- reg: Should contain USART controller registers location and length.
+- interrupts: Should contain a single USART controller interrupt.
+- clocks: Must contain phandles to the USART clock
+  See ../clocks/clock-bindings.txt for details.
+
+Note: Each UART port should have an alias correctly numbered
+in "aliases" node.
+
+Example:
+	aliases {
+		serial0 = &uart0;
+	};
+
+	uart0: uart at f0000740 {
+		compatible = "cnxt,cx92755-usart";
+		reg = <0xf0000740 0x20>;
+		clocks = <&main_clk>;
+		interrupts = <44>;
+	};
Signature · 1 line
2.1.3