[PATCH v2 1/2] arm: use DEBUG_UART_PHYS and DEBUG_UART_VIRT for sti LL_UART

Patrice CHOTARD patrice.chotard at st.com
Tue Oct 6 03:06:47 EDT 2020


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 at 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 at st.com>

Thanks

Patrice


More information about the linux-arm-kernel mailing list