diff options
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/boards/nxp-imx8mm-evk/lowlevel.c | 10 | ||||
-rw-r--r-- | arch/arm/boards/nxp-imx8mp-evk/lowlevel.c | 9 | ||||
-rw-r--r-- | arch/arm/boards/nxp-imx8mq-evk/lowlevel.c | 8 | ||||
-rw-r--r-- | arch/arm/boards/phytec-som-imx8mq/lowlevel.c | 9 | ||||
-rw-r--r-- | arch/arm/boards/sama5d27-giantboard/board.c | 4 | ||||
-rw-r--r-- | arch/arm/boards/zii-imx8mq-dev/lowlevel.c | 10 | ||||
-rw-r--r-- | arch/arm/mach-at91/Makefile | 3 | ||||
-rw-r--r-- | arch/arm/mach-imx/include/mach/debug_ll.h | 2 |
8 files changed, 35 insertions, 20 deletions
diff --git a/arch/arm/boards/nxp-imx8mm-evk/lowlevel.c b/arch/arm/boards/nxp-imx8mm-evk/lowlevel.c index 082aefb8c1..2297dc01e7 100644 --- a/arch/arm/boards/nxp-imx8mm-evk/lowlevel.c +++ b/arch/arm/boards/nxp-imx8mm-evk/lowlevel.c @@ -28,16 +28,16 @@ extern char __dtb_imx8mm_evk_start[]; static void setup_uart(void) { + void __iomem *uart = IOMEM(MX8M_UART2_BASE_ADDR); + imx8m_early_setup_uart_clock(); imx8mm_setup_pad(IMX8MM_PAD_UART2_TXD_UART2_TX | UART_PAD_CTRL); + imx8m_uart_setup(uart); - imx8mq_uart_setup((void *)MX8M_UART2_BASE_ADDR); + pbl_set_putc(imx_uart_putc, uart); - if (IS_ENABLED(CONFIG_DEBUG_LL)) { - imx8m_uart_setup_ll(); - putc_ll('>'); - } + putc_ll('>'); } static void pmic_reg_write(void *i2c, int reg, uint8_t val) diff --git a/arch/arm/boards/nxp-imx8mp-evk/lowlevel.c b/arch/arm/boards/nxp-imx8mp-evk/lowlevel.c index 5df1ed0780..e4f994a1d1 100644 --- a/arch/arm/boards/nxp-imx8mp-evk/lowlevel.c +++ b/arch/arm/boards/nxp-imx8mp-evk/lowlevel.c @@ -34,11 +34,15 @@ extern char __dtb_imx8mp_evk_start[]; static void setup_uart(void) { + void __iomem *uart = IOMEM(MX8M_UART2_BASE_ADDR); + imx8m_early_setup_uart_clock(); imx8mp_setup_pad(MX8MP_PAD_UART2_TXD__UART2_DCE_TX | UART_PAD_CTRL); imx8mp_setup_pad(MX8MP_PAD_UART2_RXD__UART2_DCE_RX | UART_PAD_CTRL); - imx8m_uart_setup_ll(); + imx8m_uart_setup(uart); + + pbl_set_putc(imx_uart_putc, uart); putc_ll('>'); } @@ -163,8 +167,7 @@ static void start_atf(void) */ static __noreturn noinline void nxp_imx8mp_evk_start(void) { - if (IS_ENABLED(CONFIG_DEBUG_LL)) - setup_uart(); + setup_uart(); start_atf(); diff --git a/arch/arm/boards/nxp-imx8mq-evk/lowlevel.c b/arch/arm/boards/nxp-imx8mq-evk/lowlevel.c index 39358afad1..564621abef 100644 --- a/arch/arm/boards/nxp-imx8mq-evk/lowlevel.c +++ b/arch/arm/boards/nxp-imx8mq-evk/lowlevel.c @@ -26,11 +26,14 @@ extern char __dtb_imx8mq_evk_start[]; static void setup_uart(void) { + void __iomem *uart = IOMEM(MX8M_UART1_BASE_ADDR); + imx8m_early_setup_uart_clock(); imx8mq_setup_pad(IMX8MQ_PAD_UART1_TXD__UART1_TX | UART_PAD_CTRL); + imx8m_uart_setup(uart); - imx8m_uart_setup_ll(); + pbl_set_putc(imx_uart_putc, uart); putc_ll('>'); } @@ -53,8 +56,7 @@ static void setup_uart(void) */ static __noreturn noinline void nxp_imx8mq_evk_start(void) { - if (IS_ENABLED(CONFIG_DEBUG_LL)) - setup_uart(); + setup_uart(); /* * If we are in EL3 we are running for the first time and need to diff --git a/arch/arm/boards/phytec-som-imx8mq/lowlevel.c b/arch/arm/boards/phytec-som-imx8mq/lowlevel.c index f5b9b6c008..05226866f8 100644 --- a/arch/arm/boards/phytec-som-imx8mq/lowlevel.c +++ b/arch/arm/boards/phytec-som-imx8mq/lowlevel.c @@ -29,11 +29,15 @@ extern char __dtb_imx8mq_phytec_phycore_som_start[]; static void setup_uart(void) { + void __iomem *uart = IOMEM(MX8M_UART1_BASE_ADDR); + imx8m_early_setup_uart_clock(); imx8mq_setup_pad(IMX8MQ_PAD_UART1_TXD__UART1_TX | UART_PAD_CTRL); - imx8m_uart_setup_ll(); + imx8m_uart_setup(uart); + + pbl_set_putc(imx_uart_putc, uart); putc_ll('>'); } @@ -56,8 +60,7 @@ static void phytec_imx8mq_som_sram_setup(void) static __noreturn noinline void phytec_phycore_imx8mq_start(void) { - if (IS_ENABLED(CONFIG_DEBUG_LL)) - setup_uart(); + setup_uart(); if (get_pc() < MX8MQ_DDR_CSD1_BASE_ADDR) { /* diff --git a/arch/arm/boards/sama5d27-giantboard/board.c b/arch/arm/boards/sama5d27-giantboard/board.c index 1d4453ede3..006c6ffad5 100644 --- a/arch/arm/boards/sama5d27-giantboard/board.c +++ b/arch/arm/boards/sama5d27-giantboard/board.c @@ -3,9 +3,13 @@ #include <init.h> #include <envfs.h> #include <bbu.h> +#include <of.h> static int giantboard_device_init(void) { + if (!of_machine_is_compatible("groboards,sama5d27-giantboard")) + return 0; + bbu_register_std_file_update("microSD", BBU_HANDLER_FLAG_DEFAULT, "/mnt/mmc1.0/barebox.bin", filetype_arm_barebox); diff --git a/arch/arm/boards/zii-imx8mq-dev/lowlevel.c b/arch/arm/boards/zii-imx8mq-dev/lowlevel.c index 6400833809..311e61fb1d 100644 --- a/arch/arm/boards/zii-imx8mq-dev/lowlevel.c +++ b/arch/arm/boards/zii-imx8mq-dev/lowlevel.c @@ -28,11 +28,14 @@ static void setup_uart(void) { + void __iomem *uart = IOMEM(MX8M_UART1_BASE_ADDR); + imx8m_early_setup_uart_clock(); imx8mq_setup_pad(IMX8MQ_PAD_UART1_TXD__UART1_TX | UART_PAD_CTRL); + imx8m_uart_setup(uart); - imx8m_uart_setup_ll(); + pbl_set_putc(imx_uart_putc, uart); putc_ll('>'); } @@ -118,6 +121,8 @@ static __noreturn noinline void zii_imx8mq_dev_start(void) unsigned int system_type; void *fdt; + setup_uart(); + if (get_pc() < MX8MQ_DDR_CSD1_BASE_ADDR) { /* * We assume that we were just loaded by MaskROM into @@ -194,9 +199,6 @@ ENTRY_FUNCTION(start_zii_imx8mq_dev, r0, r1, r2) imx8mq_cpu_lowlevel_init(); relocate_to_current_adr(); setup_c(); - - if (IS_ENABLED(CONFIG_DEBUG_LL)) - setup_uart(); zii_imx8mq_dev_start(); } diff --git a/arch/arm/mach-at91/Makefile b/arch/arm/mach-at91/Makefile index ba46c1a16e..9cfba28fa0 100644 --- a/arch/arm/mach-at91/Makefile +++ b/arch/arm/mach-at91/Makefile @@ -1,4 +1,4 @@ -obj-y += setup.o aic.o bootm-barebox.o +obj-y += setup.o aic.o lwl-y += at91_pmc_ll.o ddramc_ll.o matrix.o lwl-$(CONFIG_CLOCKSOURCE_ATMEL_PIT) += early_udelay.o @@ -9,6 +9,7 @@ endif obj-$(CONFIG_CMD_AT91_BOOT_TEST) += boot_test_cmd.o obj-$(CONFIG_AT91_BOOTSTRAP) += bootstrap.o +obj-$(CONFIG_BOOTM) += bootm-barebox.o obj-y += at91sam9_reset.o obj-y += at91sam9g45_reset.o diff --git a/arch/arm/mach-imx/include/mach/debug_ll.h b/arch/arm/mach-imx/include/mach/debug_ll.h index 1593dd018e..a4c57c5d5a 100644 --- a/arch/arm/mach-imx/include/mach/debug_ll.h +++ b/arch/arm/mach-imx/include/mach/debug_ll.h @@ -102,7 +102,7 @@ static inline void imx8m_uart_setup_ll(void) { void *base = IOMEM(IMX_UART_BASE(IMX_DEBUG_SOC, CONFIG_DEBUG_IMX_UART_PORT)); - imx8mq_uart_setup(base); + imx8m_uart_setup(base); } static inline void PUTC_LL(int c) |