Skip to contentSkip to conversation

mmc: omap_hsmmc: support more DT properties

PATCH RESEND In review Daniel Mack 4 participants 4 messages Mar 3, 2014 – Mar 4, 2014

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH RESEND 1/1 mmc: omap_hsmmc: support more DT properties

This should probably be done implicitly through mmc_of_parse(), but that doesn't play well along with the multi-slot model the hsmmc driver features. Hence, for now, do it manually. The properties are already documented in Documentation/devicetree/bindings/mmc/mmc.txt.

---
This is a resend of a patch that was already acked by Balaji T K:

http://www.spinics.net/lists/linux-mmc/msg25029.html

 drivers/mmc/host/omap_hsmmc.c | 6 ++++++
 1 file changed, 6 insertions(+)
drivers/mmc/host/omap_hsmmc.c +6 -0
index 2815de6..a5a38cc 100644
@@ -1765,6 +1765,12 @@ static struct omap_mmc_platform_data *of_get_hsmmc_pdata(struct device *dev)
 	if (of_find_property(np, "ti,needs-special-hs-handling", NULL))
 		pdata->slots[0].features |= HSMMC_HAS_HSPE_SUPPORT;
 
+	if (of_find_property(np, "keep-power-in-suspend", NULL))
+		pdata->slots[0].pm_caps |= MMC_PM_KEEP_POWER;
+
+	if (of_find_property(np, "enable-sdio-wakeup", NULL))
+		pdata->slots[0].pm_caps |= MMC_PM_WAKE_SDIO_IRQ;
+
 	return pdata;
 }
 #else
Signature · 1 line
1.8.5.3
#1 lore raw
Quoted 11 lines · Daniel Mack

This should probably be done implicitly through mmc_of_parse(), but that doesn't play well along with the multi-slot model the hsmmc driver features. Hence, for now, do it manually. The properties are already documented in Documentation/devicetree/bindings/mmc/mmc.txt.

---
This is a resend of a patch that was already acked by Balaji T K:

   http://www.spinics.net/lists/linux-mmc/msg25029.html

Hi Chris,

To make it easier for you, I have collected omap_hsmmc patches [1] and pushed a branch omap_hsmmc-for-3.15 based on 3.14rc2.

Please pull or cherry pick

The following changes since commit b28a960c42fcd9cfc987441fa6d1c1a471f0f9ed:

Linux 3.14-rc2 (2014-02-09 18:15:47 -0800)

are available in the git repository at:
git://git.ti.com/~balajitk/ti-linux-kernel/omap-hsmmc.git omap_hsmmc-for-3.15

Balaji T K (14):
mmc: omap_hsmmc: use devm_regulator API
mmc: omap_hsmmc: handle vcc and vcc_aux independently
regulator: add pbias regulator support
mmc: omap_hsmmc: adapt hsmmc to use pbias regulator
ARM: dts: add pbias dt node
ARM: OMAP: enable SYSCON and REGULATOR_PBIAS in omap2plus_defconfig
mmc: omap_hsmmc: remove pbias workaround
mmc: omap_hsmmc: fix return error code for of_get_hsmmc_pdata
mmc: omap_hsmmc: remove redundant reset done
mmc: omap_hsmmc: save clock rate to use in interrupt context
mmc: omap_hsmmc: fix request done for sbc error case
mmc: omap_hsmmc: split dma setup
mmc: omap_hsmmc: add cmd23 support
mmc: omap_hsmmc: add autocmd23 support

Dan Carpenter (1):
mmc: omap_hsmmc: remove a duplicative test

Daniel Mack (1):
mmc: omap_hsmmc: support more DT properties

Nishanth Menon (2):
mmc: omap_hsmmc: Add support for quirky omap3 hsmmc controller
ARM: dts: omap3-ldp: fix mmc configuration

 .../devicetree/bindings/mmc/ti-omap-hsmmc.txt      |    1 +
 .../bindings/regulator/pbias-regulator.txt         |   27 ++
 arch/arm/boot/dts/dra7.dtsi                        |   17 ++
 arch/arm/boot/dts/omap2430.dtsi                    |   17 ++
 arch/arm/boot/dts/omap3-ldp.dts                    |   23 ++
 arch/arm/boot/dts/omap3.dtsi                       |   17 ++
 arch/arm/boot/dts/omap4.dtsi                       |   17 ++
 arch/arm/boot/dts/omap5.dtsi                       |   17 ++
 arch/arm/configs/omap2plus_defconfig               |    2 +
 drivers/mmc/host/omap_hsmmc.c                      |  242 +++++++++++++------
 drivers/regulator/Kconfig                          |    9 +
 drivers/regulator/Makefile                         |    1 +
 drivers/regulator/pbias-regulator.c                |  255 ++++++++++++++++++++
 13 files changed, 569 insertions(+), 76 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/regulator/pbias-regulator.txt
 create mode 100644 drivers/regulator/pbias-regulator.c

