[PATCH v2 3/6] gpio: mxc_gpio: add OF_PLATDATA support
Stefano Babic
sbabic at denx.de
Mon Jul 27 14:10:55 CEST 2020
Hi Walter,
On 22.07.20 15:14, Walter Lozano wrote:
> Continuing with the OF_PLATADATA support for iMX6 to reduce SPL
> footprint, add it to mxc_gpio. Thanks to this, it will be possible to
> enable card detection on MMC driver.
>
> Signed-off-by: Walter Lozano <walter.lozano at collabora.com>
> ---
>
This conflicts with commit 6103e570cdd0d0e854b071ee17b14589356a82bd
Author: Ye Li <ye.li at nxp.com>
Date: Tue Jun 9 20:29:51 2020 -0700
gpio: mxc_gpio: Improve to use ofdata_to_platdata
already mainlined. Can you take a look ? Thanks !
Best regards,
Stefano
> (no changes since v1)
>
> drivers/gpio/mxc_gpio.c | 18 +++++++++++++++++-
> 1 file changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpio/mxc_gpio.c b/drivers/gpio/mxc_gpio.c
> index 316dcc757b..fc49b5b577 100644
> --- a/drivers/gpio/mxc_gpio.c
> +++ b/drivers/gpio/mxc_gpio.c
> @@ -13,6 +13,8 @@
> #include <asm/arch/imx-regs.h>
> #include <asm/gpio.h>
> #include <asm/io.h>
> +#include <dt-structs.h>
> +#include <mapmem.h>
>
> enum mxc_gpio_direction {
> MXC_GPIO_DIRECTION_IN,
> @@ -22,6 +24,10 @@ enum mxc_gpio_direction {
> #define GPIO_PER_BANK 32
>
> struct mxc_gpio_plat {
> +#if CONFIG_IS_ENABLED(OF_PLATDATA)
> + /* Put this first since driver model will copy the data here */
> + struct dtd_gpio_mxc dtplat;
> +#endif
> int bank_index;
> struct gpio_regs *regs;
> };
> @@ -306,8 +312,16 @@ static int mxc_gpio_bind(struct udevice *dev)
> * is statically initialized in U_BOOT_DEVICES.Here
> * will return.
> */
> - if (plat)
> +
> + if (plat) {
> +#if CONFIG_IS_ENABLED(OF_PLATDATA)
> + struct dtd_gpio_mxc *dtplat = &plat->dtplat;
> +
> + plat->regs = map_sysmem(dtplat->reg[0], dtplat->reg[1]);
> + plat->bank_index = dev->req_seq;
> +#endif
> return 0;
> + }
>
> addr = devfdt_get_addr(dev);
> if (addr == FDT_ADDR_T_NONE)
> @@ -350,6 +364,8 @@ U_BOOT_DRIVER(gpio_mxc) = {
> .bind = mxc_gpio_bind,
> };
>
> +U_BOOT_DRIVER_ALIAS(gpio_mxc, fsl_imx6q_gpio)
> +
> #if !CONFIG_IS_ENABLED(OF_CONTROL)
> static const struct mxc_gpio_plat mxc_plat[] = {
> { 0, (struct gpio_regs *)GPIO1_BASE_ADDR },
>
--
=====================================================================
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
More information about the U-Boot
mailing list