aboutsummaryrefslogtreecommitdiff
path: root/plat/rpi/rpi4
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@arm.com>2020-03-11 15:18:03 +0000
committerAndre Przywara <andre.przywara@arm.com>2020-03-17 13:44:55 +0000
commit9cc3fa1b8ae31c18fd3a6070b782b3384590523e (patch)
tree48cee2fee944d1c2bd262b4785258eb7630c4187 /plat/rpi/rpi4
parent29e8c460664c88dc3834813d94785fbf6e27b8d1 (diff)
downloadarm-trusted-firmware-9cc3fa1b8ae31c18fd3a6070b782b3384590523e.tar.gz
rpi: console: Autodetect Mini-UART vs. PL011 configuration
The Raspberry Pi has two different UART devices pin-muxed to GPIO 14&15: One ARM PL011 one and the 8250 compatible "Mini-UART". A dtoverlay parameter in config.txt will tell the firmware to switch between the two: it will setup the right clocks and will configure the pinmuxes accordingly. To autodetect the user's choice, we read the pinmux register and check its setting: ALT5 (0x2) means the Mini-UART is used, ALT0 (0x4) points to the PL011. Based on that we select the UART driver to initialise. This will allow console output in any case. Change-Id: I620d3ce68de6c6576599f2a405636020e1fd1376 Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Diffstat (limited to 'plat/rpi/rpi4')
-rw-r--r--plat/rpi/rpi4/platform.mk3
1 files changed, 3 insertions, 0 deletions
diff --git a/plat/rpi/rpi4/platform.mk b/plat/rpi/rpi4/platform.mk
index 28fcda8b0..49e78dfed 100644
--- a/plat/rpi/rpi4/platform.mk
+++ b/plat/rpi/rpi4/platform.mk
@@ -21,6 +21,9 @@ BL31_SOURCES += lib/cpus/aarch64/cortex_a72.S \
drivers/arm/gic/common/gic_common.c \
drivers/arm/gic/v2/gicv2_helpers.c \
drivers/arm/gic/v2/gicv2_main.c \
+ drivers/delay_timer/delay_timer.c \
+ drivers/gpio/gpio.c \
+ drivers/rpi3/gpio/rpi3_gpio.c \
plat/common/plat_gicv2.c \
plat/rpi/rpi4/rpi4_bl31_setup.c \
plat/rpi/common/rpi3_pm.c \