From: Marc Kleine-Budde Date: Tue, 6 Sep 2022 06:23:43 +0000 (+0200) Subject: Merge patch series "can: gs_usb: hardware timestamp support" X-Git-Tag: v6.1-rc5~319^2~209^2~6 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=26f6a2aefd3167a06ac0e9de1fb09b8900878eea;p=platform%2Fkernel%2Flinux-starfive.git Merge patch series "can: gs_usb: hardware timestamp support" Marc Kleine-Budde says: after noticing that the gs_usb firmware sends timestamps on the TX, too, I updated the driver and squashed the 2nd patch. Also added proper endianness handling to gs_usb_get_timestamp(). I allowed to add myself as Co-developed-by. Changes since v2: https://lore.kernel.org/all/20220827092545.2971240-1-mkl@pengutronix.de - new patch 1/2: use common spelling of GS_USB in macros - squashed both old patches into now 2/2 - use GS_USB instead of GSUSB in macros - gs_usb_get_timestamp(): renamed from gs_usb_get_sof_timestamp() - gs_usb_get_timestamp(): take care of endianness - gs_usb_skb_set_timestamp(): renamed from gs_usb_set_timestamp() - gs_usb_set_timestamp(): add new function to add timestamp to skb from struct gs_host_frame - add support for TX timestamps - gs_can_eth_ioctl(): return -EOPNOTSUPP if device doesn't support GS_CAN_FEATURE_HW_TIMESTAMP - gs_usb_get_ts_info(): renamed from gs_usb_get_ts_info_hwts() - gs_usb_get_ts_info(): call can_ethtool_op_get_ts_info_hwts() if device supports GS_CAN_FEATURE_HW_TIMESTAMP, call ethtool_op_get_ts_info() otherwise Changes since v1: https://lore.kernel.org/all/20220826104629.2837024-1-mkl@pengutronix.de - add new includes sorted - adjust multi line comment style - don't use 1e6, but 1 * HZ_PER_MHZ, to fix sparse warning - use __le32 instead of u32 in struct classic_can_ts and canfd_ts - place _ts in front of _quirk in union in struct gs_host_frame - gs_usb_get_sof_timestamp(): pass "const struct gs_can *dev" as 1st argument, not struct net_device *netdev, simplify return handling - gs_usb_timestamp_init(), gs_usb_timestamp_stop(), gs_usb_get_ts_info_hwts(): make static - gs_usb_timestamp_init(): increase cc->shift to maximize precision - fix long lines, remove braces {} for single statement blocks - gs_can_open(): move check for GS_CAN_FEATURE_HW_TIMESTAMP after all ctrlmode checks - gs_can_open(): move start polling sof timestamp after kfree(dm) - gs_can_close(): move stop polling sof timestamp to be symmetric with respect to gs_can_open() - gs_usb_probe(): make calculation of dev->hf_size_rx more robust Link: https://lore.kernel.org/all/20220827221548.3291393-1-mkl@pengutronix.de Signed-off-by: Marc Kleine-Budde --- 26f6a2aefd3167a06ac0e9de1fb09b8900878eea