lkml.org 
[lkml]   [2019]   [Sep]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v2 1/2] ethtool: implement Energy Detect Powerdown support via phy-tunable
Date
On Wed, 2019-09-04 at 21:53 +0200, Andrew Lunn wrote:
> [External]
>
> On Wed, Sep 04, 2019 at 07:23:21PM +0300, Alexandru Ardelean wrote:
>
> Hi Alexandru
>
> Somewhere we need a comment stating what EDPD means. Here would be a
> good place.

ack

>
> > +#define ETHTOOL_PHY_EDPD_DFLT_TX_INTERVAL 0x7fff
> > +#define ETHTOOL_PHY_EDPD_NO_TX 0x8000
> > +#define ETHTOOL_PHY_EDPD_DISABLE 0
>
> I think you are passing a u16. So why not 0xfffe and 0xffff? We also
> need to make it clear what the units are for interval. This file

I initially thought about keeping this u8 and going with 0xff & 0xfe.
But 254 or 253 could be too small to specify the value of an interval.

Also (maybe due ti all the coding-patterns that I saw over the course of some time), make me feel that I should add a
flag somewhere.

Bottom line is: 0xfffe and 0xffff also work from my side, if it is acceptable (by the community).

Another approach I considered, was to maybe have this EDPD just do enable & disable (which is sufficient for the `adin`
PHY & `micrel` as well).
That would mean that if we would ever want to configure the TX interval (in the future), we would need an extra PHY-
tunable parameter just for that; because changing the enable/disable behavior would be dangerous.
And also, deferring the TX-interval configuration, does not sound like good design/pattern, since it can allow for tons
of PHY-tunable parameters for every little knob.

> specifies the contract between the kernel and user space. So we need
> to clearly define what we mean here. Lots of comments are better than
> no comments.

Will come back with more comments.

>
> Andrew
\
 
 \ /
  Last update: 2019-09-05 08:26    [W:0.048 / U:5.896 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site