Message ID | 1350933809-22921-5-git-send-email-andrew@bradfordembedded.com |
---|---|
State | Superseded |
Delegated to: | Tom Rini |
Headers | show |
On Mon, 22 Oct 2012 15:23:29 -0400 Andrew Bradford <andrew@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@bradfordembedded.com> > Tested-by: Matt Porter <mporter@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
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