@@ -3,27 +3,34 @@ PRU-ICSS Serial UART
33
44.. rubric :: Introduction
55
6- As of Processor SDK v7.1, Linux supports the PRU UART peripheral within the
7- PRU-ICSS, which is based on the industry standard TL16C550.
8- The kernel driver is at drivers/tty/serial/8250/8250_pruss.c.
6+ .. ifconfig :: CONFIG_part_variant in ('AM62X')
97
8+ Linux supports the PRU HW UART peripheral within the Programmable Real-Time Unit Subsystem
9+ (PRUSS), which is based on the industry standard TL16C550.
1010
11- .. rubric :: Support Devices
11+ .. ifconfig :: CONFIG_part_variant in ('AM64X')
1212
13- - |__PART_FAMILY_DEVICE_NAMES__ |
13+ Linux supports the PRU HW UART peripheral within the Programmable Real-Time Unit (PRU) and
14+ Industrial Communication Subsystem - Gigabit (ICSSG) or PRU-ICSSG, which is based on the
15+ industry standard TL16C550.
1416
17+ .. ifconfig :: CONFIG_part_variant in ('AM335X', 'AM437X', 'AM57XX')
18+
19+ Linux supports the PRU HW UART peripheral within the Programmable Real-Time Unit Subsystem
20+ and Industrial Communication Subsystem (PRU-ICSS), which is based on the industry standard
21+ TL16C550.
22+
23+ The kernel driver is at :file: `drivers/tty/serial/8250/8250_pruss.c `.
1524
1625.. rubric :: Supported Driver Features
1726
1827- Baud rates up to 12Mbps
1928- Hardware flow control
2029
21-
2230.. rubric :: Unsupported Driver Features
2331
2432- DMA support
2533
26-
2734.. rubric :: Kernel Config
2835
2936The PRUSS UART Linux kernel driver depends on the PRU-ICSS kernel drivers. So
@@ -46,7 +53,6 @@ module.
4653 Serial drivers --->
4754 <M> TI PRU-ICSS UART support
4855
49-
5056 .. rubric :: Example DT configuration
5157
5258From am335x-evmsk.dts
@@ -61,7 +67,6 @@ From am335x-evmsk.dts
6167 status = "okay";
6268 };
6369
64-
6570 .. rubric :: Driver Usage
6671
6772Once the driver is probed, kernel log shows the following message.
@@ -70,13 +75,15 @@ Once the driver is probed, kernel log shows the following message.
7075
7176 [ 28.617700] 4a328000.serial: ttyS1 at MMIO 0x4a328000 (irq = 77, base_baud = 12000000) is a 16550A
7277
73- Therefore the device node /dev/ttyS1 is associated to the PRUSS UART, user
74- space application can read/write this serial port. For detalls please refer
75- to :ref: `kernel uart driver usage <linux-kernel-omap-uart-driver-usage >`.
78+ Therefore the device node /dev/ttyS1 is associated with PRUSS UART and
79+ user- space applications can read/write to this serial port. For details,
80+ please refer to :ref: `kernel uart driver usage <linux-kernel-omap-uart-driver-usage >`.
7681
7782.. note ::
7883
79- The index in ttyS1 could vary depending on the serial alias configuration
80- in the device tree.
84+ The index in ttyS1 could vary depending on the serial alias configuration
85+ in the device tree.
8186
87+ .. note ::
8288
89+ PRU cores do not need to be initialized in order for Linux to use the HW UART.
0 commit comments