==== ARM Amba UART ====
{{:interfaces:amba.jpg?200}}
These UARTs are found on systems such as the Raspberry Pi.
=== RPi ===
The following guide is very old now and has mostly become obsolete.
By default, the UART is used as the Linux console, this must be disabled to allow general purpose operation.
The following script run as root can solve this.
#!/bin/sh
C=`awk '{ for (i = 1; i <= NF; ++i) { if ($i !~ /ttyAMA0/) { printf $i" " } } printf "\n" }' /boot/cmdline.txt`
echo $C > /boot/cmdline.txt
sed -i 's/^T0:23:respawn:/#T0:23:respawn:/' /etc/inittab
High speed modes of operation are also not enabled by default and these should be enabled.
echo "init_uart_clock=64000000" >> /boot/config.txt
Reboot the RPi to apply all the settings.
===RPi 3===
The RPi 3 uses the UART for comms with the the built-in bluetooth module and presents a simple "mini-uart" on the regular pins.
To swap the ports around to gain access to the faster port, do the following in config.txt
dtoverlay=pi3-miniuart-bt
=== Resources ===
[[http://infocenter.arm.com/help/topic/com.arm.doc.ddi0183f/DDI0183.pdf|Manual]]
[[http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf|Peripherals]]