[U-Boot] [PATCH v2 4/4] am335x_evm: Enable use of UART{1, 2, 3, 4, 5}

Andrew Bradford andrew at bradfordembedded.com
Wed Oct 24 17:41:39 CEST 2012


On Mon, 22 Oct 2012 15:23:29 -0400
Andrew Bradford <andrew at bradfordembedded.com> wrote:

> Add targets of am335x_evm_uart{1,2,3,4,5} to have serial input/output
> on UART{1,2,3,4,5} for use with the Beaglebone RS232 cape, am335x_evm
> daughterboard, and other custom configurations.
> 
> Signed-off-by: Andrew Bradford <andrew at bradfordembedded.com>
> Tested-by: Matt Porter <mporter at ti.com>
> ---
> Changes from v1:
> 	Add UART3 target and register location
> 
>  boards.cfg                   |    5 +++++
>  include/configs/am335x_evm.h |   33 ++++++++++++++++++++++++++++++++-
>  2 files changed, 37 insertions(+), 1 deletion(-)
> 
> diff --git a/boards.cfg b/boards.cfg
> index df62251..0944690 100644
> --- a/boards.cfg
> +++ b/boards.cfg
> @@ -226,6 +226,11 @@ integratorap_cm946es         arm
> arm946es    integrator          armltd integratorcp_cm946es
> arm         arm946es    integrator          armltd
> -               integratorcp:CM946ES ca9x4_ct_vxp
> arm         armv7       vexpress            armltd
> am335x_evm                   arm         armv7
> am335x              ti             am33xx
> +am335x_evm_uart1             arm         armv7
> am335x              ti             am33xx
> am335x_evm:AM33XX_UART_SELECT=1 +am335x_evm_uart2
> arm         armv7       am335x              ti
> am33xx      am335x_evm:AM33XX_UART_SELECT=2
> +am335x_evm_uart3             arm         armv7
> am335x              ti             am33xx
> am335x_evm:AM33XX_UART_SELECT=3 +am335x_evm_uart4
> arm         armv7       am335x              ti
> am33xx      am335x_evm:AM33XX_UART_SELECT=4
> +am335x_evm_uart5             arm         armv7
> am335x              ti             am33xx
> am335x_evm:AM33XX_UART_SELECT=5 highbank
> arm         armv7       highbank            -              highbank
> mx51_efikamx                 arm         armv7
> mx51_efikamx        genesi         mx5
> mx51_efikamx:MACH_TYPE=MACH_TYPE_MX51_EFIKAMX,IMX_CONFIG=board/genesi/mx51_efikamx/imximage_mx.cfg
> mx51_efikasb                 arm         armv7
> mx51_efikamx        genesi         mx5
> mx51_efikamx:MACH_TYPE=MACH_TYPE_MX51_EFIKASB,IMX_CONFIG=board/genesi/mx51_efikamx/imximage_sb.cfg
> diff --git a/include/configs/am335x_evm.h
> b/include/configs/am335x_evm.h index 339d4bd..d138e45 100644 ---
> a/include/configs/am335x_evm.h +++ b/include/configs/am335x_evm.h @@
> -158,9 +158,15 @@ /* NS16550 Configuration */ #define
> CONFIG_SYS_NS16550 #define CONFIG_SYS_NS16550_SERIAL +#define
> CONFIG_SERIAL_MULTI #define CONFIG_SYS_NS16550_REG_SIZE	(-4)
> #define CONFIG_SYS_NS16550_CLK		(48000000) #define
> CONFIG_SYS_NS16550_COM1		0x44e09000	/* Base EVM
> has UART0 */ +#define CONFIG_SYS_NS16550_COM2
> 0x48022000	/* UART1 */ +#define
> CONFIG_SYS_NS16550_COM3		0x48024000	/* UART2 */
> +#define CONFIG_SYS_NS16550_COM4		0x481a6000	/*
> UART3 */ +#define CONFIG_SYS_NS16550_COM5
> 0x481a8000	/* UART4 */ +#define
> CONFIG_SYS_NS16550_COM6		0x481aa000	/* UART5
> */ /* I2C Configuration */ #define CONFIG_I2C @@ -182,11 +188,36 @@
> #define CONFIG_SYS_BAUDRATE_TABLE	{ 110, 300, 600, 1200, 2400,
> \ 4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 }
> +#define CONFIG_ENV_OVERWRITE		1 + /*
> - * select serial console configuration
> + * select serial console configuration, uart0 always enabled
>   */
>  #define CONFIG_SERIAL1			1
> +#ifndef CONFIG_AM33XX_UART_SELECT
>  #define CONFIG_CONS_INDEX		1
> +#endif /* CONFIG_AM33XX_UART_SELECT */
> +
> +#if CONFIG_AM33XX_UART_SELECT == 1
> +#define CONFIG_SERIAL2			1
> +#define CONFIG_CONS_INDEX		2
> +#endif /* CONFIG_AM33XX_UART_SELECT == 1 */
> +#if CONFIG_AM33XX_UART_SELECT == 2
> +#define CONFIG_SERIAL3			1
> +#define CONFIG_CONS_INDEX		3
> +#endif /* CONFIG_AM33XX_UART_SELECT == 2 */
> +#if CONFIG_AM33XX_UART_SELECT == 3
> +#define CONFIG_SERIAL4			1
> +#define CONFIG_CONS_INDEX		4
> +#endif /* CONFIG_AM33XX_UART_SELECT == 3 */
> +#if CONFIG_AM33XX_UART_SELECT == 4
> +#define CONFIG_SERIAL5			1
> +#define CONFIG_CONS_INDEX		5
> +#endif /* CONFIG_AM33XX_UART_SELECT == 4 */
> +#if CONFIG_AM33XX_UART_SELECT == 5
> +#define CONFIG_SERIAL6			1
> +#define CONFIG_CONS_INDEX		6
> +#endif /* CONFIG_AM33XX_UART_SELECT == 5 */
>  #define CONFIG_SYS_CONSOLE_INFO_QUIET
>  
>  #define CONFIG_ENV_IS_NOWHERE

Having all of this in include/configs/am335x_evm.h is rather ugly and
hard to read.  I have a v3 cleanup patchset coming shortly to fix this
by just setting SERIALX and CONS_INDEX in the boards.cfg.  It's much
easier to read.

Please do not apply this v2 series.

Thanks,
Andrew


More information about the U-Boot mailing list