Message ID | 20200830195748.30221-2-avolmat@me.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm: sti: LL_UART updates & STiH418 addition | expand |
Hi Alain On 8/30/20 9:57 PM, Alain Volmat wrote: > Update the sti platform LL_UART support to rely on > CONFIG_DEBUG_UART_PHYS and CONFIG_DEBUG_UART_VIRT from Kconfig > > Signed-off-by: Alain Volmat <avolmat@me.com> > --- > arch/arm/Kconfig.debug | 23 ++++++++++++----------- > arch/arm/include/debug/sti.S | 26 ++------------------------ > 2 files changed, 14 insertions(+), 35 deletions(-) > > diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug > index 80000a66a4e3..e97d6e5c8898 100644 > --- a/arch/arm/Kconfig.debug > +++ b/arch/arm/Kconfig.debug > @@ -1184,10 +1184,9 @@ choice > Say Y here if you want kernel low-level debugging support > on ST SPEAr13xx based platforms. > > - config STIH41X_DEBUG_ASC2 > + config DEBUG_STIH41X_ASC2 > bool "Use StiH415/416 ASC2 UART for low-level debug" > depends on ARCH_STI > - select DEBUG_STI_UART > help > Say Y here if you want kernel low-level debugging support > on STiH415/416 based platforms like b2000, which has > @@ -1195,10 +1194,9 @@ choice > > If unsure, say N. > > - config STIH41X_DEBUG_SBC_ASC1 > + config DEBUG_STIH41X_SBC_ASC1 > bool "Use StiH415/416 SBC ASC1 UART for low-level debug" > depends on ARCH_STI > - select DEBUG_STI_UART > help > Say Y here if you want kernel low-level debugging support > on STiH415/416 based platforms like b2020. which has > @@ -1534,10 +1532,6 @@ config DEBUG_TEGRA_UART > bool > depends on ARCH_TEGRA > > -config DEBUG_STI_UART > - bool > - depends on ARCH_STI > - > config DEBUG_STM32_UART > bool > depends on ARCH_STM32 > @@ -1591,7 +1585,8 @@ config DEBUG_LL_INCLUDE > default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART > default "debug/s5pv210.S" if DEBUG_S5PV210_UART > default "debug/sirf.S" if DEBUG_SIRFSOC_UART > - default "debug/sti.S" if DEBUG_STI_UART > + default "debug/sti.S" if DEBUG_STIH41X_ASC2 > + default "debug/sti.S" if DEBUG_STIH41X_SBC_ASC1 > default "debug/stm32.S" if DEBUG_STM32_UART > default "debug/tegra.S" if DEBUG_TEGRA_UART > default "debug/ux500.S" if DEBUG_UX500_UART > @@ -1723,7 +1718,9 @@ config DEBUG_UART_PHYS > default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3 > default 0xfcb00000 if DEBUG_HI3620_UART > default 0xfd883000 if DEBUG_ALPINE_UART0 > + default 0xfe531000 if DEBUG_STIH41X_SBC_ASC1 > default 0xfe800000 if ARCH_IOP32X > + default 0xfed32000 if DEBUG_STIH41X_ASC2 > default 0xff690000 if DEBUG_RK32_UART2 > default 0xffc02000 if DEBUG_SOCFPGA_UART0 > default 0xffc02100 if DEBUG_SOCFPGA_ARRIA10_UART1 > @@ -1752,7 +1749,8 @@ config DEBUG_UART_PHYS > DEBUG_S3C64XX_UART || \ > DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \ > DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ > - DEBUG_AT91_UART || DEBUG_STM32_UART > + DEBUG_AT91_UART || DEBUG_STM32_UART || \ > + DEBUG_STIH41X_ASC2 || DEBUG_STIH41X_SBC_ASC1 > > config DEBUG_UART_VIRT > hex "Virtual base address of debug UART" > @@ -1817,7 +1815,9 @@ config DEBUG_UART_VIRT > default 0xfc705000 if DEBUG_ZTE_ZX > default 0xfcfe8600 if DEBUG_BCM63XX_UART > default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX > + default 0xfd531000 if DEBUG_STIH41X_SBC_ASC1 > default 0xfd883000 if DEBUG_ALPINE_UART0 > + default 0xfdd32000 if DEBUG_STIH41X_ASC2 > default 0xfe010000 if STM32MP1_DEBUG_UART > default 0xfe017000 if DEBUG_MMP_UART2 > default 0xfe018000 if DEBUG_MMP_UART3 > @@ -1863,7 +1863,8 @@ config DEBUG_UART_VIRT > DEBUG_S3C64XX_UART || \ > DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \ > DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ > - DEBUG_AT91_UART || DEBUG_STM32_UART > + DEBUG_AT91_UART || DEBUG_STM32_UART || \ > + DEBUG_STIH41X_ASC2 || DEBUG_STIH41X_SBC_ASC1 > > config DEBUG_UART_8250_SHIFT > int "Register offset shift for the 8250 debug UART" > diff --git a/arch/arm/include/debug/sti.S b/arch/arm/include/debug/sti.S > index 6b42c91f217d..a903a60b81c6 100644 > --- a/arch/arm/include/debug/sti.S > +++ b/arch/arm/include/debug/sti.S > @@ -6,28 +6,6 @@ > * Copyright (C) 2013 STMicroelectronics (R&D) Limited. > */ > > -#define STIH41X_COMMS_BASE 0xfed00000 > -#define STIH41X_ASC2_BASE (STIH41X_COMMS_BASE+0x32000) > - > -#define STIH41X_SBC_LPM_BASE 0xfe400000 > -#define STIH41X_SBC_COMMS_BASE (STIH41X_SBC_LPM_BASE + 0x100000) > -#define STIH41X_SBC_ASC1_BASE (STIH41X_SBC_COMMS_BASE + 0x31000) > - > - > -#define VIRT_ADDRESS(x) (x - 0x1000000) > - > -#if IS_ENABLED(CONFIG_STIH41X_DEBUG_ASC2) > -#define DEBUG_LL_UART_BASE STIH41X_ASC2_BASE > -#endif > - > -#if IS_ENABLED(CONFIG_STIH41X_DEBUG_SBC_ASC1) > -#define DEBUG_LL_UART_BASE STIH41X_SBC_ASC1_BASE > -#endif > - > -#ifndef DEBUG_LL_UART_BASE > -#error "DEBUG UART is not Configured" > -#endif > - > #define ASC_TX_BUF_OFF 0x04 > #define ASC_CTRL_OFF 0x0c > #define ASC_STA_OFF 0x14 > @@ -37,8 +15,8 @@ > > > .macro addruart, rp, rv, tmp > - ldr \rp, =DEBUG_LL_UART_BASE @ physical base > - ldr \rv, =VIRT_ADDRESS(DEBUG_LL_UART_BASE) @ virt base > + ldr \rp, =CONFIG_DEBUG_UART_PHYS @ physical base > + ldr \rv, =CONFIG_DEBUG_UART_VIRT @ virt base > .endm > > .macro senduart,rd,rx Reviewed-by: Patrice Chotard <patrice.chotard@st.com> Thanks Patrice
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug index 80000a66a4e3..e97d6e5c8898 100644 --- a/arch/arm/Kconfig.debug +++ b/arch/arm/Kconfig.debug @@ -1184,10 +1184,9 @@ choice Say Y here if you want kernel low-level debugging support on ST SPEAr13xx based platforms. - config STIH41X_DEBUG_ASC2 + config DEBUG_STIH41X_ASC2 bool "Use StiH415/416 ASC2 UART for low-level debug" depends on ARCH_STI - select DEBUG_STI_UART help Say Y here if you want kernel low-level debugging support on STiH415/416 based platforms like b2000, which has @@ -1195,10 +1194,9 @@ choice If unsure, say N. - config STIH41X_DEBUG_SBC_ASC1 + config DEBUG_STIH41X_SBC_ASC1 bool "Use StiH415/416 SBC ASC1 UART for low-level debug" depends on ARCH_STI - select DEBUG_STI_UART help Say Y here if you want kernel low-level debugging support on STiH415/416 based platforms like b2020. which has @@ -1534,10 +1532,6 @@ config DEBUG_TEGRA_UART bool depends on ARCH_TEGRA -config DEBUG_STI_UART - bool - depends on ARCH_STI - config DEBUG_STM32_UART bool depends on ARCH_STM32 @@ -1591,7 +1585,8 @@ config DEBUG_LL_INCLUDE default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART default "debug/s5pv210.S" if DEBUG_S5PV210_UART default "debug/sirf.S" if DEBUG_SIRFSOC_UART - default "debug/sti.S" if DEBUG_STI_UART + default "debug/sti.S" if DEBUG_STIH41X_ASC2 + default "debug/sti.S" if DEBUG_STIH41X_SBC_ASC1 default "debug/stm32.S" if DEBUG_STM32_UART default "debug/tegra.S" if DEBUG_TEGRA_UART default "debug/ux500.S" if DEBUG_UX500_UART @@ -1723,7 +1718,9 @@ config DEBUG_UART_PHYS default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3 default 0xfcb00000 if DEBUG_HI3620_UART default 0xfd883000 if DEBUG_ALPINE_UART0 + default 0xfe531000 if DEBUG_STIH41X_SBC_ASC1 default 0xfe800000 if ARCH_IOP32X + default 0xfed32000 if DEBUG_STIH41X_ASC2 default 0xff690000 if DEBUG_RK32_UART2 default 0xffc02000 if DEBUG_SOCFPGA_UART0 default 0xffc02100 if DEBUG_SOCFPGA_ARRIA10_UART1 @@ -1752,7 +1749,8 @@ config DEBUG_UART_PHYS DEBUG_S3C64XX_UART || \ DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \ DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ - DEBUG_AT91_UART || DEBUG_STM32_UART + DEBUG_AT91_UART || DEBUG_STM32_UART || \ + DEBUG_STIH41X_ASC2 || DEBUG_STIH41X_SBC_ASC1 config DEBUG_UART_VIRT hex "Virtual base address of debug UART" @@ -1817,7 +1815,9 @@ config DEBUG_UART_VIRT default 0xfc705000 if DEBUG_ZTE_ZX default 0xfcfe8600 if DEBUG_BCM63XX_UART default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX + default 0xfd531000 if DEBUG_STIH41X_SBC_ASC1 default 0xfd883000 if DEBUG_ALPINE_UART0 + default 0xfdd32000 if DEBUG_STIH41X_ASC2 default 0xfe010000 if STM32MP1_DEBUG_UART default 0xfe017000 if DEBUG_MMP_UART2 default 0xfe018000 if DEBUG_MMP_UART3 @@ -1863,7 +1863,8 @@ config DEBUG_UART_VIRT DEBUG_S3C64XX_UART || \ DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \ DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ - DEBUG_AT91_UART || DEBUG_STM32_UART + DEBUG_AT91_UART || DEBUG_STM32_UART || \ + DEBUG_STIH41X_ASC2 || DEBUG_STIH41X_SBC_ASC1 config DEBUG_UART_8250_SHIFT int "Register offset shift for the 8250 debug UART" diff --git a/arch/arm/include/debug/sti.S b/arch/arm/include/debug/sti.S index 6b42c91f217d..a903a60b81c6 100644 --- a/arch/arm/include/debug/sti.S +++ b/arch/arm/include/debug/sti.S @@ -6,28 +6,6 @@ * Copyright (C) 2013 STMicroelectronics (R&D) Limited. */ -#define STIH41X_COMMS_BASE 0xfed00000 -#define STIH41X_ASC2_BASE (STIH41X_COMMS_BASE+0x32000) - -#define STIH41X_SBC_LPM_BASE 0xfe400000 -#define STIH41X_SBC_COMMS_BASE (STIH41X_SBC_LPM_BASE + 0x100000) -#define STIH41X_SBC_ASC1_BASE (STIH41X_SBC_COMMS_BASE + 0x31000) - - -#define VIRT_ADDRESS(x) (x - 0x1000000) - -#if IS_ENABLED(CONFIG_STIH41X_DEBUG_ASC2) -#define DEBUG_LL_UART_BASE STIH41X_ASC2_BASE -#endif - -#if IS_ENABLED(CONFIG_STIH41X_DEBUG_SBC_ASC1) -#define DEBUG_LL_UART_BASE STIH41X_SBC_ASC1_BASE -#endif - -#ifndef DEBUG_LL_UART_BASE -#error "DEBUG UART is not Configured" -#endif - #define ASC_TX_BUF_OFF 0x04 #define ASC_CTRL_OFF 0x0c #define ASC_STA_OFF 0x14 @@ -37,8 +15,8 @@ .macro addruart, rp, rv, tmp - ldr \rp, =DEBUG_LL_UART_BASE @ physical base - ldr \rv, =VIRT_ADDRESS(DEBUG_LL_UART_BASE) @ virt base + ldr \rp, =CONFIG_DEBUG_UART_PHYS @ physical base + ldr \rv, =CONFIG_DEBUG_UART_VIRT @ virt base .endm .macro senduart,rd,rx
Update the sti platform LL_UART support to rely on CONFIG_DEBUG_UART_PHYS and CONFIG_DEBUG_UART_VIRT from Kconfig Signed-off-by: Alain Volmat <avolmat@me.com> --- arch/arm/Kconfig.debug | 23 ++++++++++++----------- arch/arm/include/debug/sti.S | 26 ++------------------------ 2 files changed, 14 insertions(+), 35 deletions(-)