From: Frank Li <Frank.li@nxp.com>
To: Bjorn Andersson <quic_bjorande@quicinc.com>
Cc: Bjorn Andersson <andersson@kernel.org>,
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>,
Wesley Cheng <quic_wcheng@quicinc.com>,
Saravana Kannan <saravanak@google.com>,
Thinh Nguyen <Thinh.Nguyen@synopsys.com>,
Philipp Zabel <p.zabel@pengutronix.de>,
Konrad Dybcio <konrad.dybcio@linaro.org>,
linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH v2 0/7] usb: dwc3: qcom: Flatten dwc3 structure
Date: Fri, 10 Jan 2025 11:55:21 -0500 [thread overview]
Message-ID: <Z4FQ+XQYS7tpHs9b@lizhi-Precision-Tower-5810> (raw)
In-Reply-To: <ZwXweChRh5bjc1nS@hu-bjorande-lv.qualcomm.com>
On Tue, Oct 08, 2024 at 07:54:48PM -0700, Bjorn Andersson wrote:
> On Tue, Oct 08, 2024 at 04:09:45PM -0400, Frank Li wrote:
> > On Tue, Aug 13, 2024 at 02:07:01PM -0400, Frank Li wrote:
> > > On Sun, Aug 11, 2024 at 08:11:57PM -0700, Bjorn Andersson wrote:
> > > > The USB IP-block found in most Qualcomm platforms is modelled in the
> > > > Linux kernel as 3 different independent device drivers, but as shown by
> > > > the already existing layering violations in the Qualcomm glue driver
> > > > they can not be operated independently.
> > > >
> > > > With the current implementation, the glue driver registers the core and
> > > > has no way to know when this is done. As a result, e.g. the suspend
> > > > callbacks needs to guard against NULL pointer dereferences when trying
> > > > to peek into the struct dwc3 found in the drvdata of the child.
> > > >
> > > > Missing from the upstream Qualcomm USB support is handling of role
> > > > switching, in which the glue needs to be notified upon DRD mode changes.
> > > > Several attempts has been made through the years to register callbacks
> > > > etc, but they always fall short when it comes to handling of the core's
> > > > probe deferral on resources etc.
> > > >
> > > > Furhtermore, the DeviceTree binding is a direct representation of the
> > > > Linux driver model, and doesn't necessarily describe "the USB IP-block".
> > > >
> > > > This series therefor attempts to flatten the driver split, and operate
> > > > the glue and core out of the same platform_device instance. And in order
> > > > to do this, the DeviceTree representation of the IP block is flattened.
> > >
> >
> > Bjorn Andersson:
> > Any follow up on this thread?
> >
>
> Thanks for reaching out, Frank. I did pick this up again a few days
> back.
>
> I'm struggling with Rob's request for not peeking into struct property
> and/or utilizing overlays. Hoping to figure this out shortly, so I can
> get v3 in shape.
Bjorn:
Do you still work on this? Or I missed somethings.
Frank
>
> Regards,
> Bjorn
prev parent reply other threads:[~2025-01-10 16:55 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-12 3:11 [PATCH v2 0/7] usb: dwc3: qcom: Flatten dwc3 structure Bjorn Andersson
2024-08-12 3:11 ` [PATCH v2 1/7] dt-bindings: usb: snps,dwc3: Split core description Bjorn Andersson
2024-08-18 14:33 ` Rob Herring
2024-08-12 3:11 ` [PATCH v2 2/7] dt-bindings: usb: Introduce qcom,snps-dwc3 Bjorn Andersson
2024-08-12 4:32 ` Rob Herring (Arm)
2024-08-12 3:12 ` [PATCH v2 3/7] of: dynamic: Don't discard children upon node attach Bjorn Andersson
2024-08-12 20:24 ` Rob Herring
2024-08-12 21:21 ` Bjorn Andersson
2024-08-12 3:12 ` [PATCH v2 4/7] usb: dwc3: core: Expose core driver as library Bjorn Andersson
2024-08-12 12:21 ` kernel test robot
2024-08-12 19:00 ` Bjorn Andersson
2024-08-12 12:21 ` kernel test robot
2024-08-13 18:15 ` Frank Li
2024-08-14 1:01 ` Thinh Nguyen
2024-08-19 21:35 ` Bjorn Andersson
2024-08-14 0:56 ` Thinh Nguyen
2024-08-19 21:14 ` Bjorn Andersson
2024-08-19 17:48 ` Krishna Kurapati
2024-08-19 21:36 ` Bjorn Andersson
2024-09-12 22:21 ` Masahiro Yamada
2024-09-13 2:34 ` Bjorn Andersson
2024-08-12 3:12 ` [PATCH v2 5/7] usb: dwc3: qcom: Don't reply on drvdata during probe Bjorn Andersson
2024-08-13 18:18 ` Frank Li
2024-08-19 21:17 ` Bjorn Andersson
2024-09-12 22:21 ` Masahiro Yamada
2024-08-12 3:12 ` [PATCH v2 6/7] usb: dwc3: qcom: Transition to flattened model Bjorn Andersson
2024-08-12 13:33 ` kernel test robot
2024-08-12 21:21 ` Rob Herring
2024-08-12 22:16 ` Bjorn Andersson
2024-08-13 15:06 ` Rob Herring
2024-08-13 18:33 ` Frank Li
2024-08-19 21:28 ` Bjorn Andersson
2024-08-12 3:12 ` [PATCH v2 7/7] arm64: dts: qcom: sc8280x: Flatten the USB nodes Bjorn Andersson
2024-08-13 18:07 ` [PATCH v2 0/7] usb: dwc3: qcom: Flatten dwc3 structure Frank Li
2024-10-08 20:09 ` Frank Li
2024-10-09 2:54 ` Bjorn Andersson
2025-01-10 16:55 ` Frank Li [this message]
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=Z4FQ+XQYS7tpHs9b@lizhi-Precision-Tower-5810 \
--to=frank.li@nxp.com \
--cc=Thinh.Nguyen@synopsys.com \
--cc=andersson@kernel.org \
--cc=balbi@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=p.zabel@pengutronix.de \
--cc=quic_bjorande@quicinc.com \
--cc=quic_wcheng@quicinc.com \
--cc=robh@kernel.org \
--cc=saravanak@google.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox