All of lore.kernel.org
 help / color / mirror / Atom feed
From: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
To: Tony Nguyen <anthony.l.nguyen@intel.com>
Cc: <davem@davemloft.net>, <kuba@kernel.org>, <pabeni@redhat.com>,
	<edumazet@google.com>, <netdev@vger.kernel.org>,
	Milena Olech <milena.olech@intel.com>, <richardcochran@gmail.com>,
	Przemek Kitszel <przemyslaw.kitszel@intel.com>,
	Jacob Keller <jacob.e.keller@intel.com>,
	Karol Kolacinski <karol.kolacinski@intel.com>,
	Simon Horman <horms@kernel.org>,
	Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com>
Subject: Re: [PATCH net 1/4] ice: Fix improper extts handling
Date: Wed, 26 Jun 2024 15:36:00 +0200	[thread overview]
Message-ID: <ZnwZQMe1outhbqPG@boxer> (raw)
In-Reply-To: <20240625170248.199162-2-anthony.l.nguyen@intel.com>

On Tue, Jun 25, 2024 at 10:02:44AM -0700, Tony Nguyen wrote:
> From: Milena Olech <milena.olech@intel.com>
> 
> Extts events are disabled and enabled by the application ts2phc.
> However, in case where the driver is removed when the application is
> running, channel remains enabled. As a result, in the next run of the
> app, two channels are enabled and the information "extts on unexpected
> channel" is printed to the user.
> 
> To avoid that, extts events shall be disabled when PTP is released.
> 
> Fixes: 172db5f91d5f ("ice: add support for auxiliary input/output pins")
> Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
> Co-developed-by: Jacob Keller <jacob.e.keller@intel.com>
> Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
> Signed-off-by: Milena Olech <milena.olech@intel.com>
> Signed-off-by: Karol Kolacinski <karol.kolacinski@intel.com>
> Reviewed-by: Simon Horman <horms@kernel.org>
> Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel)
> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_ptp.c | 106 ++++++++++++++++++-----
>  drivers/net/ethernet/intel/ice/ice_ptp.h |   8 ++
>  2 files changed, 92 insertions(+), 22 deletions(-)
> 
> diff --git a/drivers/net/ethernet/intel/ice/ice_ptp.c b/drivers/net/ethernet/intel/ice/ice_ptp.c
> index 0f17fc1181d2..d8ff9f26010c 100644
> --- a/drivers/net/ethernet/intel/ice/ice_ptp.c
> +++ b/drivers/net/ethernet/intel/ice/ice_ptp.c
> @@ -1584,27 +1584,24 @@ void ice_ptp_extts_event(struct ice_pf *pf)

[...]

> +/**
> + * ice_ptp_disable_all_extts - Disable all EXTTS channels
> + * @pf: Board private structure
> + */
> +static void ice_ptp_disable_all_extts(struct ice_pf *pf)
> +{
> +	struct ice_extts_channel extts_cfg = {};
> +	int i;
> +
> +	for (i = 0; i < pf->ptp.info.n_ext_ts; i++) {
> +		if (pf->ptp.extts_channels[i].ena) {
> +			extts_cfg.gpio_pin = pf->ptp.extts_channels[i].gpio_pin;
> +			extts_cfg.ena = false;
> +			ice_ptp_cfg_extts(pf, i, &extts_cfg, false);
> +		}
> +	}
> +
> +	synchronize_irq(pf->oicr_irq.virq);
> +}
> +
> +/**
> + * ice_ptp_enable_all_extts - Enable all EXTTS channels
> + * @pf: Board private structure
> + *
> + * Called during reset to restore user configuration.
> + */
> +static void ice_ptp_enable_all_extts(struct ice_pf *pf)
> +{
> +	int i;
> +
> +	for (i = 0; i < pf->ptp.info.n_ext_ts; i++) {
> +		if (pf->ptp.extts_channels[i].ena) {
> +			ice_ptp_cfg_extts(pf, i, &pf->ptp.extts_channels[i],
> +					  false);
> +		}
> +	}

nit: you don't need braces for single line statements.

maybe you could rewrite it as below but i'm not sure if it's more
readable. up to you.

	int i, cnt = pf->ptp.info.n_ext_ts;

	for (i = 0; i < cnt && pf->ptp.extts_channels[i].ena; i++)
		ice_ptp_cfg_extts(pf, i, &pf->ptp.extts_channels[i], false);

>  }
>  

[...]

  reply	other threads:[~2024-06-26 13:36 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-25 17:02 [PATCH net 0/4][pull request] Intel Wired LAN Driver Updates 2024-06-25 (ice) Tony Nguyen
2024-06-25 17:02 ` [PATCH net 1/4] ice: Fix improper extts handling Tony Nguyen
2024-06-26 13:36   ` Maciej Fijalkowski [this message]
2024-06-27 23:16     ` Jakub Kicinski
2024-06-27 23:15   ` Jakub Kicinski
2024-06-25 17:02 ` [PATCH net 2/4] ice: Don't process extts if PTP is disabled Tony Nguyen
2024-06-25 17:57   ` Nelson, Shannon
2024-06-27 10:42     ` Kolacinski, Karol
2024-07-08 21:25       ` Keller, Jacob E
2024-07-08 21:24     ` Keller, Jacob E
2024-06-25 17:02 ` [PATCH net 3/4] ice: Reject pin requests with unsupported flags Tony Nguyen
2024-06-25 17:02 ` [PATCH net 4/4] ice: use proper macro for testing bit Tony Nguyen

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=ZnwZQMe1outhbqPG@boxer \
    --to=maciej.fijalkowski@intel.com \
    --cc=anthony.l.nguyen@intel.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=himasekharx.reddy.pucha@intel.com \
    --cc=horms@kernel.org \
    --cc=jacob.e.keller@intel.com \
    --cc=karol.kolacinski@intel.com \
    --cc=kuba@kernel.org \
    --cc=milena.olech@intel.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=przemyslaw.kitszel@intel.com \
    --cc=richardcochran@gmail.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.