lkml.org 
[lkml]   [2022]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 6.0 530/862] phy: phy-mtk-tphy: fix the phy type setting issue
    Date
    From: Chunfeng Yun <chunfeng.yun@mediatek.com>

    [ Upstream commit 931c05a8cb1be029ef2fbc1e4af313d4cb297c47 ]

    The PHY type is not set if the index is non zero, prepare type
    value according to the index, like as mask value.

    Fixes: 39099a443358 ("phy: phy-mtk-tphy: support type switch by pericfg")
    Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
    Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
    Link: https://lore.kernel.org/r/20220914060746.10004-7-chunfeng.yun@mediatek.com
    Signed-off-by: Vinod Koul <vkoul@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    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 8ee7682b8e93..bdffc21858f6 100644
    --- a/drivers/phy/mediatek/phy-mtk-tphy.c
    +++ b/drivers/phy/mediatek/phy-mtk-tphy.c
    @@ -906,7 +906,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;
    @@ -929,8 +929,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;
    }
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-10-19 11:33    [W:4.015 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site