Loading drivers/pinctrl/core.c +19 −13 Original line number Diff line number Diff line Loading @@ -794,16 +794,12 @@ struct pinctrl *pinctrl_get(struct device *dev) } EXPORT_SYMBOL_GPL(pinctrl_get); static void pinctrl_put_locked(struct pinctrl *p, bool inlist) static void pinctrl_free_setting(bool disable_setting, struct pinctrl_setting *setting) { struct pinctrl_state *state, *n1; struct pinctrl_setting *setting, *n2; list_for_each_entry_safe(state, n1, &p->states, node) { list_for_each_entry_safe(setting, n2, &state->settings, node) { switch (setting->type) { case PIN_MAP_TYPE_MUX_GROUP: if (state == p->state) if (disable_setting) pinmux_disable_setting(setting); pinmux_free_setting(setting); break; Loading @@ -814,6 +810,16 @@ static void pinctrl_put_locked(struct pinctrl *p, bool inlist) default: break; } } static void pinctrl_put_locked(struct pinctrl *p, bool inlist) { struct pinctrl_state *state, *n1; struct pinctrl_setting *setting, *n2; list_for_each_entry_safe(state, n1, &p->states, node) { list_for_each_entry_safe(setting, n2, &state->settings, node) { pinctrl_free_setting(state == p->state, setting); list_del(&setting->node); kfree(setting); } Loading Loading
drivers/pinctrl/core.c +19 −13 Original line number Diff line number Diff line Loading @@ -794,16 +794,12 @@ struct pinctrl *pinctrl_get(struct device *dev) } EXPORT_SYMBOL_GPL(pinctrl_get); static void pinctrl_put_locked(struct pinctrl *p, bool inlist) static void pinctrl_free_setting(bool disable_setting, struct pinctrl_setting *setting) { struct pinctrl_state *state, *n1; struct pinctrl_setting *setting, *n2; list_for_each_entry_safe(state, n1, &p->states, node) { list_for_each_entry_safe(setting, n2, &state->settings, node) { switch (setting->type) { case PIN_MAP_TYPE_MUX_GROUP: if (state == p->state) if (disable_setting) pinmux_disable_setting(setting); pinmux_free_setting(setting); break; Loading @@ -814,6 +810,16 @@ static void pinctrl_put_locked(struct pinctrl *p, bool inlist) default: break; } } static void pinctrl_put_locked(struct pinctrl *p, bool inlist) { struct pinctrl_state *state, *n1; struct pinctrl_setting *setting, *n2; list_for_each_entry_safe(state, n1, &p->states, node) { list_for_each_entry_safe(setting, n2, &state->settings, node) { pinctrl_free_setting(state == p->state, setting); list_del(&setting->node); kfree(setting); } Loading