Thread (20 messages) 20 messages, 3 authors, 2022-09-14

Re: [PATCH v2 7/7] phy: phy-mtk-tphy: fix the phy type setting issue

From: Chunfeng Yun <chunfeng.yun@mediatek.com>
Date: 2022-09-08 01:27:20
Also in: linux-arm-kernel, linux-mediatek, linux-phy, lkml

On Wed, 2022-08-31 at 10:31 +0200, AngeloGioacchino Del Regno wrote:
Il 29/08/22 10:08, Chunfeng Yun ha scritto:
quoted
The PHY type is not set if the index is non zero, prepare type
value according to the index, like as mask value.

Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
I agree with this change and I'd be happy to give you my R-b tag, but
this
commit clearly needs to be backported, so you need a Fixes tag, or a
Cc to stable.
A good point, will add it in next version, thanks a lot
Thanks,
Angelo
quoted
---
v2: no changes
---
  drivers/phy/mediatek/phy-mtk-tphy.c | 7 ++++---
  1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/phy/mediatek/phy-mtk-tphy.c
b/drivers/phy/mediatek/phy-mtk-tphy.c
index e0f227a0d3cc..cc10298bc70d 100644
--- a/drivers/phy/mediatek/phy-mtk-tphy.c
+++ b/drivers/phy/mediatek/phy-mtk-tphy.c
@@ -915,7 +915,7 @@ static int phy_type_syscon_get(struct
mtk_phy_instance *instance,
  static int phy_type_set(struct mtk_phy_instance *instance)
  {
  	int type;
-	u32 mask;
+	u32 offset;
  
  	if (!instance->type_sw)
  		return 0;
@@ -938,8 +938,9 @@ static int phy_type_set(struct mtk_phy_instance
*instance)
  		return 0;
  	}
  
-	mask = RG_PHY_SW_TYPE << (instance->type_sw_index *
BITS_PER_BYTE);
-	regmap_update_bits(instance->type_sw, instance->type_sw_reg,
mask, type);
+	offset = instance->type_sw_index * BITS_PER_BYTE;
+	regmap_update_bits(instance->type_sw, instance->type_sw_reg,
+			   RG_PHY_SW_TYPE << offset, type << offset);
  
  	return 0;
  }
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help