From: Andrew Lunn <andrew@lunn.ch>
To: Igor Russkikh <Igor.Russkikh@aquantia.com>
Cc: "netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"davem@davemloft.net" <davem@davemloft.net>,
"richardcochran@gmail.com" <richardcochran@gmail.com>,
Egor Pomozov <Egor.Pomozov@aquantia.com>,
Dmitry Bezrukov <Dmitry.Bezrukov@aquantia.com>,
Simon Edelhaus <sedelhaus@marvell.com>,
Sergey Samoilenko <Sergey.Samoilenko@aquantia.com>
Subject: Re: [PATCH v2 net-next 06/12] net: aquantia: implement data PTP datapath
Date: Mon, 14 Oct 2019 18:36:12 +0200 [thread overview]
Message-ID: <20191014163612.GP21165@lunn.ch> (raw)
In-Reply-To: <093d91dcc66abeb4d3ef83eef829badd7389d792.1570531332.git.igor.russkikh@aquantia.com>
> --- a/drivers/net/ethernet/aquantia/atlantic/aq_ptp.c
> +++ b/drivers/net/ethernet/aquantia/atlantic/aq_ptp.c
> @@ -8,12 +8,24 @@
> */
>
> +static inline int aq_ptp_tm_offset_egress_get(struct aq_ptp_s *aq_ptp)
> +{
> + return atomic_read(&aq_ptp->offset_egress);
> +}
> +
> +static inline int aq_ptp_tm_offset_ingress_get(struct aq_ptp_s *aq_ptp)
> +{
> + return atomic_read(&aq_ptp->offset_ingress);
> +}
inline should not be used in C files. Let the compiler decide.
> +
> +void aq_ptp_tm_offset_set(struct aq_nic_s *aq_nic, unsigned int mbps)
> +{
> + struct aq_ptp_s *aq_ptp = aq_nic->aq_ptp;
> + int i, egress, ingress;
> +
> + if (!aq_ptp)
> + return;
> +
> + egress = 0;
> + ingress = 0;
> +
> + for (i = 0; i < ARRAY_SIZE(ptp_offset); i++) {
> + if (mbps == ptp_offset[i].mbps) {
> + egress = ptp_offset[i].egress;
> + ingress = ptp_offset[i].ingress;
> + break;
> + }
> + }
> +
> + atomic_set(&aq_ptp->offset_egress, egress);
> + atomic_set(&aq_ptp->offset_ingress, ingress);
It seems odd you have wrappers for atomic_read, but not atomic_set. Do
the wrappers actually add anything?
> +}
> +
> +static int __aq_ptp_skb_put(struct ptp_skb_ring *ring, struct sk_buff *skb)
> +{
> + unsigned int next_head = (ring->head + 1) % ring->size;
> +
> + if (next_head == ring->tail)
> + return -1;
ENOMEM?
> +
> + ring->buff[ring->head] = skb_get(skb);
> + ring->head = next_head;
> +
> + return 0;
> +}
> +
Andrew
next prev parent reply other threads:[~2019-10-14 16:36 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-08 10:56 [PATCH v2 net-next 00/12] net: aquantia: PTP support for AQC devices Igor Russkikh
2019-10-08 10:56 ` [PATCH v2 net-next 01/12] net: aquantia: PTP skeleton declarations and callbacks Igor Russkikh
2019-10-12 18:49 ` Richard Cochran
2019-10-12 18:56 ` Richard Cochran
2019-10-08 10:56 ` [PATCH v2 net-next 02/12] net: aquantia: unify styling of bit enums Igor Russkikh
2019-10-14 15:50 ` Andrew Lunn
2019-10-08 10:56 ` [PATCH v2 net-next 03/12] net: aquantia: add basic ptp_clock callbacks Igor Russkikh
2019-10-12 19:02 ` Richard Cochran
2019-10-14 11:43 ` Igor Russkikh
2019-10-08 10:56 ` [PATCH v2 net-next 04/12] net: aquantia: add PTP rings infrastructure Igor Russkikh
2019-10-14 16:14 ` Andrew Lunn
2019-10-15 9:02 ` Igor Russkikh
2019-10-08 10:56 ` [PATCH v2 net-next 05/12] net: aquantia: styling fixes on ptp related functions Igor Russkikh
2019-10-14 16:16 ` Andrew Lunn
2019-10-08 10:56 ` [PATCH v2 net-next 06/12] net: aquantia: implement data PTP datapath Igor Russkikh
2019-10-14 16:36 ` Andrew Lunn [this message]
2019-10-15 9:09 ` Igor Russkikh
2019-10-08 10:56 ` [PATCH v2 net-next 07/12] net: aquantia: rx filters for ptp Igor Russkikh
2019-10-08 10:56 ` [PATCH v2 net-next 08/12] net: aquantia: add support for ptp ioctls Igor Russkikh
2019-10-14 16:23 ` Andrew Lunn
2019-10-15 9:06 ` Igor Russkikh
2019-10-08 10:56 ` [PATCH v2 net-next 09/12] net: aquantia: implement get_ts_info ethtool Igor Russkikh
2019-10-12 19:07 ` Richard Cochran
2019-10-14 11:45 ` Igor Russkikh
2019-10-08 10:56 ` [PATCH v2 net-next 10/12] net: aquantia: add support for Phy access Igor Russkikh
2019-10-15 12:19 ` Andrew Lunn
2019-10-16 13:12 ` Igor Russkikh
2019-10-16 19:38 ` Andrew Lunn
2019-10-08 10:56 ` [PATCH v2 net-next 11/12] net: aquantia: add support for PIN funcs Igor Russkikh
2019-10-12 19:25 ` Richard Cochran
2019-10-15 12:35 ` Andrew Lunn
2019-10-08 10:57 ` [PATCH v2 net-next 12/12] net: aquantia: adding atlantic ptp maintainer Igor Russkikh
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=20191014163612.GP21165@lunn.ch \
--to=andrew@lunn.ch \
--cc=Dmitry.Bezrukov@aquantia.com \
--cc=Egor.Pomozov@aquantia.com \
--cc=Igor.Russkikh@aquantia.com \
--cc=Sergey.Samoilenko@aquantia.com \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=richardcochran@gmail.com \
--cc=sedelhaus@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.