[PATCH v3 0/3] mmc: pwrseq: convert to proper driver

From: Srinivas Kandagatla
Date: Wed Apr 13 2016 - 13:54:54 EST


Just realized that I sent v3 patches long back with a title of v2, so resending
the v3 once again with proper version number.

Thanks for reviewing v2.

This patchset aims at converting the pwrseq devices to proper in drivers,
The issue is that on Qualcomm based platforms, most of the gpios require
a pinctrl setup. Existing pwrseq code does not do any kind of pinctrl setup.
So this makes the pwrseq unusable on those platfroms.

Convert the pwrseq to proper drivers so that they can reuse
common driver setup like pinctrl from drivers/base/pinctrl.c and clocks.
This solution works much better and would make pwrseq to reuse
all the driver setup done in the common code.


Changes since v2: All changes suggested by Ulf
- Moved all the allocations/gpio_get/clk_get to probe
- Removed alloc and free callbacks
- try_get_module inside a mutex
- Fixed Kconfigs
- renamed list to pwrseq_node
- add mssing pdev_set_drvdata()

Changes since v1:
- Fixed issue while building as module.

Changes since RFC:
- Fixed issues reported by kbuild test robot.
- return EPROBE_DEFER from *_alloc() suggested by Ulf.

Thanks,
srini

Srinivas Kandagatla (3):
mmc: pwrseq_simple: add to_pwrseq_simple() macro
mmc: pwrseq_emmc: add to_pwrseq_emmc() macro
mmc: pwrseq: convert to proper platform device

drivers/mmc/core/Kconfig | 21 ++++++++
drivers/mmc/core/Makefile | 4 +-
drivers/mmc/core/pwrseq.c | 105 +++++++++++++++++----------------------
drivers/mmc/core/pwrseq.h | 19 ++++---
drivers/mmc/core/pwrseq_emmc.c | 81 ++++++++++++++++++------------
drivers/mmc/core/pwrseq_simple.c | 91 +++++++++++++++++----------------
6 files changed, 182 insertions(+), 139 deletions(-)

--
2.5.0