All of lore.kernel.org
 help / color / mirror / Atom feed
From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
To: Sven Peter <sven@kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Felipe Balbi <balbi@kernel.org>, Janne Grunau <j@jannau.net>,
	Alyssa Rosenzweig <alyssa@rosenzweig.io>,
	Neal Gompa <neal@gompa.dev>, Vinod Koul <vkoul@kernel.org>,
	Kishon Vijay Abraham I <kishon@kernel.org>,
	Thinh Nguyen <Thinh.Nguyen@synopsys.com>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Frank Li <Frank.Li@nxp.com>,
	linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, asahi@lists.linux.dev,
	linux-arm-kernel@lists.infradead.org,
	linux-phy@lists.infradead.org, Hector Martin <marcan@marcan.st>
Subject: Re: [PATCH v2 14/22] usb: typec: tipd: Read data status in probe and cache its value
Date: Tue, 9 Sep 2025 13:02:06 +0300	[thread overview]
Message-ID: <aL_7Hklraq2ff_YA@kuha.fi.intel.com> (raw)
In-Reply-To: <20250906-atcphy-6-17-v2-14-52c348623ef6@kernel.org>

On Sat, Sep 06, 2025 at 03:43:27PM +0000, Sven Peter wrote:
> From: Hector Martin <marcan@marcan.st>
> 
> Just like for power status we also need to keep track of data status to
> be able to detect mode changes once we introduce de-bouncing for CD321x.
> Read it during probe and keep a cached copy of its value.
> 
> Signed-off-by: Hector Martin <marcan@marcan.st>
> Signed-off-by: Sven Peter <sven@kernel.org>

Reviewed-by: Heikki Krogerus <>

