From: Saravana Kannan <saravanak@google.com>
To: Martin Kepplinger <martin.kepplinger@puri.sm>
Cc: grandmaster@al2klimov.de, gregkh@linuxfoundation.org,
heikki.krogerus@linux.intel.com, rjw@rjwysocki.net,
kernel@puri.sm, linux-kernel@vger.kernel.org,
linux-usb@vger.kernel.org,
Android Kernel Team <kernel-team@android.com>
Subject: Re: [PATCH v2] usb: typec: tipd: Don't block probing of consumer of "connector" nodes
Date: Thu, 21 Jul 2022 16:06:15 -0700 [thread overview]
Message-ID: <CAGETcx-rfcP9dFSstf7PKmc2W3kWRLCMRGz8uCvJxo-OpFpjgw@mail.gmail.com> (raw)
In-Reply-To: <20210714061807.5737-1-martin.kepplinger@puri.sm>
On Tue, Jul 13, 2021 at 11:18 PM Martin Kepplinger
<martin.kepplinger@puri.sm> wrote:
>
> Similar as with tcpm this patch lets fw_devlink know not to wait on the
> fwnode to be populated as a struct device.
>
> Without this patch, USB functionality can be broken on some previously
> supported boards.
>
> Fixes: 28ec344bb891 ("usb: typec: tcpm: Don't block probing of consumers of "connector" nodes")
> Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
> ---
>
> revision history
> ----------------
> v2: (thank you Saravana)
> * add a code-comment why the call is needed.
>
> v1:
> https://lore.kernel.org/linux-usb/20210713073946.102501-1-martin.kepplinger@puri.sm/
>
>
>
> drivers/usb/typec/tipd/core.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/drivers/usb/typec/tipd/core.c b/drivers/usb/typec/tipd/core.c
> index 938219bc1b4b..21b3ae25c76d 100644
> --- a/drivers/usb/typec/tipd/core.c
> +++ b/drivers/usb/typec/tipd/core.c
> @@ -629,6 +629,15 @@ static int tps6598x_probe(struct i2c_client *client)
> if (!fwnode)
> return -ENODEV;
>
> + /*
> + * This fwnode has a "compatible" property, but is never populated as a
> + * struct device. Instead we simply parse it to read the properties.
> + * This breaks fw_devlink=on. To maintain backward compatibility
> + * with existing DT files, we work around this by deleting any
> + * fwnode_links to/from this fwnode.
> + */
> + fw_devlink_purge_absent_suppliers(fwnode);
> +
Hey Martin,
As part of a series I'm working on, I'm looking into deleting
fw_devlink_purge_absent_suppliers() and having the driver core figure
this out automatically.
So I was making sure all the current uses of
fw_devlink_purge_absent_suppliers() would automatically be handled by
driver core. But when I looked at this usage of
fw_devlink_purge_absent_suppliers(), I didn't see any "compatible"
property in the "connector" child node. So, I'm confused how you had a
problem without this patch.
fw_devlink would have created fwnode links
between typec_pd and usb_dwc3_0, figured out it's a cycle and have
stopped enforcing the "remote-endpoint" dependencies.
Can you give me more details please on why you were having a problem
without this patch?
I'm looking at arch/arm64/boot/dts/freescale/imx8mq-librem5.dtsi as an
example because you listed it in your v1 patch.
-Saravana
> tps->role_sw = fwnode_usb_role_switch_get(fwnode);
> if (IS_ERR(tps->role_sw)) {
> ret = PTR_ERR(tps->role_sw);
> --
> 2.30.2
>
next prev parent reply other threads:[~2022-07-21 23:06 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-14 6:18 [PATCH v2] usb: typec: tipd: Don't block probing of consumer of "connector" nodes Martin Kepplinger
2021-07-16 9:56 ` Heikki Krogerus
2022-07-21 23:06 ` Saravana Kannan [this message]
2022-07-26 8:44 ` Martin Kepplinger
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=CAGETcx-rfcP9dFSstf7PKmc2W3kWRLCMRGz8uCvJxo-OpFpjgw@mail.gmail.com \
--to=saravanak@google.com \
--cc=grandmaster@al2klimov.de \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=kernel-team@android.com \
--cc=kernel@puri.sm \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=martin.kepplinger@puri.sm \
--cc=rjw@rjwysocki.net \
/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.