[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221208130444.xshazhpg4e2utvjs@soft-dev3-1>
Date: Thu, 8 Dec 2022 14:04:44 +0100
From: Horatiu Vultur <horatiu.vultur@...rochip.com>
To: Michael Walle <michael@...le.cc>
CC: <Steen.Hegelund@...rochip.com>, <UNGLinuxDriver@...rochip.com>,
<daniel.machon@...rochip.com>, <davem@...emloft.net>,
<edumazet@...gle.com>, <kuba@...nel.org>,
<lars.povlsen@...rochip.com>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, <netdev@...r.kernel.org>,
<olteanv@...il.com>, <pabeni@...hat.com>,
<richardcochran@...il.com>
Subject: Re: [PATCH net-next v3 4/4] net: lan966x: Add ptp trap rules
The 12/08/2022 10:27, Michael Walle wrote:
>
> Am 2022-12-08 10:25, schrieb Michael Walle:
> > Hi Horatiu,
Hi Michael,
> >
> > > Currently lan966x, doesn't allow to run PTP over interfaces that are
> > > part of the bridge. The reason is when the lan966x was receiving a
> > > PTP frame (regardless if L2/IPv4/IPv6) the HW it would flood this
> > > frame.
> > > Now that it is possible to add VCAP rules to the HW, such to trap
> > > these
> > > frames to the CPU, it is possible to run PTP also over interfaces that
> > > are part of the bridge.
> >
> > This gives me:
> >
> > # /etc/init.d/S65ptp4l start
> > Starting linuxptp daemon: OK
> > [ 44.136870] vcap_val_rule:1678: keyset was not updated: -22
> > [ 44.140196] vcap_val_rule:1678: keyset was not updated: -22
> > #
> >
> > # ptp4l -v
> > 3.1.1
> > # uname -a
> > Linux buildroot 6.1.0-rc8-next-20221208+ #924 SMP Thu Dec 8 10:08:58
> > CET 2022 armv7l GNU/Linux
> >
> > I don't know whats going on, but I'm happy to help with debugging with
> > some
> > guidance.
>
> Oh, and linuxptp is running on eth0, no bridges are set up. linuxptp
> is started with "/usr/sbin/ptp4l -f /etc/linuxptp.cfg"
>
> # cat /etc/linuxptp.cfg
> # LinuxPTP configuration file for synchronizing the system clock to
> # a remote PTP master in slave-only mode.
> #
> # By default synchronize time in slave-only mode using UDP and hardware
> time
> # stamps on eth0. If the difference to master is >1.0 second correct by
> # stepping the clock instead of adjusting the frequency.
> #
> # If you change the configuration don't forget to update the phc2sys
> # parameters accordingly in linuxptp-system-clock.service (systemd)
> # or the linuxptp SysV init script.
>
> [global]
> slaveOnly 1
> delay_mechanism Auto
> network_transport UDPv4
> time_stamping hardware
> step_threshold 1.0
>
> [eth0]
Thanks for trying this!
The issue is because you have not enabled the TCAM lookups per
port. They can be enabled using this commands:
tc qdisc add dev eth0 clsact
tc filter add dev eth0 ingress prio 5 handle 5 matchall skip_sw action goto chain 8000000
This will enable the lookup and then you should be able to start again
the ptp4l. Sorry for not mention this, at least I should have written it
somewhere that this is required.
I was not sure if lan966x should or not enable tcam lookups
automatically when a ptp trap action is added. I am open to suggestion
here.
>
> -michael
--
/Horatiu
Powered by blists - more mailing lists