Currently the mux_control_get implementation only deals with getting mux controllers on DT platforms. This commit renames the current implementation to of_mux_control_get to reflect this and makes mux_control_get a wrapper around of_mux_control_get. This is a preparation patch for adding support for getting muxes on non DT platforms. Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> --- drivers/mux/core.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/drivers/mux/core.c b/drivers/mux/core.c index d0ad56abca2a..8c0a4c83cdc5 100644 --- a/drivers/mux/core.c +++ b/drivers/mux/core.c @@ -439,7 +439,7 @@ static struct mux_chip *of_find_mux_chip_by_node(struct device_node *np) } static struct mux_control * -__mux_control_get(struct device *dev, const char *mux_name, bool optional) +of_mux_control_get(struct device *dev, const char *mux_name, bool optional) { struct device_node *np = dev->of_node; struct of_phandle_args args; @@ -500,6 +500,16 @@ __mux_control_get(struct device *dev, const char *mux_name, bool optional) return &mux_chip->mux[controller]; } +static struct mux_control * +__mux_control_get(struct device *dev, const char *mux_name, bool optional) +{ + /* look up via DT first */ + if (IS_ENABLED(CONFIG_OF) && dev->of_node) + return of_mux_control_get(dev, mux_name, optional); + + return optional ? NULL : ERR_PTR(-ENODEV); +} + /** * mux_control_get() - Get the mux-control for a device. * @dev: The device that needs a mux-control. -- 2.14.1 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel