Subject: Re: [RFC PATCH 3/9] net: dsa: hellcreek: Add PTP clock support

From: Kurt Kanzenbach <[email-masked]>
Date: Fri, 19 Jun 2020 10:13:22 +0200

Hi Jakub,

On Thu Jun 18 2020, Jakub Kicinski wrote:
> On Thu, 18 Jun 2020 08:40:23 +0200 Kurt Kanzenbach wrote:
>> From: Kamil Alkhouri <[email-masked]>
>> 
>> The switch has internal PTP hardware clocks. Add support for it. There are three
>> clocks:
>> 
>>  * Synchronized
>>  * Syntonized
>>  * Free running
>> 
>> Currently the synchronized clock is exported to user space which is a good
>> default for the beginning. The free running clock might be exported later
>> e.g. for implementing 802.1AS-2011/2020 Time Aware Bridges (TAB). The switch
>> also supports cross time stamping for that purpose.
>> 
>> The implementation adds support setting/getting the time as well as offset and
>> frequency adjustments. However, the clock only holds a partial timeofday
>> timestamp. This is why we track the seconds completely in software (see overflow
>> work and last_ts).
>> 
>> Furthermore, add the PTP multicast addresses into the FDB to forward that
>> packages only to the CPU port where they are processed by a PTP program.
>> 
>> Signed-off-by: Kamil Alkhouri <[email-masked]>
>> Signed-off-by: Kurt Kanzenbach <[email-masked]>
>
> Please make sure each patch in the series builds cleanly with the W=1
> C=1 flags. Here we have:
>
> ../drivers/net/dsa/hirschmann/hellcreek_ptp.c: In function â€˜__hellcreek_ptp_clock_readâ€™:
> ../drivers/net/dsa/hirschmann/hellcreek_ptp.c:30:28: warning: variable â€˜sechâ€™ set but not used [-Wunused-but-set-variable]
>    30 |  u16 nsl, nsh, secl, secm, sech;
>       |                            ^~~~
> ../drivers/net/dsa/hirschmann/hellcreek_ptp.c:30:22: warning: variable â€˜secmâ€™ set but not used [-Wunused-but-set-variable]
>    30 |  u16 nsl, nsh, secl, secm, sech;
>       |                      ^~~~
> ../drivers/net/dsa/hirschmann/hellcreek_ptp.c:30:16: warning: variable â€˜seclâ€™ set but not used [-Wunused-but-set-variable]
>    30 |  u16 nsl, nsh, secl, secm, sech;
>       |                ^~~~
>
> Next patch adds a few more.

Sorry, I did test with C=1 only. I'll fix it.

Thanks,
Kurt