[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220914233944.598298-1-matej.vasilevski@seznam.cz>
Date: Thu, 15 Sep 2022 01:39:41 +0200
From: Matej Vasilevski <matej.vasilevski@...nam.cz>
To: Pavel Pisa <pisa@....felk.cvut.cz>,
Ondrej Ille <ondrej.ille@...il.com>,
Wolfgang Grandegger <wg@...ndegger.com>,
Marc Kleine-Budde <mkl@...gutronix.de>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>
Cc: linux-can@...r.kernel.org, netdev@...r.kernel.org,
devicetree@...r.kernel.org,
Matej Vasilevski <matej.vasilevski@...nam.cz>
Subject: [PATCH v4 0/3] can: ctucanfd: hardware rx timestamps reporting
Hello,
this is the v4 patch for CTU CAN FD hardware timestamps reporting.
Excuse my mistake, I'm sorry for the double post, but minutes after posting
patch v3 I've realized I forgot to update the pm_runtime method in error counter routine.
Even though pm_runtime_resume_and_get and pm_runtime_get_sync should be equivalent,
I want to have the code consistent.
Changes since v3: https://lore.kernel.org/all/20220914231249.593643-1-matej.vasilevski@seznam.cz/t/#u
- use pm_runtime_resume_and_get in error counter routine ctucan_get_berr_counter
Changes since v2: https://lore.kernel.org/all/20220801184656.702930-1-matej.vasilevski@seznam.cz/t/#u
- proper timestamping clock handling
- clocks manually enabled using clk_prepare_enable, then managed
by runtime PM (if runtime PM is enabled)
- driver should work even without CONFIG_PM
- access to the timecounter is now protected by a spinlock
- harmonized with Vincent's patch - TX timestamping capability is now
correctly reported
- work_delay_jiffies stored as unsigned long instead of u32
- max work delay limited to 3600 seconds (instead of 86k seconds)
- adressed the rest of the comments from the patch V2 review
Changes since v1: https://lore.kernel.org/all/20220512232706.24575-1-matej.vasilevski@seznam.cz/
- Removed kconfig option to enable/disable timestamps.
- Removed dt parameters ts-frequency and ts-used-bits. Now the user
only needs to add the timestamping clock phandle to clocks, and even
that is optional.
- Added SIOCSHWTSTAMP ioctl to enable/disable timestamps.
- Adressed comments from the RFC review.
Matej Vasilevski (3):
dt-bindings: can: ctucanfd: add another clock for HW timestamping
can: ctucanfd: add HW timestamps to RX and error CAN frames
doc: ctucanfd: RX frames timestamping for platform devices
.../bindings/net/can/ctu,ctucanfd.yaml | 19 +-
.../can/ctu/ctucanfd-driver.rst | 13 +-
drivers/net/can/ctucanfd/Makefile | 2 +-
drivers/net/can/ctucanfd/ctucanfd.h | 20 ++
drivers/net/can/ctucanfd/ctucanfd_base.c | 239 ++++++++++++++++--
drivers/net/can/ctucanfd/ctucanfd_pci.c | 5 +-
drivers/net/can/ctucanfd/ctucanfd_platform.c | 5 +-
drivers/net/can/ctucanfd/ctucanfd_timestamp.c | 70 +++++
8 files changed, 344 insertions(+), 29 deletions(-)
create mode 100644 drivers/net/can/ctucanfd/ctucanfd_timestamp.c
base-commit: c9ae520ac3faf2f272b5705b085b3778c7997ec8
--
2.25.1
Powered by blists - more mailing lists