Re: [PATCH v3] net: phy: meson-gxl: Add generic dummy stubs for MMD register access

From: Heiner Kallweit
Date: Tue Jan 31 2023 - 07:08:53 EST


On 31.01.2023 11:59, Jerome Brunet wrote:
>
> On Tue 31 Jan 2023 at 11:38, Heiner Kallweit <hkallweit1@xxxxxxxxx> wrote:
>
>> On 31.01.2023 11:05, Jerome Brunet wrote:
>>>
>>> On Mon 30 Jan 2023 at 15:14, Chris Healy <cphealy@xxxxxxxxx> wrote:
>>>
>>>> From: Chris Healy <healych@xxxxxxxxxx>
>>>>
>>>> The Meson G12A Internal PHY does not support standard IEEE MMD extended
>>>> register access, therefore add generic dummy stubs to fail the read and
>>>> write MMD calls. This is necessary to prevent the core PHY code from
>>>> erroneously believing that EEE is supported by this PHY even though this
>>>> PHY does not support EEE, as MMD register access returns all FFFFs.
>>>
>>> This is definitely something that should be done, Thx !
>>>
>>>>
>>>> Fixes: 5c3407abb338 ("net: phy: meson-gxl: add g12a support")
>>>
>>> This commit does not seems appropriate, especially since only the GXL ops
>>> are changed, not the g12a variant.
>>>
>> The diff is a little bit misleading. The patch affects the G12A PHY.
>>
>>> This brings a 2nd point, any reason for not changing the g12 variant ?
>>> I'm fairly confident it does support EEE either.
>>>
>> Supposedly it's a typo and you mean "doesn't". Neither Chris nor me
>
> Indeed ;)
>
>> have GXL HW and we didn't want to submit a patch just based on speculation.
>>
>
> Ah - Ok.
> I've tested something similar recently while working on the PHY.
> I confirm that both GXL and G12a should stub those calls.
>
> ... maybe in separate patches to help stable backports.
>
> Do you want to handle this or should I ?
>
I can take it, will add your Suggested-by.

>>>> Reviewed-by: Heiner Kallweit <hkallweit1@xxxxxxxxx>
>>>> Signed-off-by: Chris Healy <healych@xxxxxxxxxx>
>>>>
>
> Reviewed-by: Jerome Brunet <jbrunet@xxxxxxxxxxxx>
>
>>>> ---
>>>>
>>>> Changes in v3:
>>>> * Add reviewed-by
>>>> Change in v2:
>>>> * Add fixes tag
>>>>
>>>> drivers/net/phy/meson-gxl.c | 2 ++
>>>> 1 file changed, 2 insertions(+)
>>>>
>>>> diff --git a/drivers/net/phy/meson-gxl.c b/drivers/net/phy/meson-gxl.c
>>>> index c49062ad72c6..5e41658b1e2f 100644
>>>> --- a/drivers/net/phy/meson-gxl.c
>>>> +++ b/drivers/net/phy/meson-gxl.c
>>>> @@ -271,6 +271,8 @@ static struct phy_driver meson_gxl_phy[] = {
>>>> .handle_interrupt = meson_gxl_handle_interrupt,
>>>> .suspend = genphy_suspend,
>>>> .resume = genphy_resume,
>>>> + .read_mmd = genphy_read_mmd_unsupported,
>>>> + .write_mmd = genphy_write_mmd_unsupported,
>>>> },
>>>> };
>>>
>