Re: [PATCH phy v4 3/5] Revert "ata: ahci: mvebu: Make SATA PHY optional for Armada 3720"

Marek Behún
2022-02-24T15:13:32Z

Dear Jens,

could you please send Ack for this patch?
https://lore.kernel.org/linux-phy/20220203214444.1508-4-kabel@kernel.org/

It is a revert of another patch that was added because of potential
problems in comphy driver, and these are now solved by this series, but
Vinod says he can apply the ATA patch but he needs your Ack.

Thanks.

Marek

On Thu, 3 Feb 2022 22:44:42 +0100
Marek Behún <kabel@kernel.org> wrote:

> From: Pali Rohár <pali@kernel.org>
>
> This reverts commit 45aefe3d2251e4e229d7662052739f96ad1d08d9.
>
> Armada 3720 PHY driver (phy-mvebu-a3700-comphy.c) does not return
> -EOPNOTSUPP from phy_power_on() callback anymore.
>
> So remove AHCI_HFLAG_IGN_NOTSUPP_POWER_ON flag from Armada 3720 plat data.
>
> AHCI_HFLAG_IGN_NOTSUPP_POWER_ON is not used by any other ahci driver, so
> remove this flag completely.
>
> Signed-off-by: Pali Rohár <pali@kernel.org>
> Signed-off-by: Marek Behún <kabel@kernel.org>
> Acked-by: Miquel Raynal <miquel.raynal@bootlin.com>
> ---
> drivers/ata/ahci.h | 2 --
> drivers/ata/ahci_mvebu.c | 2 +-
> drivers/ata/libahci_platform.c | 2 +-
> 3 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/ata/ahci.h b/drivers/ata/ahci.h
> index eeac5482f1d1..a57d90dd4964 100644
> --- a/drivers/ata/ahci.h
> +++ b/drivers/ata/ahci.h
> @@ -240,8 +240,6 @@ enum {
> as default lpm_policy */
> AHCI_HFLAG_SUSPEND_PHYS = (1 << 26), /* handle PHYs during
> suspend/resume */
> - AHCI_HFLAG_IGN_NOTSUPP_POWER_ON = (1 << 27), /* ignore -EOPNOTSUPP
> - from phy_power_on() */
> AHCI_HFLAG_NO_SXS = (1 << 28), /* SXS not supported */
>
> /* ap->flags bits */
> diff --git a/drivers/ata/ahci_mvebu.c b/drivers/ata/ahci_mvebu.c
> index 3ad46d26d9d5..d4bba3ace45d 100644
> --- a/drivers/ata/ahci_mvebu.c
> +++ b/drivers/ata/ahci_mvebu.c
> @@ -227,7 +227,7 @@ static const struct ahci_mvebu_plat_data ahci_mvebu_armada_380_plat_data = {
>
> static const struct ahci_mvebu_plat_data ahci_mvebu_armada_3700_plat_data = {
> .plat_config = ahci_mvebu_armada_3700_config,
> - .flags = AHCI_HFLAG_SUSPEND_PHYS | AHCI_HFLAG_IGN_NOTSUPP_POWER_ON,
> + .flags = AHCI_HFLAG_SUSPEND_PHYS,
> };
>
> static const struct of_device_id ahci_mvebu_of_match[] = {
> diff --git a/drivers/ata/libahci_platform.c b/drivers/ata/libahci_platform.c
> index 18296443ccba..b26755bdc9d6 100644
> --- a/drivers/ata/libahci_platform.c
> +++ b/drivers/ata/libahci_platform.c
> @@ -59,7 +59,7 @@ int ahci_platform_enable_phys(struct ahci_host_priv *hpriv)
> }
>
> rc = phy_power_on(hpriv->phys[i]);
> - if (rc && !(rc == -EOPNOTSUPP && (hpriv->flags & AHCI_HFLAG_IGN_NOTSUPP_POWER_ON))) {
> + if (rc) {
> phy_exit(hpriv->phys[i]);
> goto disable_phys;
> }