* [PATCH 00/12] SDHCI PXA cleanup and clocks
@ 2014-10-03 15:55 Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 09/12] mmc: sdhci-pxav3: Document clocks and additional clock-names property Sebastian Hesselbarth
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Sebastian Hesselbarth @ 2014-10-03 15:55 UTC (permalink / raw)
To: Sebastian Hesselbarth
Cc: Chris Ball, Ulf Hansson, Antoine Tenart,
linux-mmc-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-kernel-u79uwXL29TY76Z2rM5mHXA
This patch set does a little cleanup on PXA v2/v3 drivers and
adds an additional, optional core clock to v3 driver that is
required on Marvell Berlin BG2 and BG2CD SoCs.
Patch 1 removes the unused private driver data from pxav2 driver.
Patch 2 is a fix for pxav3 driver to honor MMC_DDR52 timing on
uhs signaling. AFAICS, up to now there was no user affected by it
but Sony NSZ-GS7 will be.
Patch 3 moves struct sdhci_pxa from global include to the only
driver using it now. Patch 4 removes the unused clk_enable from
it.
Patch 5 removes some wrong and unnecessary checks on struct clk
from v3 driver. Patch 6 moves the struct clk for I/O clock to
the private driver data, while Patch 7 prepares the driver for
named clocks.
Patch 8 adds support for an additional, optional core clock that
is now also documented in the binding with Patch 9.
Patches 10-12 finally add corresponding sdhci nodes to berlin2
and berlin2cd, Chromecast and NSZ-GS7 DT files.
The patches are currently based on next-20141003 and are intended
for v3.19, i.e. I'll resend the series as soon as v3.18-rc1 drops.
A branch with the patches applied on top of next-201410-03 can be
found on
git://git.infradead.org/users/hesselba/linux-berlin.git devel/bg2-bg2cd-sdhci-v1
Sebastian Hesselbarth (12):
mmc: sdhci-pxav2: Drop unused struct sdhci_pxa
mmc: sdhci-pxav3: Respect MMC_DDR52 timing on uhs signaling
mmc: sdhci-pxav3: Move private driver data to driver source
mmc: sdhci-pxav3: Remove unused clk_enable from sdhci_pxa
mmc: sdhci-pxav3: Remove checks for mandatory host clock
mmc: sdhci-pxav3: Move I/O clock to private data
mmc: sdhci-pxav3: Try to get named I/O clock first
mmc: sdhci-pxav3: Get optional core clock
mmc: sdhci-pxav3: Document clocks and additional clock-names property
ARM: dts: berlin: Add SDHCI controller nodes to BG2/BG2CD
ARM: dts: berlin: Enable WiFi on Google Chromecast
ARM: dts: berlin: Enable eMMC on Sony NSZ-GS7
.../devicetree/bindings/mmc/sdhci-pxa.txt | 7 +++
arch/arm/boot/dts/berlin2-sony-nsz-gs7.dts | 7 +++
arch/arm/boot/dts/berlin2.dtsi | 34 ++++++++++++
arch/arm/boot/dts/berlin2cd-google-chromecast.dts | 9 ++++
arch/arm/boot/dts/berlin2cd.dtsi | 9 ++++
drivers/mmc/host/sdhci-pxav2.c | 15 ++----
drivers/mmc/host/sdhci-pxav3.c | 60 ++++++++++++++--------
include/linux/platform_data/pxa_sdhci.h | 5 --
8 files changed, 108 insertions(+), 38 deletions(-)
---
Cc: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
Cc: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: Antoine Tenart <antoine.tenart-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
Cc: linux-mmc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
--
2.1.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 09/12] mmc: sdhci-pxav3: Document clocks and additional clock-names property
2014-10-03 15:55 [PATCH 00/12] SDHCI PXA cleanup and clocks Sebastian Hesselbarth
@ 2014-10-03 15:55 ` Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 10/12] ARM: dts: berlin: Add SDHCI controller nodes to BG2/BG2CD Sebastian Hesselbarth
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Sebastian Hesselbarth @ 2014-10-03 15:55 UTC (permalink / raw)
To: Sebastian Hesselbarth
Cc: Chris Ball, Ulf Hansson, Antoine Tenart, linux-mmc, devicetree,
linux-arm-kernel, linux-kernel
Now that sdhci-pxav3 driver allows to have more than one IP clock defined,
document both clocks and clock-names properties.
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
---
Cc: Chris Ball <chris@printf.net>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: Antoine Tenart <antoine.tenart@free-electrons.com>
Cc: linux-mmc@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
Documentation/devicetree/bindings/mmc/sdhci-pxa.txt | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt b/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt
index 86223c3eda90..4dd6deb90719 100644
--- a/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt
+++ b/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt
@@ -12,6 +12,10 @@ Required properties:
* for "marvell,armada-380-sdhci", two register areas. The first one
for the SDHCI registers themselves, and the second one for the
AXI/Mbus bridge registers of the SDHCI unit.
+- clocks: Array of clocks required for SDHCI; requires at least one for
+ I/O clock.
+- clock-names: Array of names corresponding to clocks property; shall be
+ "io" for I/O clock and "core" for optional core clock.
Optional properties:
- mrvl,clk-delay-cycles: Specify a number of cycles to delay for tuning.
@@ -23,6 +27,8 @@ sdhci@d4280800 {
reg = <0xd4280800 0x800>;
bus-width = <8>;
interrupts = <27>;
+ clocks = <&chip CLKID_SDIO1XIN>, <&chip CLKID_SDIO1>;
+ clock-names = "io", "core";
non-removable;
mrvl,clk-delay-cycles = <31>;
};
@@ -32,5 +38,6 @@ sdhci@d8000 {
reg = <0xd8000 0x1000>, <0xdc000 0x100>;
interrupts = <0 25 0x4>;
clocks = <&gateclk 17>;
+ clock-names = "io";
mrvl,clk-delay-cycles = <0x1F>;
};
--
2.1.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 10/12] ARM: dts: berlin: Add SDHCI controller nodes to BG2/BG2CD
2014-10-03 15:55 [PATCH 00/12] SDHCI PXA cleanup and clocks Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 09/12] mmc: sdhci-pxav3: Document clocks and additional clock-names property Sebastian Hesselbarth
@ 2014-10-03 15:55 ` Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 11/12] ARM: dts: berlin: Enable WiFi on Google Chromecast Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 12/12] ARM: dts: berlin: Enable eMMC on Sony NSZ-GS7 Sebastian Hesselbarth
3 siblings, 0 replies; 5+ messages in thread
From: Sebastian Hesselbarth @ 2014-10-03 15:55 UTC (permalink / raw)
To: Sebastian Hesselbarth
Cc: Chris Ball, Ulf Hansson, Antoine Tenart, linux-mmc, devicetree,
linux-arm-kernel, linux-kernel
Marvell Berlin BG2 has three, BG2CD just one pxav3 compatible
sdhci controllers, add them to the corresponding DT SoC
includes.
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
---
Cc: Chris Ball <chris@printf.net>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: Antoine Tenart <antoine.tenart@free-electrons.com>
Cc: linux-mmc@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
arch/arm/boot/dts/berlin2.dtsi | 34 ++++++++++++++++++++++++++++++++++
arch/arm/boot/dts/berlin2cd.dtsi | 9 +++++++++
2 files changed, 43 insertions(+)
diff --git a/arch/arm/boot/dts/berlin2.dtsi b/arch/arm/boot/dts/berlin2.dtsi
index d7e81e124de0..2b7baaa77d88 100644
--- a/arch/arm/boot/dts/berlin2.dtsi
+++ b/arch/arm/boot/dts/berlin2.dtsi
@@ -53,6 +53,35 @@
ranges = <0 0xf7000000 0x1000000>;
+ sdhci0: sdhci@ab0000 {
+ compatible = "mrvl,pxav3-mmc";
+ reg = <0xab0000 0x200>;
+ clocks = <&chip CLKID_SDIO0XIN>, <&chip CLKID_SDIO0>;
+ clock-names = "io", "core";
+ interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ sdhci1: sdhci@ab0800 {
+ compatible = "mrvl,pxav3-mmc";
+ reg = <0xab0800 0x200>;
+ clocks = <&chip CLKID_SDIO1XIN>, <&chip CLKID_SDIO1>;
+ clock-names = "io", "core";
+ interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ sdhci2: sdhci@ab1000 {
+ compatible = "mrvl,pxav3-mmc";
+ reg = <0xab1000 0x200>;
+ interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&chip CLKID_NFC_ECC>, <&chip CLKID_NFC>;
+ clock-names = "io", "core";
+ pinctrl-0 = <&emmc_pmux>;
+ pinctrl-names = "default";
+ status = "disabled";
+ };
+
l2: l2-cache-controller@ac0000 {
compatible = "marvell,tauros3-cache", "arm,pl310-cache";
reg = <0xac0000 0x1000>;
@@ -253,6 +282,11 @@
reg = <0xea0000 0x400>;
clocks = <&refclk>;
clock-names = "refclk";
+
+ emmc_pmux: emmc-pmux {
+ groups = "G26";
+ function = "emmc";
+ };
};
apb@fc0000 {
diff --git a/arch/arm/boot/dts/berlin2cd.dtsi b/arch/arm/boot/dts/berlin2cd.dtsi
index 68f7032b4686..2afb133dc708 100644
--- a/arch/arm/boot/dts/berlin2cd.dtsi
+++ b/arch/arm/boot/dts/berlin2cd.dtsi
@@ -45,6 +45,15 @@
ranges = <0 0xf7000000 0x1000000>;
+ sdhci0: sdhci@ab0000 {
+ compatible = "mrvl,pxav3-mmc";
+ reg = <0xab0000 0x200>;
+ clocks = <&chip CLKID_SDIO0XIN>, <&chip CLKID_SDIO0>;
+ clock-names = "io", "core";
+ interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
l2: l2-cache-controller@ac0000 {
compatible = "arm,pl310-cache";
reg = <0xac0000 0x1000>;
--
2.1.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 11/12] ARM: dts: berlin: Enable WiFi on Google Chromecast
2014-10-03 15:55 [PATCH 00/12] SDHCI PXA cleanup and clocks Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 09/12] mmc: sdhci-pxav3: Document clocks and additional clock-names property Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 10/12] ARM: dts: berlin: Add SDHCI controller nodes to BG2/BG2CD Sebastian Hesselbarth
@ 2014-10-03 15:55 ` Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 12/12] ARM: dts: berlin: Enable eMMC on Sony NSZ-GS7 Sebastian Hesselbarth
3 siblings, 0 replies; 5+ messages in thread
From: Sebastian Hesselbarth @ 2014-10-03 15:55 UTC (permalink / raw)
To: Sebastian Hesselbarth
Cc: Chris Ball, Ulf Hansson, Antoine Tenart, linux-mmc, devicetree,
linux-arm-kernel, linux-kernel
With SDHCI for BG2CD, we can now enable the port and allow to access
AzureWave WiFi/BT module on Google Chromecast.
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
---
Cc: Chris Ball <chris@printf.net>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: Antoine Tenart <antoine.tenart@free-electrons.com>
Cc: linux-mmc@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
arch/arm/boot/dts/berlin2cd-google-chromecast.dts | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/arch/arm/boot/dts/berlin2cd-google-chromecast.dts b/arch/arm/boot/dts/berlin2cd-google-chromecast.dts
index 0816890a5c0d..bdcaff7c321e 100644
--- a/arch/arm/boot/dts/berlin2cd-google-chromecast.dts
+++ b/arch/arm/boot/dts/berlin2cd-google-chromecast.dts
@@ -43,4 +43,13 @@
};
};
+/*
+ * AzureWave AW-NH387 (Marvell 88W8787)
+ * 802.11b/g/n + Bluetooth 2.1
+ */
+&sdhci0 {
+ non-removable;
+ status = "okay";
+};
+
&uart0 { status = "okay"; };
--
2.1.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 12/12] ARM: dts: berlin: Enable eMMC on Sony NSZ-GS7
2014-10-03 15:55 [PATCH 00/12] SDHCI PXA cleanup and clocks Sebastian Hesselbarth
` (2 preceding siblings ...)
2014-10-03 15:55 ` [PATCH 11/12] ARM: dts: berlin: Enable WiFi on Google Chromecast Sebastian Hesselbarth
@ 2014-10-03 15:55 ` Sebastian Hesselbarth
3 siblings, 0 replies; 5+ messages in thread
From: Sebastian Hesselbarth @ 2014-10-03 15:55 UTC (permalink / raw)
To: Sebastian Hesselbarth
Cc: Chris Ball, Ulf Hansson, Antoine Tenart, linux-mmc, devicetree,
linux-arm-kernel, linux-kernel
With SDHCI for BG2, we can now enable the port and allow to access
Samsung M8G2FA 8GB eMMC on Sony NSZ-GS7.
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
---
Cc: Chris Ball <chris@printf.net>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: Antoine Tenart <antoine.tenart@free-electrons.com>
Cc: linux-mmc@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
arch/arm/boot/dts/berlin2-sony-nsz-gs7.dts | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/arch/arm/boot/dts/berlin2-sony-nsz-gs7.dts b/arch/arm/boot/dts/berlin2-sony-nsz-gs7.dts
index c72bfd468d10..5e5f3a90e465 100644
--- a/arch/arm/boot/dts/berlin2-sony-nsz-gs7.dts
+++ b/arch/arm/boot/dts/berlin2-sony-nsz-gs7.dts
@@ -26,4 +26,11 @@
};
};
+/* Samsung M8G2FA 8GB eMMC */
+&sdhci2 {
+ non-removable;
+ bus-width = <8>;
+ status = "okay";
+};
+
&uart0 { status = "okay"; };
--
2.1.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-10-03 15:55 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-03 15:55 [PATCH 00/12] SDHCI PXA cleanup and clocks Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 09/12] mmc: sdhci-pxav3: Document clocks and additional clock-names property Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 10/12] ARM: dts: berlin: Add SDHCI controller nodes to BG2/BG2CD Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 11/12] ARM: dts: berlin: Enable WiFi on Google Chromecast Sebastian Hesselbarth
2014-10-03 15:55 ` [PATCH 12/12] ARM: dts: berlin: Enable eMMC on Sony NSZ-GS7 Sebastian Hesselbarth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).