2017-03-28 18:08:34

by Azhar Shaikh

[permalink] [raw]
Subject: [PATCH 1/2] mmc: sdhci-acpi: Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel controllers

Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel SD card
controllers.

Signed-off-by: Azhar Shaikh <[email protected]>
---
drivers/mmc/host/sdhci-acpi.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index 9dcb704..a15d237 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -263,10 +263,8 @@ static int sdhci_acpi_sd_probe_slot(struct platform_device *pdev,

/* Platform specific code during sd probe slot goes here */

- if (hid && !strcmp(hid, "80865ACA")) {
+ if (hid && !strcmp(hid, "80865ACA"))
host->mmc_host_ops.get_cd = bxt_get_cd;
- host->mmc->caps |= MMC_CAP_AGGRESSIVE_PM;
- }

return 0;
}
@@ -302,7 +300,7 @@ static int sdhci_acpi_sd_probe_slot(struct platform_device *pdev,
.quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC,
.quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON |
SDHCI_QUIRK2_STOP_WITH_TC,
- .caps = MMC_CAP_WAIT_WHILE_BUSY,
+ .caps = MMC_CAP_WAIT_WHILE_BUSY | MMC_CAP_AGGRESSIVE_PM,
.probe_slot = sdhci_acpi_sd_probe_slot,
};

--
1.9.1


2017-03-28 18:08:35

by Azhar Shaikh

[permalink] [raw]
Subject: [PATCH 2/2] mmc: sdhci-pci: Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel controllers

Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel SD card
controllers.

Signed-off-by: Azhar Shaikh <[email protected]>
---
drivers/mmc/host/sdhci-pci-core.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/host/sdhci-pci-core.c b/drivers/mmc/host/sdhci-pci-core.c
index 86560d5..4a58a80 100644
--- a/drivers/mmc/host/sdhci-pci-core.c
+++ b/drivers/mmc/host/sdhci-pci-core.c
@@ -423,16 +423,15 @@ static int byt_sdio_probe_slot(struct sdhci_pci_slot *slot)

static int byt_sd_probe_slot(struct sdhci_pci_slot *slot)
{
- slot->host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY;
+ slot->host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY |
+ MMC_CAP_AGGRESSIVE_PM;
slot->cd_idx = 0;
slot->cd_override_level = true;
if (slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_BXT_SD ||
slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_BXTM_SD ||
slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_APL_SD ||
- slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_SD) {
+ slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_SD)
slot->host->mmc_host_ops.get_cd = bxt_get_cd;
- slot->host->mmc->caps |= MMC_CAP_AGGRESSIVE_PM;
- }

return 0;
}
--
1.9.1

2017-03-29 18:16:45

by Azhar Shaikh

[permalink] [raw]
Subject: [PATCH v2 2/2] mmc: sdhci-pci: Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel controllers

Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel SD card
controllers.

Signed-off-by: Azhar Shaikh <[email protected]>
---
Changes in v2:
- Rebased the patch on top of 'next' branch.
- No code change.

drivers/mmc/host/sdhci-pci-core.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/host/sdhci-pci-core.c b/drivers/mmc/host/sdhci-pci-core.c
index 6c0440e..833072b 100644
--- a/drivers/mmc/host/sdhci-pci-core.c
+++ b/drivers/mmc/host/sdhci-pci-core.c
@@ -630,16 +630,15 @@ static int byt_sdio_probe_slot(struct sdhci_pci_slot *slot)
static int byt_sd_probe_slot(struct sdhci_pci_slot *slot)
{
byt_read_dsm(slot);
- slot->host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY;
+ slot->host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY |
+ MMC_CAP_AGGRESSIVE_PM;
slot->cd_idx = 0;
slot->cd_override_level = true;
if (slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_BXT_SD ||
slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_BXTM_SD ||
slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_APL_SD ||
- slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_SD) {
+ slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_SD)
slot->host->mmc_host_ops.get_cd = bxt_get_cd;
- slot->host->mmc->caps |= MMC_CAP_AGGRESSIVE_PM;
- }

return 0;
}
--
1.9.1

2017-03-29 18:17:03

