From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-by2nam03on0133.outbound.protection.outlook.com ([104.47.42.133]:46250 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754647AbeDIA0u (ORCPT ); Sun, 8 Apr 2018 20:26:50 -0400 From: Sasha Levin To: "stable@vger.kernel.org" , "linux-kernel@vger.kernel.org" CC: Mario Molitor , "David S . Miller" , Sasha Levin Subject: [PATCH AUTOSEL for 4.9 023/293] stmmac: fix ptp header for GMAC3 hw timestamp Date: Mon, 9 Apr 2018 00:23:07 +0000 Message-ID: <20180409002239.163177-23-alexander.levin@microsoft.com> References: <20180409002239.163177-1-alexander.levin@microsoft.com> In-Reply-To: <20180409002239.163177-1-alexander.levin@microsoft.com> Content-Language: en-US Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org List-ID: From: Mario Molitor [ Upstream commit fd6720aefde06eacf17404eed2cad65c6ec103e1 ] According the CYCLON V documention only the bit 16 of snaptypesel should set. (more information see Table 17-20 (cv_5v4.pdf) : Timestamp Snapshot Dependency on Register Bits) Fixes: d2042052a0aa ("stmmac: update the PTP header file") Signed-off-by: Mario Molitor Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 15 ++++++++++++--- drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.h | 3 ++- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/ne= t/ethernet/stmicro/stmmac/stmmac_main.c index 98bbb91336e4..c212d1dd8bfd 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -478,7 +478,10 @@ static int stmmac_hwtstamp_ioctl(struct net_device *de= v, struct ifreq *ifr) /* PTP v1, UDP, any kind of event packet */ config.rx_filter =3D HWTSTAMP_FILTER_PTP_V1_L4_EVENT; /* take time stamp for all event messages */ - snap_type_sel =3D PTP_TCR_SNAPTYPSEL_1; + if (priv->plat->has_gmac4) + snap_type_sel =3D PTP_GMAC4_TCR_SNAPTYPSEL_1; + else + snap_type_sel =3D PTP_TCR_SNAPTYPSEL_1; =20 ptp_over_ipv4_udp =3D PTP_TCR_TSIPV4ENA; ptp_over_ipv6_udp =3D PTP_TCR_TSIPV6ENA; @@ -510,7 +513,10 @@ static int stmmac_hwtstamp_ioctl(struct net_device *de= v, struct ifreq *ifr) config.rx_filter =3D HWTSTAMP_FILTER_PTP_V2_L4_EVENT; ptp_v2 =3D PTP_TCR_TSVER2ENA; /* take time stamp for all event messages */ - snap_type_sel =3D PTP_TCR_SNAPTYPSEL_1; + if (priv->plat->has_gmac4) + snap_type_sel =3D PTP_GMAC4_TCR_SNAPTYPSEL_1; + else + snap_type_sel =3D PTP_TCR_SNAPTYPSEL_1; =20 ptp_over_ipv4_udp =3D PTP_TCR_TSIPV4ENA; ptp_over_ipv6_udp =3D PTP_TCR_TSIPV6ENA; @@ -544,7 +550,10 @@ static int stmmac_hwtstamp_ioctl(struct net_device *de= v, struct ifreq *ifr) config.rx_filter =3D HWTSTAMP_FILTER_PTP_V2_EVENT; ptp_v2 =3D PTP_TCR_TSVER2ENA; /* take time stamp for all event messages */ - snap_type_sel =3D PTP_TCR_SNAPTYPSEL_1; + if (priv->plat->has_gmac4) + snap_type_sel =3D PTP_GMAC4_TCR_SNAPTYPSEL_1; + else + snap_type_sel =3D PTP_TCR_SNAPTYPSEL_1; =20 ptp_over_ipv4_udp =3D PTP_TCR_TSIPV4ENA; ptp_over_ipv6_udp =3D PTP_TCR_TSIPV6ENA; diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.h b/drivers/net= /ethernet/stmicro/stmmac/stmmac_ptp.h index c06938c47af5..174777cd888e 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.h +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.h @@ -63,7 +63,8 @@ /* Enable Snapshot for Messages Relevant to Master */ #define PTP_TCR_TSMSTRENA BIT(15) /* Select PTP packets for Taking Snapshots */ -#define PTP_TCR_SNAPTYPSEL_1 GENMASK(17, 16) +#define PTP_TCR_SNAPTYPSEL_1 BIT(16) +#define PTP_GMAC4_TCR_SNAPTYPSEL_1 GENMASK(17, 16) /* Enable MAC address for PTP Frame Filtering */ #define PTP_TCR_TSENMACADDR BIT(18) =20 --=20 2.15.1