[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