[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