[1]
http://www.spinics.net/lists/linux-omap/msg102811.html
http://lkml.org/lkml/2014/2/14/13
http://www.spinics.net/lists/linux-mmc/msg25029.html
http://www.spinics.net/lists/linux-omap/msg103488.html
http://www.spinics.net/lists/linux-omap/msg103608.html
http://comments.gmane.org/gmane.linux.kernel.mmc/24777

#2 lore raw
Quoted 11 lines · Balaji T K
Quoted 10 lines · Daniel Mack

This should probably be done implicitly through mmc_of_parse(), but that doesn't play well along with the multi-slot model the hsmmc driver features. Hence, for now, do it manually. The properties are already documented in Documentation/devicetree/bindings/mmc/mmc.txt.

---
This is a resend of a patch that was already acked by Balaji T K:

Quoted 6 lines
Quoted 1 line

http://www.spinics.net/lists/linux-mmc/msg25029.html

Hi Chris,

To make it easier for you, I have collected omap_hsmmc patches [1] and pushed a branch omap_hsmmc-for-3.15 based on 3.14rc2.

You should probably send this as a proper pull request to Chris with [GIT PULL] in the Subject line as it can otherwise get easily lost.

Regards,

Tony

Quoted 60 lines

Please pull or cherry pick

The following changes since commit b28a960c42fcd9cfc987441fa6d1c1a471f0f9ed:

Linux 3.14-rc2 (2014-02-09 18:15:47 -0800)

are available in the git repository at:
git://git.ti.com/~balajitk/ti-linux-kernel/omap-hsmmc.git omap_hsmmc-for-3.15

Balaji T K (14):
mmc: omap_hsmmc: use devm_regulator API
mmc: omap_hsmmc: handle vcc and vcc_aux independently
regulator: add pbias regulator support
mmc: omap_hsmmc: adapt hsmmc to use pbias regulator
ARM: dts: add pbias dt node
ARM: OMAP: enable SYSCON and REGULATOR_PBIAS in omap2plus_defconfig
mmc: omap_hsmmc: remove pbias workaround
mmc: omap_hsmmc: fix return error code for of_get_hsmmc_pdata
mmc: omap_hsmmc: remove redundant reset done
mmc: omap_hsmmc: save clock rate to use in interrupt context
mmc: omap_hsmmc: fix request done for sbc error case
mmc: omap_hsmmc: split dma setup
mmc: omap_hsmmc: add cmd23 support
mmc: omap_hsmmc: add autocmd23 support

Dan Carpenter (1):
mmc: omap_hsmmc: remove a duplicative test

Daniel Mack (1):
mmc: omap_hsmmc: support more DT properties

Nishanth Menon (2):
mmc: omap_hsmmc: Add support for quirky omap3 hsmmc controller
ARM: dts: omap3-ldp: fix mmc configuration

 .../devicetree/bindings/mmc/ti-omap-hsmmc.txt      |    1 +
 .../bindings/regulator/pbias-regulator.txt         |   27 ++
 arch/arm/boot/dts/dra7.dtsi                        |   17 ++
 arch/arm/boot/dts/omap2430.dtsi                    |   17 ++
 arch/arm/boot/dts/omap3-ldp.dts                    |   23 ++
 arch/arm/boot/dts/omap3.dtsi                       |   17 ++
 arch/arm/boot/dts/omap4.dtsi                       |   17 ++
 arch/arm/boot/dts/omap5.dtsi                       |   17 ++
 arch/arm/configs/omap2plus_defconfig               |    2 +
 drivers/mmc/host/omap_hsmmc.c                      |  242 +++++++++++++------
 drivers/regulator/Kconfig                          |    9 +
 drivers/regulator/Makefile                         |    1 +
 drivers/regulator/pbias-regulator.c                |  255 ++++++++++++++++++++
 13 files changed, 569 insertions(+), 76 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/regulator/pbias-regulator.txt
 create mode 100644 drivers/regulator/pbias-regulator.c

[1]
http://www.spinics.net/lists/linux-omap/msg102811.html
http://lkml.org/lkml/2014/2/14/13
http://www.spinics.net/lists/linux-mmc/msg25029.html
http://www.spinics.net/lists/linux-omap/msg103488.html
http://www.spinics.net/lists/linux-omap/msg103608.html
http://comments.gmane.org/gmane.linux.kernel.mmc/24777

#3 lore raw
In reply to Balaji T K

Hi Balaji,

Quoted 1 line · Balaji T K

git://git.ti.com/~balajitk/ti-linux-kernel/omap-hsmmc.git omap_hsmmc-for-3.15

Thanks, all pushed to mmc-next for 3.15.

- Chris.

Signature · 1 line
Chris Ball   <[email protected]>   <http://printf.net/>