i2c: mux: pinctrl: drop the idle_state member
authorPeter Rosin <peda@axentia.se>
Sun, 21 May 2017 16:49:03 +0000 (18:49 +0200)
committerPeter Rosin <peda@axentia.se>
Mon, 14 Aug 2017 09:54:27 +0000 (11:54 +0200)
The information is available elsewhere.

Reviewed-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Peter Rosin <peda@axentia.se>
drivers/i2c/muxes/i2c-mux-pinctrl.c

index aa4a3bf9507f3f0563369869d7bf433f2a97f969..20b90a7a1e61f94197f70d4f515b425fc3955bcc 100644 (file)
@@ -28,7 +28,6 @@
 struct i2c_mux_pinctrl {
        struct pinctrl *pinctrl;
        struct pinctrl_state **states;
-       struct pinctrl_state *state_idle;
 };
 
 static int i2c_mux_pinctrl_select(struct i2c_mux_core *muxc, u32 chan)
@@ -40,9 +39,7 @@ static int i2c_mux_pinctrl_select(struct i2c_mux_core *muxc, u32 chan)
 
 static int i2c_mux_pinctrl_deselect(struct i2c_mux_core *muxc, u32 chan)
 {
-       struct i2c_mux_pinctrl *mux = i2c_mux_priv(muxc);
-
-       return pinctrl_select_state(mux->pinctrl, mux->state_idle);
+       return i2c_mux_pinctrl_select(muxc, muxc->num_adapters);
 }
 
 static struct i2c_adapter *i2c_mux_pinctrl_root_adapter(
@@ -149,7 +146,6 @@ static int i2c_mux_pinctrl_probe(struct platform_device *pdev)
                        ret = -EINVAL;
                        goto err_put_parent;
                }
-               mux->state_idle = mux->states[i];
                muxc->deselect = i2c_mux_pinctrl_deselect;
        }
 
@@ -166,7 +162,7 @@ static int i2c_mux_pinctrl_probe(struct platform_device *pdev)
                dev_info(dev, "mux-locked i2c mux\n");
 
        /* Do not add any adapter for the idle state (if it's there at all). */
-       for (i = 0; i < num_names - !!mux->state_idle; i++) {
+       for (i = 0; i < num_names - !!muxc->deselect; i++) {
                ret = i2c_mux_add_adapter(muxc, 0, i, 0);
                if (ret)
                        goto err_del_adapter;