[RFC v5 net-next 13/13] mfd: ocelot: add ocelot-pinctrl as a supported child interface

Colin Foster
2021-12-18T21:50:37Z

The ocelot-pinctrl device is able to be utilized by ocelot_mfd. This simply
enables that child driver.

Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
---
drivers/mfd/ocelot-core.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

diff --git a/drivers/mfd/ocelot-core.c b/drivers/mfd/ocelot-core.c
index c67e433f467c..71e062934812 100644
--- a/drivers/mfd/ocelot-core.c
+++ b/drivers/mfd/ocelot-core.c
@@ -113,7 +113,22 @@ static const struct resource vsc7512_miim1_resources[] = {
},
};

+static const struct resource vsc7512_pinctrl_resources[] = {
+ {
+ .start = 0x71070034,
+ .end = 0x7107009f,
+ .name = "gcb_gpio",
+ .flags = IORESOURCE_MEM,
+ },
+};
+
static const struct mfd_cell vsc7512_devs[] = {
+ {
+ .name = "pinctrl-ocelot",
+ .of_compatible = "mscc,ocelot-pinctrl",
+ .num_resources = ARRAY_SIZE(vsc7512_pinctrl_resources),
+ .resources = vsc7512_pinctrl_resources,
+ },
{
.name = "ocelot-miim1",
.of_compatible = "mscc,ocelot-miim",
@@ -164,6 +179,10 @@ int ocelot_mfd_init(struct ocelot_mfd_config *config)

ret = mfd_add_devices(dev, PLATFORM_DEVID_NONE, vsc7512_devs,
ARRAY_SIZE(vsc7512_devs), NULL, 0, NULL);
+ if (ret) {
+ dev_err(dev, "error adding mfd devices\n");
+ return ret;
+ }

dev_info(dev, "ocelot mfd core setup complete\n");

--
2.25.1