[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bc143292-24e0-4887-bc56-ecaceebf3d82@quicinc.com>
Date: Tue, 24 Dec 2024 12:36:29 +0800
From: Yijie Yang <quic_yijiyang@...cinc.com>
To: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
CC: Vinod Koul <vkoul@...nel.org>, Andrew Lunn <andrew+netdev@...n.ch>,
"David
S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub
Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, Rob Herring
<robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley
<conor+dt@...nel.org>,
Bhupesh Sharma <bhupesh.sharma@...aro.org>,
Alexandre
Torgue <alexandre.torgue@...s.st.com>,
Giuseppe Cavallaro
<peppe.cavallaro@...com>,
Jose Abreu <joabreu@...opsys.com>,
Maxime Coquelin
<mcoquelin.stm32@...il.com>,
Krzysztof Kozlowski
<krzysztof.kozlowski@...aro.org>,
<netdev@...r.kernel.org>, <linux-arm-msm@...r.kernel.org>,
<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linux-stm32@...md-mailman.stormreply.com>,
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH v2 3/3] net: stmmac: dwmac-qcom-ethqos: add support for
EMAC on qcs615 platforms
On 2024-12-24 12:18, Dmitry Baryshkov wrote:
> On Tue, Dec 24, 2024 at 11:07:03AM +0800, Yijie Yang wrote:
>> qcs615 uses EMAC version 2.3.1, add the relevant defines and add the new
>> compatible.
>>
>> Signed-off-by: Yijie Yang <quic_yijiyang@...cinc.com>
>> ---
>> drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c | 17 +++++++++++++++++
>> 1 file changed, 17 insertions(+)
>>
>> diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c
>> index 901a3c1959fa57efb078da795ad4f92a8b6f71e1..8c76beaee48821eb2853f4e3f8bfd37db8cadf78 100644
>> --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c
>> +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c
>> @@ -249,6 +249,22 @@ static const struct ethqos_emac_driver_data emac_v2_1_0_data = {
>> .has_emac_ge_3 = false,
>> };
>>
>> +static const struct ethqos_emac_por emac_v2_3_1_por[] = {
>> + { .offset = RGMII_IO_MACRO_CONFIG, .value = 0x00C01343 },
>> + { .offset = SDCC_HC_REG_DLL_CONFIG, .value = 0x2004642C },
>
> lowercase the hex, please.
I will take care of it.
>
>> + { .offset = SDCC_HC_REG_DDR_CONFIG, .value = 0x00000000 },
>> + { .offset = SDCC_HC_REG_DLL_CONFIG2, .value = 0x00200000 },
>> + { .offset = SDCC_USR_CTL, .value = 0x00010800 },
>> + { .offset = RGMII_IO_MACRO_CONFIG2, .value = 0x00002060 },
>> +};
>> +
>> +static const struct ethqos_emac_driver_data emac_v2_3_1_data = {
>> + .por = emac_v2_3_1_por,
>> + .num_por = ARRAY_SIZE(emac_v2_3_1_por),
>> + .rgmii_config_loopback_en = true,
>> + .has_emac_ge_3 = false,
>> +};
>
> Modulo emac_v2_3_1_por vs emac_v2_3_0_por, this is the same as
> emac_v2_3_0_data. Which means that bindings for qcs615-ethqos should be
> corrected to use qcom,qcs404-ethqos as as fallback entry, making this
> patch unused. Please correct the bindings instead.
Although they currently share the same data, they are actually two
different versions. Their differences are not apparent now but will
become evident once new features are uploaded. If I revert to
qcom,qcs404-ethqos now, it will be challenging to distinguish between
them in the future.
>
>> +
>> static const struct ethqos_emac_por emac_v3_0_0_por[] = {
>> { .offset = RGMII_IO_MACRO_CONFIG, .value = 0x40c01343 },
>> { .offset = SDCC_HC_REG_DLL_CONFIG, .value = 0x2004642c },
>> @@ -898,6 +914,7 @@ static int qcom_ethqos_probe(struct platform_device *pdev)
>>
>> static const struct of_device_id qcom_ethqos_match[] = {
>> { .compatible = "qcom,qcs404-ethqos", .data = &emac_v2_3_0_data},
>> + { .compatible = "qcom,qcs615-ethqos", .data = &emac_v2_3_1_data},
>> { .compatible = "qcom,sa8775p-ethqos", .data = &emac_v4_0_0_data},
>> { .compatible = "qcom,sc8280xp-ethqos", .data = &emac_v3_0_0_data},
>> { .compatible = "qcom,sm8150-ethqos", .data = &emac_v2_1_0_data},
>>
>> --
>> 2.34.1
>>
>
--
Best Regards,
Yijie
Powered by blists - more mailing lists