[U-Boot] [PATCH 2/2] integrator: switch to DM serial port
Simon Glass
sjg at chromium.org
Wed Apr 22 00:35:13 CEST 2015
Hi Linus,
On 21 April 2015 at 07:36, Linus Walleij <linus.walleij at linaro.org> wrote:
> This switches the Integrator boards over to using the device model
> for its serial ports.
>
> Cc: Masahiro Yamada <yamada.masahiro at socionext.com>
> Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
> ---
> board/armltd/integrator/integrator.c | 18 ++++++++++++++++++
> include/configs/integrator-common.h | 8 ++++++++
> include/configs/integratorap.h | 11 -----------
> include/configs/integratorcp.h | 9 ---------
> 4 files changed, 26 insertions(+), 20 deletions(-)
>
> diff --git a/board/armltd/integrator/integrator.c b/board/armltd/integrator/integrator.c
> index e94ac850c751..cbe706170d0f 100644
> --- a/board/armltd/integrator/integrator.c
> +++ b/board/armltd/integrator/integrator.c
> @@ -20,11 +20,29 @@
> #include <common.h>
> #include <netdev.h>
> #include <asm/io.h>
> +#include <dm/platdata.h>
> +#include <dm/platform_data/serial_pl01x.h>
> #include "arm-ebi.h"
> #include "integrator-sc.h"
>
> DECLARE_GLOBAL_DATA_PTR;
>
> +static const struct pl01x_serial_platdata serial_platdata = {
> + .base = 0x16000000,
> +#ifdef CONFIG_ARCH_CINTEGRATOR
> + .type = TYPE_PL011,
> + .clock = 14745600,
> +#else
> + .type = TYPE_PL010,
> + .clock = 0, /* Not used for PL010 */
> +#endif
> +};
> +
> +U_BOOT_DEVICE(integrator_serials) = {
> + .name = "serial_pl01x",
> + .platdata = &serial_platdata,
> +};
> +
> void peripheral_power_enable (void);
>
> #if defined(CONFIG_SHOW_BOOT_PROGRESS)
> diff --git a/include/configs/integrator-common.h b/include/configs/integrator-common.h
> index 4362925ae1e1..13ee580c91bd 100644
> --- a/include/configs/integrator-common.h
> +++ b/include/configs/integrator-common.h
> @@ -21,6 +21,14 @@
> #define CONFIG_SYS_MAXARGS 16 /* max number of command args */
> #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot Argument Buffer Size*/
> #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 128*1024) /* Size of malloc() pool */
> +#define CONFIG_SYS_MALLOC_F_LEN 0x2000
This should be in your defconfig file, as it is defined in Kconfig now.
> +
> +/* Serial port PL010/PL011 through the device model */
> +#define CONFIG_DM
> +#define CONFIG_DM_SERIAL
And those two also.
> +#define CONFIG_PL01X_SERIAL
> +#define CONFIG_BAUDRATE 38400
> +#define CONFIG_CONS_INDEX 0
>
> #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */
> #define CONFIG_SETUP_MEMORY_TAGS
> diff --git a/include/configs/integratorap.h b/include/configs/integratorap.h
> index e168c8c9ba57..567fd361bd69 100644
> --- a/include/configs/integratorap.h
> +++ b/include/configs/integratorap.h
> @@ -22,17 +22,6 @@
> #define CONFIG_SYS_HZ_CLOCK 24000000 /* Timer 1 is clocked at 24Mhz */
>
> /*
> - * PL010 Configuration
> - */
> -#define CONFIG_PL010_SERIAL
> -#define CONFIG_CONS_INDEX 0
> -#define CONFIG_BAUDRATE 38400
> -#define CONFIG_PL01x_PORTS { (void *) (CONFIG_SYS_SERIAL0), (void *) (CONFIG_SYS_SERIAL1) }
> -#define CONFIG_SYS_SERIAL0 0x16000000
> -#define CONFIG_SYS_SERIAL1 0x17000000
> -
> -
> -/*
> * BOOTP options
> */
> #define CONFIG_BOOTP_BOOTFILESIZE
> diff --git a/include/configs/integratorcp.h b/include/configs/integratorcp.h
> index 7c1ef2483ea2..7727b4e08eef 100644
> --- a/include/configs/integratorcp.h
> +++ b/include/configs/integratorcp.h
> @@ -29,15 +29,6 @@
> #define CONFIG_SMC91111_BASE 0xC8000000
> #undef CONFIG_SMC91111_EXT_PHY
>
> -/* PL011 configuration */
> -#define CONFIG_PL011_SERIAL
> -#define CONFIG_PL011_CLOCK 14745600
> -#define CONFIG_PL01x_PORTS { (void *)CONFIG_SYS_SERIAL0, (void *)CONFIG_SYS_SERIAL1 }
> -#define CONFIG_CONS_INDEX 0
> -#define CONFIG_BAUDRATE 38400
> -#define CONFIG_SYS_SERIAL0 0x16000000
> -#define CONFIG_SYS_SERIAL1 0x17000000
> -
> /*
> * Command line configuration.
> */
> --
> 1.9.3
>
Regards,
Simon
More information about the U-Boot
mailing list