[PATCH] ARM: vf610: add UART choice for low-level debug

Shawn Guo shawn.guo at linaro.org
Wed Mar 5 01:11:32 EST 2014


On Tue, Mar 04, 2014 at 12:27:09AM +0100, Stefan Agner wrote:
> Add choice for low-level debug UART. Similar to i.MX6, there is a
> numeric configuration, valid choices are 0 to 3.
> Not that the kernel assumes that the boot loader initialized clock
> properly.
> 
> Signed-off-by: Stefan Agner <stefan at agner.ch>
> ---
>  arch/arm/Kconfig.debug      |  9 +++++++++
>  arch/arm/include/debug/vf.S | 16 ++++++++++++++--
>  2 files changed, 23 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
> index 0531da8..c2005a7 100644
> --- a/arch/arm/Kconfig.debug
> +++ b/arch/arm/Kconfig.debug
> @@ -946,6 +946,15 @@ config DEBUG_IMX_UART_PORT
>  	  Choose UART port on which kernel low-level debug messages
>  	  should be output.
>  
> +config DEBUG_VF_UART_PORT
> +	int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
> +	default 1
> +	range 0 3
> +	depends on SOC_VF610
> +	help
> +	  Choose UART port on which kernel low-level debug messages
> +	  should be output.
> +
>  config DEBUG_TEGRA_UART
>  	bool
>  	depends on ARCH_TEGRA
> diff --git a/arch/arm/include/debug/vf.S b/arch/arm/include/debug/vf.S
> index ba12cc4..4683b7c 100644
> --- a/arch/arm/include/debug/vf.S
> +++ b/arch/arm/include/debug/vf.S
> @@ -7,9 +7,21 @@
>   *
>   */
>  
> +#define VF_UART0_BASE_ADDR	0x40027000
> +#define VF_UART1_BASE_ADDR	0x40028000
> +#define VF_UART2_BASE_ADDR	0x40029000
> +#define VF_UART3_BASE_ADDR	0x4002a000
> +#define VF_UART_BASE_ADDR(n)	VF_UART##n##_BASE_ADDR
> +#define VF_UART_BASE(n)		VF_UART_BASE_ADDR(n)
> +#define VF_UART_PHYSICAL_BASE	VF_UART_BASE(CONFIG_DEBUG_VF_UART_PORT)
> +
> +#define VF_UART_VIRTUAL_BASE	0xfe000000
> +
> +

One new line is good enough.

>  	.macro	addruart, rp, rv, tmp
> -	ldr	\rp, =0x40028000	@ physical
> -	ldr	\rv, =0xfe028000	@ virtual
> +	ldr	\rp, =(VF_UART_PHYSICAL_BASE) 	@ physical

The parentheses is unnecessary.

Shawn

> +	and	\rv, \rp, #0xffffff		@ offset within 16MB section
> +	add	\rv, \rv, #VF_UART_VIRTUAL_BASE
>  	.endm
>  
>  	.macro	senduart, rd, rx
> -- 
> 1.9.0
> 




More information about the linux-arm-kernel mailing list