f225a2105701945afde0f17ef2b702cfc0e165a2
[openwrt/staging/stintel.git] / target / linux / generic / backport-5.15 / 346-v5.18-01-Revert-ata-ahci-mvebu-Make-SATA-PHY-optional-for-Arm.patch
1 From ee995101fde67f85a3cd4c74f4f92fc4592e726b Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= <pali@kernel.org>
3 Date: Thu, 3 Feb 2022 22:44:42 +0100
4 Subject: [PATCH 1/3] Revert "ata: ahci: mvebu: Make SATA PHY optional for
5 Armada 3720"
6 MIME-Version: 1.0
7 Content-Type: text/plain; charset=UTF-8
8 Content-Transfer-Encoding: 8bit
9
10 This reverts commit 45aefe3d2251e4e229d7662052739f96ad1d08d9.
11
12 Armada 3720 PHY driver (phy-mvebu-a3700-comphy.c) does not return
13 -EOPNOTSUPP from phy_power_on() callback anymore.
14
15 So remove AHCI_HFLAG_IGN_NOTSUPP_POWER_ON flag from Armada 3720 plat data.
16
17 AHCI_HFLAG_IGN_NOTSUPP_POWER_ON is not used by any other ahci driver, so
18 remove this flag completely.
19
20 Signed-off-by: Pali Rohár <pali@kernel.org>
21 Signed-off-by: Marek Behún <kabel@kernel.org>
22 Acked-by: Miquel Raynal <miquel.raynal@bootlin.com>
23 Acked-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
24 Link: https://lore.kernel.org/r/20220203214444.1508-4-kabel@kernel.org
25 Signed-off-by: Vinod Koul <vkoul@kernel.org>
26 ---
27 drivers/ata/ahci.h | 2 --
28 drivers/ata/ahci_mvebu.c | 2 +-
29 drivers/ata/libahci_platform.c | 2 +-
30 3 files changed, 2 insertions(+), 4 deletions(-)
31
32 --- a/drivers/ata/ahci.h
33 +++ b/drivers/ata/ahci.h
34 @@ -241,8 +241,6 @@ enum {
35 as default lpm_policy */
36 AHCI_HFLAG_SUSPEND_PHYS = BIT(26), /* handle PHYs during
37 suspend/resume */
38 - AHCI_HFLAG_IGN_NOTSUPP_POWER_ON = BIT(27), /* ignore -EOPNOTSUPP
39 - from phy_power_on() */
40 AHCI_HFLAG_NO_SXS = BIT(28), /* SXS not supported */
41
42 /* ap->flags bits */
43 --- a/drivers/ata/ahci_mvebu.c
44 +++ b/drivers/ata/ahci_mvebu.c
45 @@ -227,7 +227,7 @@ static const struct ahci_mvebu_plat_data
46
47 static const struct ahci_mvebu_plat_data ahci_mvebu_armada_3700_plat_data = {
48 .plat_config = ahci_mvebu_armada_3700_config,
49 - .flags = AHCI_HFLAG_SUSPEND_PHYS | AHCI_HFLAG_IGN_NOTSUPP_POWER_ON,
50 + .flags = AHCI_HFLAG_SUSPEND_PHYS,
51 };
52
53 static const struct of_device_id ahci_mvebu_of_match[] = {
54 --- a/drivers/ata/libahci_platform.c
55 +++ b/drivers/ata/libahci_platform.c
56 @@ -59,7 +59,7 @@ int ahci_platform_enable_phys(struct ahc
57 }
58
59 rc = phy_power_on(hpriv->phys[i]);
60 - if (rc && !(rc == -EOPNOTSUPP && (hpriv->flags & AHCI_HFLAG_IGN_NOTSUPP_POWER_ON))) {
61 + if (rc) {
62 phy_exit(hpriv->phys[i]);
63 goto disable_phys;
64 }