> ---
>  drivers/usb/typec/tipd/core.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/usb/typec/tipd/core.c b/drivers/usb/typec/tipd/core.c
> index e6e9730ee6dacd8c1271b1d52a02da49ff248d3e..b558fc5ecbc35a9dabbf33c444f38173740af7c3 100644
> --- a/drivers/usb/typec/tipd/core.c
> +++ b/drivers/usb/typec/tipd/core.c
> @@ -176,6 +176,7 @@ struct tps6598x {
>  
>  	int wakeup;
>  	u32 status; /* status reg */
> +	u32 data_status;
>  	u16 pwr_status;
>  	struct delayed_work	wq_poll;
>  
> @@ -538,6 +539,7 @@ static bool tps6598x_read_data_status(struct tps6598x *tps)
>  		dev_err(tps->dev, "failed to read data status: %d\n", ret);
>  		return false;
>  	}
> +	tps->data_status = data_status;
>  
>  	if (tps->data->trace_data_status)
>  		tps->data->trace_data_status(data_status);
> @@ -1551,6 +1553,8 @@ static int tps6598x_probe(struct i2c_client *client)
>  	if (status & TPS_STATUS_PLUG_PRESENT) {
>  		if (!tps6598x_read_power_status(tps))
>  			goto err_unregister_port;
> +		if (!tps->data->read_data_status(tps))
> +			goto err_unregister_port;
>  		ret = tps6598x_connect(tps, status);
>  		if (ret)
>  			dev_err(&client->dev, "failed to register partner\n");
> 
> -- 
> 2.34.1
> 

-- 
heikki

WARNING: multiple messages have this Message-ID (diff)
From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
To: Sven Peter <sven@kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Felipe Balbi <balbi@kernel.org>, Janne Grunau <j@jannau.net>,
	Alyssa Rosenzweig <alyssa@rosenzweig.io>,
	Neal Gompa <neal@gompa.dev>, Vinod Koul <vkoul@kernel.org>,
	Kishon Vijay Abraham I <kishon@kernel.org>,
	Thinh Nguyen <Thinh.Nguyen@synopsys.com>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Frank Li <Frank.Li@nxp.com>,
	linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, asahi@lists.linux.dev,
	linux-arm-kernel@lists.infradead.org,
	linux-phy@lists.infradead.org, Hector Martin <marcan@marcan.st>
Subject: Re: [PATCH v2 14/22] usb: typec: tipd: Read data status in probe and cache its value
Date: Tue, 9 Sep 2025 13:02:06 +0300	[thread overview]
Message-ID: <aL_7Hklraq2ff_YA@kuha.fi.intel.com> (raw)
In-Reply-To: <20250906-atcphy-6-17-v2-14-52c348623ef6@kernel.org>

On Sat, Sep 06, 2025 at 03:43:27PM +0000, Sven Peter wrote:
> From: Hector Martin <marcan@marcan.st>
> 
> Just like for power status we also need to keep track of data status to
> be able to detect mode changes once we introduce de-bouncing for CD321x.
> Read it during probe and keep a cached copy of its value.
> 
> Signed-off-by: Hector Martin <marcan@marcan.st>
> Signed-off-by: Sven Peter <sven@kernel.org>

Reviewed-by: Heikki Krogerus <>

> ---
>  drivers/usb/typec/tipd/core.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/usb/typec/tipd/core.c b/drivers/usb/typec/tipd/core.c
> index e6e9730ee6dacd8c1271b1d52a02da49ff248d3e..b558fc5ecbc35a9dabbf33c444f38173740af7c3 100644
> --- a/drivers/usb/typec/tipd/core.c
> +++ b/drivers/usb/typec/tipd/core.c
> @@ -176,6 +176,7 @@ struct tps6598x {
>  
>  	int wakeup;
>  	u32 status; /* status reg */
> +	u32 data_status;
>  	u16 pwr_status;
>  	struct delayed_work	wq_poll;
>  
> @@ -538,6 +539,7 @@ static bool tps6598x_read_data_status(struct tps6598x *tps)
>  		dev_err(tps->dev, "failed to read data status: %d\n", ret);
>  		return false;
>  	}
> +	tps->data_status = data_status;
>  
>  	if (tps->data->trace_data_status)
>  		tps->data->trace_data_status(data_status);
> @@ -1551,6 +1553,8 @@ static int tps6598x_probe(struct i2c_client *client)
>  	if (status & TPS_STATUS_PLUG_PRESENT) {
>  		if (!tps6598x_read_power_status(tps))
>  			goto err_unregister_port;
> +		if (!tps->data->read_data_status(tps))
> +			goto err_unregister_port;
>  		ret = tps6598x_connect(tps, status);
>  		if (ret)
>  			dev_err(&client->dev, "failed to register partner\n");
> 
> -- 
> 2.34.1
> 

-- 
heikki

-- 
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy

  reply	other threads:[~2025-09-09 10:02 UTC|newest]

Thread overview: 109+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-06 15:43 [PATCH v2 00/22] Apple Silicon USB3 support Sven Peter
2025-09-06 15:43 ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 01/22] dt-bindings: usb: Add Apple dwc3 Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-07  9:45   ` Krzysztof Kozlowski
2025-09-07  9:45     ` Krzysztof Kozlowski
2025-09-06 15:43 ` [PATCH v2 02/22] usb: dwc3: dwc3_power_off_all_roothub_ports: Use ioremap_np when required Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-11  1:37   ` Thinh Nguyen
2025-09-11  1:37     ` Thinh Nguyen
2025-09-06 15:43 ` [PATCH v2 03/22] usb: dwc3: glue: Allow more fine grained control over mode switches Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-19 21:40   ` Thinh Nguyen
2025-09-19 21:40     ` Thinh Nguyen
2025-09-20 11:48     ` Sven Peter
2025-09-20 11:48       ` Sven Peter
2025-09-24 22:49       ` Thinh Nguyen
2025-09-24 22:49         ` Thinh Nguyen
2025-09-06 15:43 ` [PATCH v2 04/22] usb: dwc3: Add Apple Silicon DWC3 glue layer driver Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-11  1:46   ` Thinh Nguyen
2025-09-11  1:46     ` Thinh Nguyen
2025-09-19 22:40   ` Thinh Nguyen
2025-09-19 22:40     ` Thinh Nguyen
2025-09-21 13:40     ` Sven Peter
2025-09-21 13:40       ` Sven Peter
2025-09-24 22:36       ` Thinh Nguyen
2025-09-24 22:36         ` Thinh Nguyen
2025-09-06 15:43 ` [PATCH v2 05/22] usb: typec: tipd: Clear interrupts first Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 06/22] usb: typec: tipd: Move initial irq mask to tipd_data Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 07/22] usb: typec: tipd: Move switch_power_state " Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 08/22] usb: typec: tipd: Trace data status for CD321x correctly Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 09/22] usb: typec: tipd: Add cd321x struct with separate size Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 10/22] usb: typec: tipd: Read USB4, Thunderbolt and DisplayPort status for cd321x Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-09  9:41   ` Heikki Krogerus
2025-09-09  9:41     ` Heikki Krogerus
2025-09-06 15:43 ` [PATCH v2 11/22] usb: typec: tipd: Register DisplayPort and Thunderbolt altmodes " Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-09  9:47   ` Heikki Krogerus
2025-09-09  9:47     ` Heikki Krogerus
2025-09-06 15:43 ` [PATCH v2 12/22] usb: typec: tipd: Update partner identity when power status was updated Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-07  8:54   ` Sergey Shtylyov
2025-09-07  8:54     ` Sergey Shtylyov
2025-09-07 18:59     ` Sven Peter
2025-09-07 18:59       ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 13/22] usb: typec: tipd: Use read_power_status function in probe Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-09  9:56   ` Heikki Krogerus
2025-09-09  9:56     ` Heikki Krogerus
2025-09-06 15:43 ` [PATCH v2 14/22] usb: typec: tipd: Read data status in probe and cache its value Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-09 10:02   ` Heikki Krogerus [this message]
2025-09-09 10:02     ` Heikki Krogerus
2025-09-09 10:03     ` Heikki Krogerus
2025-09-09 10:03       ` Heikki Krogerus
2025-09-06 15:43 ` [PATCH v2 15/22] usb: typec: tipd: Handle mode transitions for CD321x Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-09 10:10   ` Heikki Krogerus
2025-09-09 10:10     ` Heikki Krogerus
2025-09-11  9:26   ` Janne Grunau
2025-09-11  9:26     ` Janne Grunau
2025-09-06 15:43 ` [PATCH v2 16/22] dt-bindings: phy: Add Apple Type-C PHY Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-09 17:04   ` Rob Herring
2025-09-09 17:04     ` Rob Herring
2025-09-06 15:43 ` [PATCH v2 17/22] soc: apple: Add hardware tunable support Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-07 12:46   ` Alyssa Anne Rosenzweig
2025-09-07 12:46     ` Alyssa Anne Rosenzweig
2025-09-06 15:43 ` [PATCH v2 18/22] phy: apple: Add Apple Type-C PHY Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-07 13:12   ` Alyssa Anne Rosenzweig
2025-09-07 13:12     ` Alyssa Anne Rosenzweig
2025-09-07 13:15   ` Alyssa Anne Rosenzweig
2025-09-07 13:15     ` Alyssa Anne Rosenzweig
2025-09-07 13:55   ` kernel test robot
2025-09-08 15:04   ` Philipp Zabel
2025-09-08 15:04     ` Philipp Zabel
2025-09-08 18:12   ` Janne Grunau
2025-09-08 18:12     ` Janne Grunau
2025-09-09 22:25     ` Nathan Chancellor
2025-09-09 22:25       ` Nathan Chancellor
2025-09-06 15:43 ` [PATCH v2 19/22] arm64: dts: apple: t8103: Mark ATC USB AON domains as always-on Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 20/22] arm64: dts: apple: t8103: Add Apple Type-C PHY and dwc3 nodes Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-07  9:47   ` Krzysztof Kozlowski
2025-09-07  9:47     ` Krzysztof Kozlowski
2025-09-07 12:43     ` Alyssa Anne Rosenzweig
2025-09-07 12:43       ` Alyssa Anne Rosenzweig
2025-09-07 12:51       ` Greg Kroah-Hartman
2025-09-07 12:51         ` Greg Kroah-Hartman
2025-09-07 15:01       ` Krzysztof Kozlowski
2025-09-07 15:01         ` Krzysztof Kozlowski
2025-09-07 19:02     ` Sven Peter
2025-09-07 19:02       ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 21/22] arm64: dts: apple: t8112: " Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-06 15:43 ` [PATCH v2 22/22] arm64: dts: apple: t600x: " Sven Peter
2025-09-06 15:43   ` Sven Peter
2025-09-11 10:10 ` [PATCH v2 00/22] Apple Silicon USB3 support Neal Gompa
2025-09-11 10:10   ` Neal Gompa

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=aL_7Hklraq2ff_YA@kuha.fi.intel.com \
    --to=heikki.krogerus@linux.intel.com \
    --cc=Frank.Li@nxp.com \
    --cc=Thinh.Nguyen@synopsys.com \
    --cc=alyssa@rosenzweig.io \
    --cc=asahi@lists.linux.dev \
    --cc=balbi@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=j@jannau.net \
    --cc=kishon@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-phy@lists.infradead.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=marcan@marcan.st \
    --cc=neal@gompa.dev \
    --cc=p.zabel@pengutronix.de \
    --cc=robh@kernel.org \
    --cc=sven@kernel.org \
    --cc=vkoul@kernel.org \
    /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.