[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2 3/5] arm/early-printk: move UART base address to Rules.mk



On 05/24/2013 02:47 PM, Andre Przywara wrote:

> The UART memory mapped base address is currently hardcoded in the
> early-printk UART driver, which denies the driver to be used by
> two machines with a different mapping.
> Move this definition out to xen/arch/arm/Rules.mk, allowing easier
> user access and later sharing of the driver.
> 
> Signed-off-by: Andre Przywara <andre.przywara@xxxxxxxxxxx>

Reviewed-by: Julien Grall <julien.grall@xxxxxxxxxx>

> ---
>  docs/misc/arm/early-printk.txt          | 2 +-
>  xen/arch/arm/Rules.mk                   | 4 +++-
>  xen/arch/arm/arm32/debug-exynos4210.inc | 2 --
>  xen/arch/arm/arm32/debug-pl011.inc      | 2 --
>  xen/arch/arm/arm64/debug-pl011.inc      | 2 --
>  5 files changed, 4 insertions(+), 8 deletions(-)
> 
> diff --git a/docs/misc/arm/early-printk.txt b/docs/misc/arm/early-printk.txt
> index 965add5..9220113 100644
> --- a/docs/misc/arm/early-printk.txt
> +++ b/docs/misc/arm/early-printk.txt
> @@ -12,7 +12,7 @@ where mach is the name of the machine:
>    - vexpress: printk with pl011 for versatile express
>    - exynos5250: printk with the second UART
>  
> -The baud rate is hardcoded in xen/arch/arm/Rules.mk,
> +The base address and baud rate is hardcoded in xen/arch/arm/Rules.mk,
>  see there when adding support for new machines.
>  If not explicitly requested with "EARLY_PRINTK_INIT_UART := y" in Rules.mk,
>  the code will not try to initialize the UART, so that bootloader or
> diff --git a/xen/arch/arm/Rules.mk b/xen/arch/arm/Rules.mk
> index fdcf73e..902bddb 100644
> --- a/xen/arch/arm/Rules.mk
> +++ b/xen/arch/arm/Rules.mk
> @@ -42,15 +42,16 @@ EARLY_PRINTK := n
>  ifeq ($(debug),y)
>  
>  # Early printk for versatile express
> -# TODO handle UART base address from make command line
>  ifeq ($(CONFIG_EARLY_PRINTK), vexpress)
>  EARLY_PRINTK_INC := pl011
>  EARLY_PRINTK_BAUD := 38400
> +EARLY_UART_BASE_ADDRESS := 0x1c090000
>  endif
>  ifeq ($(CONFIG_EARLY_PRINTK), exynos5250)
>  EARLY_PRINTK_INC := exynos4210
>  EARLY_PRINTK_INIT_UART := y
>  EARLY_PRINTK_BAUD := 115200
> +EARLY_UART_BASE_ADDRESS := 0x12c20000
>  endif
>  
>  ifneq ($(EARLY_PRINTK_INC),)
> @@ -61,4 +62,5 @@ CFLAGS-$(EARLY_PRINTK) += -DEARLY_PRINTK
>  CFLAGS-$(EARLY_PRINTK_INIT_UART) += -DEARLY_PRINTK_INIT_UART
>  CFLAGS-$(EARLY_PRINTK) += 
> -DEARLY_PRINTK_INC=\"debug-$(EARLY_PRINTK_INC).inc\"
>  CFLAGS-$(EARLY_PRINTK) += -DEARLY_PRINTK_BAUD=$(EARLY_PRINTK_BAUD)
> +CFLAGS-$(EARLY_PRINTK) += 
> -DEARLY_UART_BASE_ADDRESS=$(EARLY_UART_BASE_ADDRESS)
>  endif
> diff --git a/xen/arch/arm/arm32/debug-exynos4210.inc 
> b/xen/arch/arm/arm32/debug-exynos4210.inc
> index 4922148..d746c35 100644
> --- a/xen/arch/arm/arm32/debug-exynos4210.inc
> +++ b/xen/arch/arm/arm32/debug-exynos4210.inc
> @@ -18,8 +18,6 @@
>  
>  #include <asm/exynos4210-uart.h>
>  
> -#define EARLY_UART_BASE_ADDRESS 0x12c20000
> -
>  /* Exynos 5 UART initialization
>   * rb: register which contains the UART base address
>   * rc: scratch register 1
> diff --git a/xen/arch/arm/arm32/debug-pl011.inc 
> b/xen/arch/arm/arm32/debug-pl011.inc
> index 2d970ea..8b085b8 100644
> --- a/xen/arch/arm/arm32/debug-pl011.inc
> +++ b/xen/arch/arm/arm32/debug-pl011.inc
> @@ -16,8 +16,6 @@
>   * GNU General Public License for more details.
>   */
>  
> -#define EARLY_UART_BASE_ADDRESS 0x1c090000
> -
>  /* PL011 UART initialization
>   * rb: register which contains the UART base address
>   * rc: scratch register 1
> diff --git a/xen/arch/arm/arm64/debug-pl011.inc 
> b/xen/arch/arm/arm64/debug-pl011.inc
> index 7220940..b416235 100644
> --- a/xen/arch/arm/arm64/debug-pl011.inc
> +++ b/xen/arch/arm/arm64/debug-pl011.inc
> @@ -18,8 +18,6 @@
>  
>  #include <asm/asm_defns.h>
>  
> -#define EARLY_UART_BASE_ADDRESS 0x1c090000
> -
>  /* PL011 UART initialization
>   * xb: register which containts the UART base address
>   * c: scratch register number */



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.