[PATCH v2 1/2] phy: qcom-qmp-combo: Square out 8550 POWER_STATE_CONFIG1

Konrad Dybcio konrad.dybcio at linaro.org
Mon Sep 11 13:03:38 PDT 2023


On 11.09.2023 21:37, Dmitry Baryshkov wrote:
> On Mon, 11 Sept 2023 at 22:32, Konrad Dybcio <konrad.dybcio at linaro.org> wrote:
>>
>> There are two instances of the POWER_STATE_CONFIG1 register: one in
>> the PCS space and another one in PCS_USB.
>>
>> The downstream init sequence pokes the latter one while we've been poking
>> the former one (and misnamed it as the latter one, impostor!). Fix that
>> up to avoid UB.
>>
>> Fixes: 49742e9edab3 ("phy: qcom-qmp-combo: Add support for SM8550")
>> Reviewed-by: Abel Vesa <abel.vesa at linaro.org>
>> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
>> Signed-off-by: Konrad Dybcio <konrad.dybcio at linaro.org>
>> ---
>>  drivers/phy/qualcomm/phy-qcom-qmp-combo.c      | 2 +-
>>  drivers/phy/qualcomm/phy-qcom-qmp-pcs-usb-v6.h | 3 ++-
>>  2 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-combo.c b/drivers/phy/qualcomm/phy-qcom-qmp-combo.c
>> index cbb28afce135..843099d314bf 100644
>> --- a/drivers/phy/qualcomm/phy-qcom-qmp-combo.c
>> +++ b/drivers/phy/qualcomm/phy-qcom-qmp-combo.c
>> @@ -859,10 +859,10 @@ static const struct qmp_phy_init_tbl sm8550_usb3_pcs_tbl[] = {
>>         QMP_PHY_INIT_CFG(QPHY_USB_V6_PCS_PCS_TX_RX_CONFIG, 0x0c),
>>         QMP_PHY_INIT_CFG(QPHY_USB_V6_PCS_EQ_CONFIG1, 0x4b),
>>         QMP_PHY_INIT_CFG(QPHY_USB_V6_PCS_EQ_CONFIG5, 0x10),
>> -       QMP_PHY_INIT_CFG(QPHY_USB_V6_PCS_USB3_POWER_STATE_CONFIG1, 0x68),
>>  };
>>
>>  static const struct qmp_phy_init_tbl sm8550_usb3_pcs_usb_tbl[] = {
>> +       QMP_PHY_INIT_CFG(QPHY_USB_Q6_PCS_USB3_POWER_STATE_CONFIG1, 0x68),
> 
> And this is still _Q6_
Gah, I thought about compiletesting but pride got me..

Konrad



More information about the linux-phy mailing list