phy: marvell: fix handling of unconnected comphy
authorChristine Gharzuzi <chrisg@marvell.com>
Wed, 23 May 2018 09:10:36 +0000 (12:10 +0300)
committerStefan Roese <sr@denx.de>
Thu, 29 Apr 2021 05:45:24 +0000 (07:45 +0200)
- the default value of comphy pipe selector is set to PCIe (x4)
  in case of unconnected comphy the default value remains 0x4
  which may lead to several issues with comphy initialization.

- this patch adds SMC call that powers off the comphy lane in case of
  unconnected comphy.

Change-Id: I196b2916518dd8df3b159ffa85e2989b8e483087
Signed-off-by: Christine Gharzuzi <chrisg@marvell.com>
Signed-off-by: Igal Liberman <igall@marvell.com>
Reviewed-by: Grzegorz Jaszczyk <jaz@semihalf.com>
drivers/phy/marvell/comphy_cp110.c

index 5520288..d9a94f9 100644 (file)
@@ -553,6 +553,10 @@ int comphy_cp110_init(struct chip_serdes_phy_config *ptr_chip_cfg,
                }
                switch (ptr_comphy_map->type) {
                case COMPHY_TYPE_UNCONNECTED:
+                       ret = comphy_smc(MV_SIP_COMPHY_POWER_OFF,
+                                        ptr_chip_cfg->comphy_base_addr,
+                                        lane,
+                                        ptr_comphy_map->type);
                case COMPHY_TYPE_IGNORE:
                        continue;
                        break;