From: Leon Romanovsky <leon@kernel.org>
To: Sai Krishna <saikrishnag@marvell.com>
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org, sgoutham@marvell.com,
gakula@marvell.com, sbhatta@marvell.com, hkelam@marvell.com,
richardcochran@gmail.com, kalesh-anakkur.purayil@broadcom.com,
Naveen Mamindlapalli <naveenm@marvell.com>
Subject: Re: [net-next PATCH v3] octeontx2-pf: Use PTP HW timestamp counter atomic update feature
Date: Fri, 18 Aug 2023 21:49:01 +0300 [thread overview]
Message-ID: <20230818184901.GC22185@unreal> (raw)
In-Reply-To: <20230817174351.3480292-1-saikrishnag@marvell.com>
On Thu, Aug 17, 2023 at 11:13:51PM +0530, Sai Krishna wrote:
> Some of the newer silicon versions in CN10K series supports a feature
> where in the current PTP timestamp in HW can be updated atomically
> without losing any cpu cycles unlike read/modify/write register.
> This patch uses this feature so that PTP accuracy can be improved
> while adjusting the master offset in HW. There is no need for SW
> timecounter when using this feature. So removed references to SW
> timecounter wherever appropriate.
>
> Signed-off-by: Sai Krishna <saikrishnag@marvell.com>
> Signed-off-by: Naveen Mamindlapalli <naveenm@marvell.com>
> Signed-off-by: Sunil Kovvuri Goutham <sgoutham@marvell.com>
> Reviewed-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
> ---
> v3:
> - Addressed review comments given by Jakub Kicinski
> 1. Fixed re-ordering of headers in alphabetical order
> 2. Refactored SoC revision identification logic
> 3. CN10K errata revisions can be different from atomic update
> supported revision devices.
> 4. Removed ptp device check.
> v2:
> - Addressed review comments given by Simon Horman, Kalesh Anakkur Purayil
> 1. Removed inline keyword for function in .c file
> 2. Modified/optimized conditions related boolean
>
> .../net/ethernet/marvell/octeontx2/af/mbox.h | 12 ++
> .../net/ethernet/marvell/octeontx2/af/ptp.c | 155 ++++++++++++++--
> .../net/ethernet/marvell/octeontx2/af/ptp.h | 3 +-
> .../net/ethernet/marvell/octeontx2/af/rvu.c | 2 +-
> .../net/ethernet/marvell/octeontx2/af/rvu.h | 12 ++
> .../marvell/octeontx2/nic/otx2_common.h | 1 +
> .../ethernet/marvell/octeontx2/nic/otx2_ptp.c | 174 ++++++++++++++----
> 7 files changed, 304 insertions(+), 55 deletions(-)
<...>
> +static bool is_tstmp_atomic_update_supported(struct otx2_ptp *ptp)
> +{
> + struct ptp_get_cap_rsp *rsp;
> + struct msg_req *req;
> + int err;
> +
> + if (!ptp->nic)
> + return false;
> +
> + mutex_lock(&ptp->nic->mbox.lock);
> + req = otx2_mbox_alloc_msg_ptp_get_cap(&ptp->nic->mbox);
> + if (!req)
> + return false;
> +
> + err = otx2_sync_mbox_msg(&ptp->nic->mbox);
> + if (err)
> + return false;
Shouldn't you call to mutex_unlock() in two returns above?
Thanks
> +
> + rsp = (struct ptp_get_cap_rsp *)otx2_mbox_get_rsp(&ptp->nic->mbox.mbox, 0,
> + &req->hdr);
> + mutex_unlock(&ptp->nic->mbox.lock);
> +
> + if (IS_ERR(rsp))
> + return false;
> +
> + if (rsp->cap & PTP_CAP_HW_ATOMIC_UPDATE)
> + return true;
> +
> + return false;
> +}
next prev parent reply other threads:[~2023-08-18 18:50 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-17 17:43 [net-next PATCH v3] octeontx2-pf: Use PTP HW timestamp counter atomic update feature Sai Krishna
2023-08-18 18:49 ` Leon Romanovsky [this message]
2023-08-21 6:05 ` Sai Krishna Gajula
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230818184901.GC22185@unreal \
--to=leon@kernel.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=gakula@marvell.com \
--cc=hkelam@marvell.com \
--cc=kalesh-anakkur.purayil@broadcom.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=naveenm@marvell.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=richardcochran@gmail.com \
--cc=saikrishnag@marvell.com \
--cc=sbhatta@marvell.com \
--cc=sgoutham@marvell.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.