[PATCH net-next 4/4] checkpatch: check for comment explaining rgmii(|-rxid|-txid) PHY modes

Matthias Schiffer matthias.schiffer at ew.tq-group.com
Tue Apr 15 06:36:01 PDT 2025


On Tue, 2025-04-15 at 15:20 +0200, Andrew Lunn wrote:
> 
> > +  **UNCOMMENTED_RGMII_MODE**
> > +    Historially, the RGMII PHY modes specified in Device Trees have been
> > +    used inconsistently, often referring to the usage of delays on the PHY
> > +    side rather than describing the board.
> > +
> > +    PHY modes "rgmii", "rgmii-rxid" and "rgmii-txid" modes require the clock
> > +    signal to be delayed on the PCB; this unusual configuration should be
> > +    described in a comment. If they are not (meaning that the delay is realized
> > +    internally in the MAC or PHY), "rgmii-id" is the correct PHY mode.
> 
> It is unclear to me how much ctx_has_comment() will return. Maybe
> include an example here of how it should look. I'm assuming:
> 
> /* RGMII delays added via PCB traces */
> &enet2 {
>     phy-mode = "rgmii";
>     status = "okay";
> 
> fails, but
> 
> &enet2 {
>     /* RGMII delays added via PCB traces */
>     phy-mode = "rgmii";
>     status = "okay";
> 
> passes?

Yes, it works like that. I can't claim to fully understand the checkpatch code
handling comments, but I copied it from other similar checks and tested it on a
few test patches.

One thing to note is that I implemented it as a CHK() and not a WARN() because
that's what is used for other comment checks like DATA_RACE - meaning it will
only trigger with --strict.


> 
> >  
> >  Commit message
> >  --------------
> > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> > index 784912f570e9d..57fcbd4b63ede 100755
> > --- a/scripts/checkpatch.pl
> > +++ b/scripts/checkpatch.pl
> > @@ -3735,6 +3735,17 @@ sub process {
> >  			}
> >  		}
> >  
> > +# Check for RGMII phy-mode with delay on PCB
> > +		if ($realfile =~ /\.dtsi?$/ && $line =~ /^\+\s*(phy-mode|phy-connection-type)\s*=\s*"/ &&
> 
> I don't grok perl. Is this only looking a dtsi files? .dts files
> should also be checked.

It is a regular expression - the ? makes the previous character optional,
matching both .dts and .dtsi files.

Best,
Matthias


> 
> Thanks for working on this, it will be very useful.
> 
> 	Andrew

-- 
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
https://www.tq-group.com/



More information about the linux-arm-kernel mailing list