18c2ecf20Sopenharmony_ciNVIDIA Tegra Combined UART (TCU)
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciThe TCU is a system for sharing a hardware UART instance among multiple
48c2ecf20Sopenharmony_cisystems within the Tegra SoC. It is implemented through a mailbox-
58c2ecf20Sopenharmony_cibased protocol where each "virtual UART" has a pair of mailboxes, one
68c2ecf20Sopenharmony_cifor transmitting and one for receiving, that is used to communicate
78c2ecf20Sopenharmony_ciwith the hardware implementing the TCU.
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciRequired properties:
108c2ecf20Sopenharmony_ci- name : Should be tcu
118c2ecf20Sopenharmony_ci- compatible
128c2ecf20Sopenharmony_ci    Array of strings
138c2ecf20Sopenharmony_ci    One of:
148c2ecf20Sopenharmony_ci    - "nvidia,tegra194-tcu"
158c2ecf20Sopenharmony_ci- mbox-names:
168c2ecf20Sopenharmony_ci    "rx" - Mailbox for receiving data from hardware UART
178c2ecf20Sopenharmony_ci    "tx" - Mailbox for transmitting data to hardware UART
188c2ecf20Sopenharmony_ci- mboxes: Mailboxes corresponding to the mbox-names.
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciThis node is a mailbox consumer. See the following files for details of
218c2ecf20Sopenharmony_cithe mailbox subsystem, and the specifiers implemented by the relevant
228c2ecf20Sopenharmony_ciprovider(s):
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci- .../mailbox/mailbox.txt
258c2ecf20Sopenharmony_ci- .../mailbox/nvidia,tegra186-hsp.txt
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ciExample bindings:
288c2ecf20Sopenharmony_ci-----------------
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_citcu: tcu {
318c2ecf20Sopenharmony_ci	compatible = "nvidia,tegra194-tcu";
328c2ecf20Sopenharmony_ci	mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_SM 0>,
338c2ecf20Sopenharmony_ci	         <&hsp_aon TEGRA_HSP_MBOX_TYPE_SM 1>;
348c2ecf20Sopenharmony_ci	mbox-names = "rx", "tx";
358c2ecf20Sopenharmony_ci};
36