[U-Boot] [PATCH 4/7] dm: at91: Add platform data for GPIO on at91sam9260-based boards

Andreas Bießmann andreas.devel at googlemail.com
Thu Oct 23 08:58:09 CEST 2014


Hi Simon,

On 06.10.14 20:14, Simon Glass wrote:
> These boards all have the same GPIO arrangement, so add some common platform
> data that can be used by all boards. Remove the configs which are no longer
> required.
> 
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
> 
>  arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c | 14 ++++++++++++++
>  arch/arm/include/asm/arch-at91/at91sam9260.h      |  4 +++-
>  2 files changed, 17 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c b/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c
> index cae4abc..5edcfc2 100644
> --- a/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c
> +++ b/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c
> @@ -7,6 +7,7 @@
>   */
>  
>  #include <common.h>
> +#include <dm.h>
>  #include <asm/io.h>
>  #include <asm/arch/at91_common.h>
>  #include <asm/arch/at91_pmc.h>
> @@ -207,3 +208,16 @@ void at91_mci_hw_init(void)
>  #endif
>  }
>  #endif
> +
> +/* Platform data for the GPIOs */
> +static const struct at91_port_platdata at91sam9260_plat[] = {
> +	{ ATMEL_BASE_PIOA, "A" },
> +	{ ATMEL_BASE_PIOB, "B" },
> +	{ ATMEL_BASE_PIOC, "C" },

data sheet call the parts 'Px', sam9260 has PA0..PA31, PB0..PB31 and
PC0..PC31, shouldn't we use that name here too?

> +};
> +
> +U_BOOT_DEVICES(at91sam9260_gpios) = {
> +	{ "gpio_at91", &at91sam9260_plat[0] },
> +	{ "gpio_at91", &at91sam9260_plat[1] },
> +	{ "gpio_at91", &at91sam9260_plat[2] },
> +};
> diff --git a/arch/arm/include/asm/arch-at91/at91sam9260.h b/arch/arm/include/asm/arch-at91/at91sam9260.h
> index 2e902ee..4d46def 100644
> --- a/arch/arm/include/asm/arch-at91/at91sam9260.h
> +++ b/arch/arm/include/asm/arch-at91/at91sam9260.h
> @@ -136,9 +136,11 @@
>  /*
>   * Other misc defines
>   */
> +#ifndef CONFIG_DM_GPIO
>  #define ATMEL_PIO_PORTS		3		/* these SoCs have 3 PIO */
> -#define ATMEL_PMC_UHP		AT91SAM926x_PMC_UHP
>  #define ATMEL_BASE_PIO		ATMEL_BASE_PIOA
> +#endif
> +#define ATMEL_PMC_UHP		AT91SAM926x_PMC_UHP
>  
>  /*
>   * SoC specific defines
> 

Best regards

Andreas Bießmann


More information about the U-Boot mailing list