by Azhar Shaikh

[permalink] [raw]
Subject: [PATCH v2 1/2] mmc: sdhci-acpi: Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel controllers

Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel SD card
controllers.

Signed-off-by: Azhar Shaikh <[email protected]>
---
Changes in v2:
- Rebased the patch on top of 'next' branch.
- No code change.

drivers/mmc/host/sdhci-acpi.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index 665c5f3..c6a9a1b 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -263,10 +263,8 @@ static int sdhci_acpi_sd_probe_slot(struct platform_device *pdev,

/* Platform specific code during sd probe slot goes here */

- if (hid && !strcmp(hid, "80865ACA")) {
+ if (hid && !strcmp(hid, "80865ACA"))
host->mmc_host_ops.get_cd = bxt_get_cd;
- host->mmc->caps |= MMC_CAP_AGGRESSIVE_PM;
- }

return 0;
}
@@ -302,7 +300,7 @@ static int sdhci_acpi_sd_probe_slot(struct platform_device *pdev,
.quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC,
.quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON |
SDHCI_QUIRK2_STOP_WITH_TC,
- .caps = MMC_CAP_WAIT_WHILE_BUSY,
+ .caps = MMC_CAP_WAIT_WHILE_BUSY | MMC_CAP_AGGRESSIVE_PM,
.probe_slot = sdhci_acpi_sd_probe_slot,
};

--
1.9.1

2017-03-30 07:47:07

by Adrian Hunter

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] mmc: sdhci-acpi: Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel controllers

On 29/03/17 21:16, Azhar Shaikh wrote:
> Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel SD card
> controllers.
>
> Signed-off-by: Azhar Shaikh <[email protected]>

Acked-by: Adrian Hunter <[email protected]>

> ---
> Changes in v2:
> - Rebased the patch on top of 'next' branch.
> - No code change.
>
> drivers/mmc/host/sdhci-acpi.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
> index 665c5f3..c6a9a1b 100644
> --- a/drivers/mmc/host/sdhci-acpi.c
> +++ b/drivers/mmc/host/sdhci-acpi.c
> @@ -263,10 +263,8 @@ static int sdhci_acpi_sd_probe_slot(struct platform_device *pdev,
>
> /* Platform specific code during sd probe slot goes here */
>
> - if (hid && !strcmp(hid, "80865ACA")) {
> + if (hid && !strcmp(hid, "80865ACA"))
> host->mmc_host_ops.get_cd = bxt_get_cd;
> - host->mmc->caps |= MMC_CAP_AGGRESSIVE_PM;
> - }
>
> return 0;
> }
> @@ -302,7 +300,7 @@ static int sdhci_acpi_sd_probe_slot(struct platform_device *pdev,
> .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC,
> .quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON |
> SDHCI_QUIRK2_STOP_WITH_TC,
> - .caps = MMC_CAP_WAIT_WHILE_BUSY,
> + .caps = MMC_CAP_WAIT_WHILE_BUSY | MMC_CAP_AGGRESSIVE_PM,
> .probe_slot = sdhci_acpi_sd_probe_slot,
> };
>
>

2017-03-30 07:47:28

by Adrian Hunter

[permalink] [raw]
Subject: Re: [PATCH v2 2/2] mmc: sdhci-pci: Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel controllers

On 29/03/17 21:16, Azhar Shaikh wrote:
> Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel SD card
> controllers.
>
> Signed-off-by: Azhar Shaikh <[email protected]>

Acked-by: Adrian Hunter <[email protected]>

> ---
> Changes in v2:
> - Rebased the patch on top of 'next' branch.
> - No code change.
>
> drivers/mmc/host/sdhci-pci-core.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/mmc/host/sdhci-pci-core.c b/drivers/mmc/host/sdhci-pci-core.c
> index 6c0440e..833072b 100644
> --- a/drivers/mmc/host/sdhci-pci-core.c
> +++ b/drivers/mmc/host/sdhci-pci-core.c
> @@ -630,16 +630,15 @@ static int byt_sdio_probe_slot(struct sdhci_pci_slot *slot)
> static int byt_sd_probe_slot(struct sdhci_pci_slot *slot)
> {
> byt_read_dsm(slot);
> - slot->host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY;
> + slot->host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY |
> + MMC_CAP_AGGRESSIVE_PM;
> slot->cd_idx = 0;
> slot->cd_override_level = true;
> if (slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_BXT_SD ||
> slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_BXTM_SD ||
> slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_APL_SD ||
> - slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_SD) {
> + slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_SD)
> slot->host->mmc_host_ops.get_cd = bxt_get_cd;
> - slot->host->mmc->caps |= MMC_CAP_AGGRESSIVE_PM;
> - }
>
> return 0;
> }
>

