Message ID | 1364901613-25080-8-git-send-email-josephl@nvidia.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 04/02/2013 05:20 AM, Joseph Lo wrote: > This patch adds "non-removable" property of MMC host where the eMMC device > is for Tegra platform. > > And the "keep-power-in-suspend" property was used for the SDIO device that > need this to go into suspend mode (e.g. BRCM43xx series). > arch/arm/boot/dts/tegra20-paz00.dts | 1 + > arch/arm/boot/dts/tegra20-seaboard.dts | 2 ++ > arch/arm/boot/dts/tegra20-ventana.dts | 2 ++ > arch/arm/boot/dts/tegra20-whistler.dts | 1 + > arch/arm/boot/dts/tegra30-beaver.dts | 1 + > arch/arm/boot/dts/tegra30-cardhu-a02.dts | 1 + > arch/arm/boot/dts/tegra30-cardhu-a04.dts | 1 + > arch/arm/boot/dts/tegra30-cardhu.dtsi | 1 + I think there are a bunch of other boards that need a similar change, right? There are certainly eMMC devices on other boards, and shouldn't they be marked with non-removable? In particular, Beaver, Dalmore, and Pluto, and likely some/all of the Colibri and Avionic Design boards. I think it should be obvious which SDHCI devices need this, since there won't be any cd-gpios property and the bus-width will likely be 8.
On Tue, Apr 02, 2013 at 01:58:41PM -0600, Stephen Warren wrote: > On 04/02/2013 05:20 AM, Joseph Lo wrote: > > This patch adds "non-removable" property of MMC host where the eMMC device > > is for Tegra platform. > > > > And the "keep-power-in-suspend" property was used for the SDIO device that > > need this to go into suspend mode (e.g. BRCM43xx series). > > > arch/arm/boot/dts/tegra20-paz00.dts | 1 + > > arch/arm/boot/dts/tegra20-seaboard.dts | 2 ++ > > arch/arm/boot/dts/tegra20-ventana.dts | 2 ++ > > arch/arm/boot/dts/tegra20-whistler.dts | 1 + > > arch/arm/boot/dts/tegra30-beaver.dts | 1 + > > arch/arm/boot/dts/tegra30-cardhu-a02.dts | 1 + > > arch/arm/boot/dts/tegra30-cardhu-a04.dts | 1 + > > arch/arm/boot/dts/tegra30-cardhu.dtsi | 1 + > > I think there are a bunch of other boards that need a similar change, > right? There are certainly eMMC devices on other boards, and shouldn't > they be marked with non-removable? In particular, Beaver, Dalmore, and > Pluto, and likely some/all of the Colibri and Avionic Design boards. I > think it should be obvious which SDHCI devices need this, since there > won't be any cd-gpios property and the bus-width will likely be 8. For Tegra20 Tamonten we don't use eMMC. Ideally we'd be using NAND to boot from but that doesn't have mainline support. I have a semi-working patch and will probably spend some more time getting it ready. The MMC cards are all removable, though I guess since they are the boot device they still should remain powered in suspend? Thierry
On Wed, 2013-04-03 at 13:45 +0800, Thierry Reding wrote: > * PGP Signed by an unknown key > > On Tue, Apr 02, 2013 at 01:58:41PM -0600, Stephen Warren wrote: > > On 04/02/2013 05:20 AM, Joseph Lo wrote: > > > This patch adds "non-removable" property of MMC host where the eMMC device > > > is for Tegra platform. > > > > > > And the "keep-power-in-suspend" property was used for the SDIO device that > > > need this to go into suspend mode (e.g. BRCM43xx series). > > > > > arch/arm/boot/dts/tegra20-paz00.dts | 1 + > > > arch/arm/boot/dts/tegra20-seaboard.dts | 2 ++ > > > arch/arm/boot/dts/tegra20-ventana.dts | 2 ++ > > > arch/arm/boot/dts/tegra20-whistler.dts | 1 + > > > arch/arm/boot/dts/tegra30-beaver.dts | 1 + > > > arch/arm/boot/dts/tegra30-cardhu-a02.dts | 1 + > > > arch/arm/boot/dts/tegra30-cardhu-a04.dts | 1 + > > > arch/arm/boot/dts/tegra30-cardhu.dtsi | 1 + > > > > I think there are a bunch of other boards that need a similar change, > > right? There are certainly eMMC devices on other boards, and shouldn't > > they be marked with non-removable? In particular, Beaver, Dalmore, and > > Pluto, and likely some/all of the Colibri and Avionic Design boards. I > > think it should be obvious which SDHCI devices need this, since there > > won't be any cd-gpios property and the bus-width will likely be 8. > > For Tegra20 Tamonten we don't use eMMC. Ideally we'd be using NAND to > boot from but that doesn't have mainline support. I have a semi-working > patch and will probably spend some more time getting it ready. The MMC > cards are all removable, though I guess since they are the boot device > they still should remain powered in suspend? > The "non-removable" property is a specific property to avoid the risk of writing back data to a different card after resume. If you just want to test the suspend function, you can add "mmc_core.removable=0" in your boot arg. The "keep-power-in-suspend" is used for the BRCM43xx series SDIO device. Without this, it can't go into suspend mode.
On Wed, 2013-04-03 at 03:58 +0800, Stephen Warren wrote: > On 04/02/2013 05:20 AM, Joseph Lo wrote: > > This patch adds "non-removable" property of MMC host where the eMMC device > > is for Tegra platform. > > > > And the "keep-power-in-suspend" property was used for the SDIO device that > > need this to go into suspend mode (e.g. BRCM43xx series). > > > arch/arm/boot/dts/tegra20-paz00.dts | 1 + > > arch/arm/boot/dts/tegra20-seaboard.dts | 2 ++ > > arch/arm/boot/dts/tegra20-ventana.dts | 2 ++ > > arch/arm/boot/dts/tegra20-whistler.dts | 1 + > > arch/arm/boot/dts/tegra30-beaver.dts | 1 + > > arch/arm/boot/dts/tegra30-cardhu-a02.dts | 1 + > > arch/arm/boot/dts/tegra30-cardhu-a04.dts | 1 + > > arch/arm/boot/dts/tegra30-cardhu.dtsi | 1 + > > I think there are a bunch of other boards that need a similar change, > right? There are certainly eMMC devices on other boards, and shouldn't > they be marked with non-removable? In particular, Beaver, Dalmore, and > Pluto, and likely some/all of the Colibri and Avionic Design boards. I > think it should be obvious which SDHCI devices need this, since there > won't be any cd-gpios property and the bus-width will likely be 8. OK, I already added the property for Beaver. I will add one more support for Dalmore in this patch. For Pluto, it didn't add any SDCHI node in DT yet. We need another patch to enable SDHCI on Pluto first and add the properties there. Thanks, Joseph
diff --git a/arch/arm/boot/dts/tegra20-paz00.dts b/arch/arm/boot/dts/tegra20-paz00.dts index 54b05b2..c55e062 100644 --- a/arch/arm/boot/dts/tegra20-paz00.dts +++ b/arch/arm/boot/dts/tegra20-paz00.dts @@ -458,6 +458,7 @@ sdhci@c8000600 { status = "okay"; bus-width = <8>; + non-removable; }; gpio-keys { diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts index 3b347b8..5572ee7 100644 --- a/arch/arm/boot/dts/tegra20-seaboard.dts +++ b/arch/arm/boot/dts/tegra20-seaboard.dts @@ -593,6 +593,7 @@ status = "okay"; power-gpios = <&gpio 86 0>; /* gpio PK6 */ bus-width = <4>; + keep-power-in-suspend; }; sdhci@c8000400 { @@ -606,6 +607,7 @@ sdhci@c8000600 { status = "okay"; bus-width = <8>; + non-removable; }; gpio-keys { diff --git a/arch/arm/boot/dts/tegra20-ventana.dts b/arch/arm/boot/dts/tegra20-ventana.dts index 112ef5c..4363764 100644 --- a/arch/arm/boot/dts/tegra20-ventana.dts +++ b/arch/arm/boot/dts/tegra20-ventana.dts @@ -529,6 +529,7 @@ status = "okay"; power-gpios = <&gpio 86 0>; /* gpio PK6 */ bus-width = <4>; + keep-power-in-suspend; }; sdhci@c8000400 { @@ -542,6 +543,7 @@ sdhci@c8000600 { status = "okay"; bus-width = <8>; + non-removable; }; gpio-keys { diff --git a/arch/arm/boot/dts/tegra20-whistler.dts b/arch/arm/boot/dts/tegra20-whistler.dts index 0b04262..878790e 100644 --- a/arch/arm/boot/dts/tegra20-whistler.dts +++ b/arch/arm/boot/dts/tegra20-whistler.dts @@ -531,6 +531,7 @@ sdhci@c8000600 { status = "okay"; bus-width = <8>; + non-removable; }; kbc { diff --git a/arch/arm/boot/dts/tegra30-beaver.dts b/arch/arm/boot/dts/tegra30-beaver.dts index c3e0f25..772e6cf 100644 --- a/arch/arm/boot/dts/tegra30-beaver.dts +++ b/arch/arm/boot/dts/tegra30-beaver.dts @@ -279,6 +279,7 @@ sdhci@78000600 { status = "okay"; bus-width = <8>; + non-removable; }; regulators { diff --git a/arch/arm/boot/dts/tegra30-cardhu-a02.dts b/arch/arm/boot/dts/tegra30-cardhu-a02.dts index adc88aa..e392bd2 100644 --- a/arch/arm/boot/dts/tegra30-cardhu-a02.dts +++ b/arch/arm/boot/dts/tegra30-cardhu-a02.dts @@ -88,6 +88,7 @@ status = "okay"; power-gpios = <&gpio 28 0>; /* gpio PD4 */ bus-width = <4>; + keep-power-in-suspend; }; }; diff --git a/arch/arm/boot/dts/tegra30-cardhu-a04.dts b/arch/arm/boot/dts/tegra30-cardhu-a04.dts index 08163e1..d0db6c7 100644 --- a/arch/arm/boot/dts/tegra30-cardhu-a04.dts +++ b/arch/arm/boot/dts/tegra30-cardhu-a04.dts @@ -100,5 +100,6 @@ status = "okay"; power-gpios = <&gpio 27 0>; /* gpio PD3 */ bus-width = <4>; + keep-power-in-suspend; }; }; diff --git a/arch/arm/boot/dts/tegra30-cardhu.dtsi b/arch/arm/boot/dts/tegra30-cardhu.dtsi index eeea511..053913f 100644 --- a/arch/arm/boot/dts/tegra30-cardhu.dtsi +++ b/arch/arm/boot/dts/tegra30-cardhu.dtsi @@ -333,6 +333,7 @@ sdhci@78000600 { status = "okay"; bus-width = <8>; + non-removable; }; regulators {
This patch adds "non-removable" property of MMC host where the eMMC device is for Tegra platform. And the "keep-power-in-suspend" property was used for the SDIO device that need this to go into suspend mode (e.g. BRCM43xx series). Signed-off-by: Joseph Lo <josephl@nvidia.com> --- V5: * no change V4: * no change V3: * no change V2: * no change --- arch/arm/boot/dts/tegra20-paz00.dts | 1 + arch/arm/boot/dts/tegra20-seaboard.dts | 2 ++ arch/arm/boot/dts/tegra20-ventana.dts | 2 ++ arch/arm/boot/dts/tegra20-whistler.dts | 1 + arch/arm/boot/dts/tegra30-beaver.dts | 1 + arch/arm/boot/dts/tegra30-cardhu-a02.dts | 1 + arch/arm/boot/dts/tegra30-cardhu-a04.dts | 1 + arch/arm/boot/dts/tegra30-cardhu.dtsi | 1 + 8 files changed, 10 insertions(+)