mirror of
https://github.com/andreili/SBC_builder.git
synced 2025-08-24 03:14:06 +02:00
45 lines
1.4 KiB
Diff
45 lines
1.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Valmantas Paliksa <walmis@gmail.com>
|
|
Date: Thu, 12 Dec 2024 12:24:33 +0200
|
|
Subject: Disable PHY_LANE_IDLE_OFF for each instance of
|
|
rockchip_pcie_phy_power_one
|
|
|
|
Previously PHY_LANE_IDLE_OFF was only disabled for the first lane
|
|
---
|
|
drivers/phy/rockchip/phy-rockchip-pcie.c | 12 +++++-----
|
|
1 file changed, 6 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/drivers/phy/rockchip/phy-rockchip-pcie.c b/drivers/phy/rockchip/phy-rockchip-pcie.c
|
|
index 111111111111..222222222222 100644
|
|
--- a/drivers/phy/rockchip/phy-rockchip-pcie.c
|
|
+++ b/drivers/phy/rockchip/phy-rockchip-pcie.c
|
|
@@ -160,6 +160,12 @@ static int rockchip_pcie_phy_power_on(struct phy *phy)
|
|
|
|
guard(mutex)(&rk_phy->pcie_mutex);
|
|
|
|
+ regmap_write(rk_phy->reg_base,
|
|
+ rk_phy->phy_data->pcie_laneoff,
|
|
+ HIWORD_UPDATE(!PHY_LANE_IDLE_OFF,
|
|
+ PHY_LANE_IDLE_MASK,
|
|
+ PHY_LANE_IDLE_A_SHIFT + inst->index));
|
|
+
|
|
if (rk_phy->pwr_cnt++) {
|
|
return 0;
|
|
}
|
|
@@ -176,12 +182,6 @@ static int rockchip_pcie_phy_power_on(struct phy *phy)
|
|
PHY_CFG_ADDR_MASK,
|
|
PHY_CFG_ADDR_SHIFT));
|
|
|
|
- regmap_write(rk_phy->reg_base,
|
|
- rk_phy->phy_data->pcie_laneoff,
|
|
- HIWORD_UPDATE(!PHY_LANE_IDLE_OFF,
|
|
- PHY_LANE_IDLE_MASK,
|
|
- PHY_LANE_IDLE_A_SHIFT + inst->index));
|
|
-
|
|
/*
|
|
* No documented timeout value for phy operation below,
|
|
* so we make it large enough here. And we use loop-break
|
|
--
|
|
Armbian
|
|
|