Hi Ryder, On 12 October 2018 at 01:00, Ryder Lee <ryder....@mediatek.com> wrote: > This patch adds pinctrl support for MT7629 SoC. The IO core found on > the SoC has the registers for pinctrl, pinconf and gpio mixed up in > the same register range. Hence the driver also implements the gpio > functionality through UCLASS_GPIO. > > This also creates a common file as there might be other chips that use > the same binding and driver, then being a little more abstract could > help in the long run. > > Signed-off-by: Ryder Lee <ryder....@mediatek.com> > --- > arch/arm/include/asm/arch-mediatek/gpio.h | 9 + > drivers/pinctrl/Kconfig | 1 + > drivers/pinctrl/Makefile | 1 + > drivers/pinctrl/mediatek/Kconfig | 11 + > drivers/pinctrl/mediatek/Makefile | 6 + > drivers/pinctrl/mediatek/pinctrl-mt7629.c | 488 +++++++++++++++++++++++ > drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 552 > ++++++++++++++++++++++++++ > drivers/pinctrl/mediatek/pinctrl-mtk-common.h | 182 +++++++++ > 8 files changed, 1250 insertions(+) > create mode 100644 arch/arm/include/asm/arch-mediatek/gpio.h > create mode 100644 drivers/pinctrl/mediatek/Kconfig > create mode 100644 drivers/pinctrl/mediatek/Makefile > create mode 100644 drivers/pinctrl/mediatek/pinctrl-mt7629.c > create mode 100644 drivers/pinctrl/mediatek/pinctrl-mtk-common.c > create mode 100644 drivers/pinctrl/mediatek/pinctrl-mtk-common.h >
[..] > +int mtk_pinctrl_probe(struct udevice *dev, struct mtk_pinctrl_soc *soc) > +{ > + struct mtk_pinctrl_priv *priv = dev_get_priv(dev); > + int ret; > + > + priv->base = dev_read_addr_ptr(dev); > + if (priv->base == (void *)FDT_ADDR_T_NONE) > + return -EINVAL; > + > + priv->soc = soc; > + > + ret = mtk_gpiochip_register(dev); > + if (ret) > + return ret; > + > + return 0; > +} How come this function is exported? It should be probed like any other driver. Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot