Skip to content

Commit 1ba9317

Browse files
jmentiStaticRocket
authored andcommitted
fix(linux): Enable PRU HW UART doc for am62x and am64x
PRU HW UART support exists for AM62x and AM64x SK board, enable documentation for these platforms and update rst to accommodate the new platforms. Fix a few other misc issues while we are here, including whitespace, mispelling, and missing inline role issues. Signed-off-by: Judith Mendez <jm@ti.com>
1 parent d0b4ede commit 1ba9317

3 files changed

Lines changed: 23 additions & 14 deletions

File tree

configs/AM62X/AM62X_linux_toc.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ linux/Foundational_Components_PRU_Subsystem
108108
linux/Foundational_Components/PRU-ICSS-Linux-Drivers
109109
linux/Foundational_Components/PRU-ICSS/Linux_Drivers/RemoteProc
110110
linux/Foundational_Components/PRU-ICSS/Linux_Drivers/RPMsg
111+
linux/Foundational_Components/PRU-ICSS/Linux_Drivers/pruss-uart
111112
linux/Foundational_Components/PRU-ICSS/RPMsg_Quick_Start_Guide
112113
linux/Foundational_Components/PRU-ICSS-Hardware
113114
linux/Foundational_Components/PRU-ICSS/PRU-EVMs

configs/AM64X/AM64X_linux_toc.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@ linux/Foundational_Components/PRU-ICSS/Linux_Drivers/RemoteProc
112112
linux/Foundational_Components/PRU-ICSS/Linux_Drivers/PRU_ICSSG_Ethernet
113113
linux/Foundational_Components/PRU-ICSS/Linux_Drivers/PRU_ICSSG_Ethernet_Switch
114114
linux/Foundational_Components/PRU-ICSS/Linux_Drivers/RPMsg
115+
linux/Foundational_Components/PRU-ICSS/Linux_Drivers/pruss-uart
115116
linux/Foundational_Components/PRU-ICSS/Linux_Drivers/PRU_ICSSG_XDP
116117
linux/Foundational_Components/PRU-ICSS/RPMsg_Quick_Start_Guide
117118
linux/Foundational_Components/PRU-ICSS-Hardware

source/linux/Foundational_Components/PRU-ICSS/Linux_Drivers/pruss-uart.rst

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -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

2936
The 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

5258
From am335x-evmsk.dts
@@ -61,7 +67,6 @@ From am335x-evmsk.dts
6167
status = "okay";
6268
};
6369
64-
6570
.. rubric:: Driver Usage
6671

6772
Once 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

Comments
 (0)