2017-03-30 19:31:19

by Ulf Hansson

[permalink] [raw]
Subject: Re: [PATCH v2 2/2] mmc: sdhci-pci: Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel controllers

On 29 March 2017 at 20:16, Azhar Shaikh <[email protected]> wrote:
> Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel SD card
> controllers.
>
> Signed-off-by: Azhar Shaikh <[email protected]>


Thanks, applied for next!

Kind regards
Uffe


> ---
> Changes in v2:
> - Rebased the patch on top of 'next' branch.
> - No code change.
>
> drivers/mmc/host/sdhci-pci-core.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/mmc/host/sdhci-pci-core.c b/drivers/mmc/host/sdhci-pci-core.c
> index 6c0440e..833072b 100644
> --- a/drivers/mmc/host/sdhci-pci-core.c
> +++ b/drivers/mmc/host/sdhci-pci-core.c
> @@ -630,16 +630,15 @@ static int byt_sdio_probe_slot(struct sdhci_pci_slot *slot)
> static int byt_sd_probe_slot(struct sdhci_pci_slot *slot)
> {
> byt_read_dsm(slot);
> - slot->host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY;
> + slot->host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY |
> + MMC_CAP_AGGRESSIVE_PM;
> slot->cd_idx = 0;
> slot->cd_override_level = true;
> if (slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_BXT_SD ||
> slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_BXTM_SD ||
> slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_APL_SD ||
> - slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_SD) {
> + slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_SD)
> slot->host->mmc_host_ops.get_cd = bxt_get_cd;
> - slot->host->mmc->caps |= MMC_CAP_AGGRESSIVE_PM;
> - }
>
> return 0;
> }
> --
> 1.9.1
>

2017-03-30 19:31:49

by Ulf Hansson

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] mmc: sdhci-acpi: Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel controllers

On 29 March 2017 at 20:16, Azhar Shaikh <[email protected]> wrote:
> Set MMC_CAP_AGGRESSIVE_PM for BYT-related Intel SD card
> controllers.
>
> Signed-off-by: Azhar Shaikh <[email protected]>


Thanks, applied for next!

Kind regards
Uffe


> ---
> Changes in v2:
> - Rebased the patch on top of 'next' branch.
> - No code change.
>
> drivers/mmc/host/sdhci-acpi.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
> index 665c5f3..c6a9a1b 100644
> --- a/drivers/mmc/host/sdhci-acpi.c
> +++ b/drivers/mmc/host/sdhci-acpi.c
> @@ -263,10 +263,8 @@ static int sdhci_acpi_sd_probe_slot(struct platform_device *pdev,
>
> /* Platform specific code during sd probe slot goes here */
>
> - if (hid && !strcmp(hid, "80865ACA")) {
> + if (hid && !strcmp(hid, "80865ACA"))
> host->mmc_host_ops.get_cd = bxt_get_cd;
> - host->mmc->caps |= MMC_CAP_AGGRESSIVE_PM;
> - }
>
> return 0;
> }
> @@ -302,7 +300,7 @@ static int sdhci_acpi_sd_probe_slot(struct platform_device *pdev,
> .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC,
> .quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON |
> SDHCI_QUIRK2_STOP_WITH_TC,
> - .caps = MMC_CAP_WAIT_WHILE_BUSY,
> + .caps = MMC_CAP_WAIT_WHILE_BUSY | MMC_CAP_AGGRESSIVE_PM,
> .probe_slot = sdhci_acpi_sd_probe_slot,
> };
>
> --
> 1.9.1
>