If there's an error when applying a new state (for example, if a pin is already muxed), old state is not restored. This patch set corrects this behaviour. The first patch is just a small typo fix. The second doesn't introduce any functionnal change, but prepares for the third patch. The third patch undoes what have been done to enable the new state. The last patch re-applies the old state.
Richard Genoud (4): pinctrl: fix typo in header pinctrl: create pinctrl_free_setting function pinctrl: disable and free setting in select_state in case of error pinctrl: re-enable old state in case of error in pinctrl_select_state drivers/pinctrl/core.c | 78 ++++++++++++++++++++++++++++++++++++++---------- drivers/pinctrl/core.h | 2 +- 2 files changed, 63 insertions(+), 17 deletions(-) -- 1.7.2.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/