* [PATCH v6 0/2] Add SDHCI support for APM X-Gene SoC using ARASAN SDHCI controller. @ 2015-05-06 13:42 Suman Tripathi 2015-05-06 13:42 ` [PATCH v6 1/2] arm64: dts: Add the arasan sdhci nodes in apm-storm.dtsi Suman Tripathi 2015-05-06 13:42 ` [PATCH v6 2/2] mmc: sdhci: Add support to disable SDR104/SDR50/DDR50 based on capability register 0 Suman Tripathi 0 siblings, 2 replies; 5+ messages in thread From: Suman Tripathi @ 2015-05-06 13:42 UTC (permalink / raw) To: chris, anton, arnd, michal.simek Cc: devicetree, mlangsdo, Suman Tripathi, jcm, linux-mmc, patches, ddutile, linuxppc-dev, linux-arm-kernel This patch adds the SDHCI support for APM X-Gene SoC using ARASAN SDHCI controller. v1 change: * Use the CONFIG_ARM64_DMA_HAS_IOMMU for dma-mapping. v2 change: * Drop the IOMMU support and switching to PIO mode for arasan. controller integrated inside APM X-Gene SoC. v3 change: * Change the sdhci-of-arasan.c to support arasan4.9a. * Add quirks for arasan4.9a. v4 change: * Cleanup the Documentation and dts. v5 change: * Rebase the dts files. * Drop patch 2 and 3 as it is applied. v6 change: * Clean the unrequired properties from dts. * Rename sdhc to sdhci. * support to disable timming using capability register read. Signed-off-by: Suman Tripathi <stripathi@apm.com> --- Suman Tripathi (2): arm64: dts: Add the arasan sdhci nodes in apm-storm.dtsi. mmc: sdhci: Add support to disable SDR104/SDR50/DDR50 based on capability register 0. arch/arm64/boot/dts/apm/apm-mustang.dts | 4 +++ arch/arm64/boot/dts/apm/apm-storm.dtsi | 43 +++++++++++++++++++++++++++++++++ drivers/mmc/host/sdhci.c | 3 ++- 3 files changed, 49 insertions(+), 1 deletion(-) -- 1.8.2.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v6 1/2] arm64: dts: Add the arasan sdhci nodes in apm-storm.dtsi. 2015-05-06 13:42 [PATCH v6 0/2] Add SDHCI support for APM X-Gene SoC using ARASAN SDHCI controller Suman Tripathi @ 2015-05-06 13:42 ` Suman Tripathi 2015-05-08 8:09 ` Suman Tripathi 2015-05-06 13:42 ` [PATCH v6 2/2] mmc: sdhci: Add support to disable SDR104/SDR50/DDR50 based on capability register 0 Suman Tripathi 1 sibling, 1 reply; 5+ messages in thread From: Suman Tripathi @ 2015-05-06 13:42 UTC (permalink / raw) To: chris, anton, arnd, michal.simek Cc: devicetree, mlangsdo, Suman Tripathi, jcm, linux-mmc, patches, ddutile, linuxppc-dev, linux-arm-kernel This patch adds the arasan sdhci nodes to reuse the of-arasan driver for APM X-Gene SoC. Signed-off-by: Suman Tripathi <stripathi@apm.com> --- arch/arm64/boot/dts/apm/apm-mustang.dts | 4 +++ arch/arm64/boot/dts/apm/apm-storm.dtsi | 43 +++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) diff --git a/arch/arm64/boot/dts/apm/apm-mustang.dts b/arch/arm64/boot/dts/apm/apm-mustang.dts index 83578e7..7ccd517 100644 --- a/arch/arm64/boot/dts/apm/apm-mustang.dts +++ b/arch/arm64/boot/dts/apm/apm-mustang.dts @@ -52,3 +52,7 @@ &xgenet { status = "ok"; }; + +&sdhci0 { + status = "ok"; +}; diff --git a/arch/arm64/boot/dts/apm/apm-storm.dtsi b/arch/arm64/boot/dts/apm/apm-storm.dtsi index c8d3e0e..b5d2698 100644 --- a/arch/arm64/boot/dts/apm/apm-storm.dtsi +++ b/arch/arm64/boot/dts/apm/apm-storm.dtsi @@ -145,6 +145,40 @@ clock-output-names = "socplldiv2"; }; + ahbclk: ahbclk@1f2ac000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f2ac000 0x0 0x1000 + 0x0 0x17000000 0x0 0x2000>; + reg-names = "csr-reg", "div-reg"; + csr-offset = <0x0>; + csr-mask = <0x1>; + enable-offset = <0x8>; + enable-mask = <0x1>; + divider-offset = <0x164>; + divider-width = <0x5>; + divider-shift = <0x0>; + clock-output-names = "ahbclk"; + }; + + sdioclk: sdioclk@1f2ac000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f2ac000 0x0 0x1000 + 0x0 0x17000000 0x0 0x2000>; + reg-names = "csr-reg", "div-reg"; + csr-offset = <0x0>; + csr-mask = <0x2>; + enable-offset = <0x8>; + enable-mask = <0x2>; + divider-offset = <0x178>; + divider-width = <0x8>; + divider-shift = <0x0>; + clock-output-names = "sdioclk"; + }; + qmlclk: qmlclk { compatible = "apm,xgene-device-clock"; #clock-cells = <1>; @@ -533,6 +567,15 @@ interrupts = <0x0 0x4f 0x4>; }; + sdhci0: sdhci@1c000000 { + compatible = "arasan,sdhci-4.9a"; + reg = <0x0 0x1c000000 0x0 0x100>; + interrupts = <0x0 0x49 0x4>; + dma-coherent; + clock-names = "clk_xin", "clk_ahb"; + clocks = <&sdioclk 0>, <&ahbclk 0>; + }; + phy1: phy@1f21a000 { compatible = "apm,xgene-phy"; reg = <0x0 0x1f21a000 0x0 0x100>; -- 1.8.2.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v6 1/2] arm64: dts: Add the arasan sdhci nodes in apm-storm.dtsi. 2015-05-06 13:42 ` [PATCH v6 1/2] arm64: dts: Add the arasan sdhci nodes in apm-storm.dtsi Suman Tripathi @ 2015-05-08 8:09 ` Suman Tripathi 0 siblings, 0 replies; 5+ messages in thread From: Suman Tripathi @ 2015-05-08 8:09 UTC (permalink / raw) To: Chris Ball, Anton Vorontsov, Arnd Bergmann, Michal Simek Cc: devicetree@vger.kernel.org, Mark Langsdorf, Suman Tripathi, Jon Masters, linux-mmc, patches, Don Dutile, linuxppc-dev, linux-arm-kernel [-- Attachment #1: Type: text/plain, Size: 3883 bytes --] On Wed, May 6, 2015 at 7:12 PM, Suman Tripathi <stripathi@apm.com> wrote: > This patch adds the arasan sdhci nodes to reuse the of-arasan > driver for APM X-Gene SoC. > > Signed-off-by: Suman Tripathi <stripathi@apm.com> > --- > arch/arm64/boot/dts/apm/apm-mustang.dts | 4 +++ > arch/arm64/boot/dts/apm/apm-storm.dtsi | 43 > +++++++++++++++++++++++++++++++++ > 2 files changed, 47 insertions(+) > > diff --git a/arch/arm64/boot/dts/apm/apm-mustang.dts > b/arch/arm64/boot/dts/apm/apm-mustang.dts > index 83578e7..7ccd517 100644 > --- a/arch/arm64/boot/dts/apm/apm-mustang.dts > +++ b/arch/arm64/boot/dts/apm/apm-mustang.dts > @@ -52,3 +52,7 @@ > &xgenet { > status = "ok"; > }; > + > +&sdhci0 { > + status = "ok"; > +}; > diff --git a/arch/arm64/boot/dts/apm/apm-storm.dtsi > b/arch/arm64/boot/dts/apm/apm-storm.dtsi > index c8d3e0e..b5d2698 100644 > --- a/arch/arm64/boot/dts/apm/apm-storm.dtsi > +++ b/arch/arm64/boot/dts/apm/apm-storm.dtsi > @@ -145,6 +145,40 @@ > clock-output-names = "socplldiv2"; > }; > > + ahbclk: ahbclk@1f2ac000 { > + compatible = "apm,xgene-device-clock"; > + #clock-cells = <1>; > + clocks = <&socplldiv2 0>; > + reg = <0x0 0x1f2ac000 0x0 0x1000 > + 0x0 0x17000000 0x0 0x2000>; > + reg-names = "csr-reg", "div-reg"; > + csr-offset = <0x0>; > + csr-mask = <0x1>; > + enable-offset = <0x8>; > + enable-mask = <0x1>; > + divider-offset = <0x164>; > + divider-width = <0x5>; > + divider-shift = <0x0>; > + clock-output-names = "ahbclk"; > + }; > + > + sdioclk: sdioclk@1f2ac000 { > + compatible = "apm,xgene-device-clock"; > + #clock-cells = <1>; > + clocks = <&socplldiv2 0>; > + reg = <0x0 0x1f2ac000 0x0 0x1000 > + 0x0 0x17000000 0x0 0x2000>; > + reg-names = "csr-reg", "div-reg"; > + csr-offset = <0x0>; > + csr-mask = <0x2>; > + enable-offset = <0x8>; > + enable-mask = <0x2>; > + divider-offset = <0x178>; > + divider-width = <0x8>; > + divider-shift = <0x0>; > + clock-output-names = "sdioclk"; > + }; > + > qmlclk: qmlclk { > compatible = "apm,xgene-device-clock"; > #clock-cells = <1>; > @@ -533,6 +567,15 @@ > interrupts = <0x0 0x4f 0x4>; > }; > > + sdhci0: sdhci@1c000000 { > + compatible = "arasan,sdhci-4.9a"; > + reg = <0x0 0x1c000000 0x0 0x100>; > + interrupts = <0x0 0x49 0x4>; > + dma-coherent; > + clock-names = "clk_xin", "clk_ahb"; > + clocks = <&sdioclk 0>, <&ahbclk 0>; > + }; > + > phy1: phy@1f21a000 { > compatible = "apm,xgene-phy"; > reg = <0x0 0x1f21a000 0x0 0x100>; > -- > 1.8.2.1 > > Any comments on this patch ?? -- Thanks, with regards, Suman Tripathi [-- Attachment #2: Type: text/html, Size: 5664 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v6 2/2] mmc: sdhci: Add support to disable SDR104/SDR50/DDR50 based on capability register 0. 2015-05-06 13:42 [PATCH v6 0/2] Add SDHCI support for APM X-Gene SoC using ARASAN SDHCI controller Suman Tripathi 2015-05-06 13:42 ` [PATCH v6 1/2] arm64: dts: Add the arasan sdhci nodes in apm-storm.dtsi Suman Tripathi @ 2015-05-06 13:42 ` Suman Tripathi 2015-05-08 8:10 ` Suman Tripathi 1 sibling, 1 reply; 5+ messages in thread From: Suman Tripathi @ 2015-05-06 13:42 UTC (permalink / raw) To: chris, anton, arnd, michal.simek Cc: devicetree, mlangsdo, Suman Tripathi, jcm, linux-mmc, patches, ddutile, linuxppc-dev, linux-arm-kernel The sdhci framework disables SDR104/SDR50/DDR50 based on only quirk. This patch adds the support to disable SDR104/SDR50/DDR50 based on reading the capability register 0. Signed-off-by: Suman Tripathi <stripathi@apm.com> --- drivers/mmc/host/sdhci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c index c80287a..e024c64 100644 --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c @@ -3199,7 +3199,8 @@ int sdhci_add_host(struct sdhci_host *host) } } - if (host->quirks2 & SDHCI_QUIRK2_NO_1_8_V) + if (host->quirks2 & SDHCI_QUIRK2_NO_1_8_V || + !(caps[0] & SDHCI_CAN_VDD_180)) caps[1] &= ~(SDHCI_SUPPORT_SDR104 | SDHCI_SUPPORT_SDR50 | SDHCI_SUPPORT_DDR50); -- 1.8.2.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v6 2/2] mmc: sdhci: Add support to disable SDR104/SDR50/DDR50 based on capability register 0. 2015-05-06 13:42 ` [PATCH v6 2/2] mmc: sdhci: Add support to disable SDR104/SDR50/DDR50 based on capability register 0 Suman Tripathi @ 2015-05-08 8:10 ` Suman Tripathi 0 siblings, 0 replies; 5+ messages in thread From: Suman Tripathi @ 2015-05-08 8:10 UTC (permalink / raw) To: Chris Ball, Anton Vorontsov, Arnd Bergmann, Michal Simek Cc: devicetree@vger.kernel.org, Mark Langsdorf, Suman Tripathi, Jon Masters, linux-mmc, patches, Don Dutile, linuxppc-dev, linux-arm-kernel [-- Attachment #1: Type: text/plain, Size: 1038 bytes --] On Wed, May 6, 2015 at 7:12 PM, Suman Tripathi <stripathi@apm.com> wrote: > The sdhci framework disables SDR104/SDR50/DDR50 based on only quirk. > This patch adds the support to disable SDR104/SDR50/DDR50 based on > reading the capability register 0. > > Signed-off-by: Suman Tripathi <stripathi@apm.com> > --- > drivers/mmc/host/sdhci.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c > index c80287a..e024c64 100644 > --- a/drivers/mmc/host/sdhci.c > +++ b/drivers/mmc/host/sdhci.c > @@ -3199,7 +3199,8 @@ int sdhci_add_host(struct sdhci_host *host) > } > } > > - if (host->quirks2 & SDHCI_QUIRK2_NO_1_8_V) > + if (host->quirks2 & SDHCI_QUIRK2_NO_1_8_V || > + !(caps[0] & SDHCI_CAN_VDD_180)) > caps[1] &= ~(SDHCI_SUPPORT_SDR104 | SDHCI_SUPPORT_SDR50 | > SDHCI_SUPPORT_DDR50); > > -- > 1.8.2.1 > > Any comments on this patch ?? -- Thanks, with regards, Suman Tripathi [-- Attachment #2: Type: text/html, Size: 1675 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-05-08 8:10 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-05-06 13:42 [PATCH v6 0/2] Add SDHCI support for APM X-Gene SoC using ARASAN SDHCI controller Suman Tripathi 2015-05-06 13:42 ` [PATCH v6 1/2] arm64: dts: Add the arasan sdhci nodes in apm-storm.dtsi Suman Tripathi 2015-05-08 8:09 ` Suman Tripathi 2015-05-06 13:42 ` [PATCH v6 2/2] mmc: sdhci: Add support to disable SDR104/SDR50/DDR50 based on capability register 0 Suman Tripathi 2015-05-08 8:10 ` Suman Tripathi
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).