Re: [PATCH v3 5/5] arm64: dts: qcom: qrb4210-rb2: Enable EUD debug peripheral

From: Bhupesh Sharma
Date: Thu May 04 2023 - 06:19:55 EST


On Thu, 4 May 2023 at 15:38, Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> wrote:
> On 4.05.2023 10:26, Bhupesh Sharma wrote:
> > Since the USB-C type port on the Qualcomm QRB4210-RB2 board
> > can be set primarily in a 'device' configuration (with the default
> > DIP switch settings), it makes sense to enable the EUD debug
> > peripheral on the board by default by setting the USB 'dr_mode' property
> > as 'otg'.
> >
> > Now, the EUD debug peripheral can be enabled by executing:
> > $ echo 1 > /sys/bus/platform/drivers/qcom_eud/1610000.eud/enable
> >
> > Signed-off-by: Bhupesh Sharma <bhupesh.sharma@xxxxxxxxxx>
> > ---
> > arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 27 +++++++++++++++++++++++-
> > 1 file changed, 26 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/arm64/boot/dts/qcom/qrb4210-rb2.dts b/arch/arm64/boot/dts/qcom/qrb4210-rb2.dts
> > index 1a0776a0cfd0..0ce72f1ebc10 100644
> > --- a/arch/arm64/boot/dts/qcom/qrb4210-rb2.dts
> > +++ b/arch/arm64/boot/dts/qcom/qrb4210-rb2.dts
> > @@ -30,6 +30,10 @@ vph_pwr: vph-pwr-regulator {
> > };
> > };
> >
> > +&eud {
> > + status = "okay";
> > +};
> > +
> > &qupv3_id_0 {
> > status = "okay";
> > };
> > @@ -253,7 +257,28 @@ &usb {
> >
> > &usb_dwc3 {
> > maximum-speed = "super-speed";
> > - dr_mode = "peripheral";
> > +
> > + /*
> > + * There is only one USB DWC3 controller on QRB4210 board and it is connected
> > + * via a DIP Switch:
> > + * - to either an USB - C type connector or an USB - A type connector
> > + * (via a GL3590-S hub), and
> > + * - to either an USB - A type connector (via a GL3590-S hub) or a connector
> > + * for further connection with a mezzanine board.
> > + *
> > + * All of the above hardware muxes would allow us to hook things up in
> > + * different ways to some potential benefit for static configurations (for e.g.
> > + * on one hand we can have two USB - A type connectors and a USB - Ethernet
> > + * connection available and on the other we can use the USB - C type in
> > + * peripheral mode).
> > + *
> > + * Note that since the USB - C type can be used only in peripehral mode,
> > + * so hardcoding the mode to 'peripheral' here makes sense.
> > + *
> > + * However since we want to use the EUD debug device, we set the mode as
> > + * 'otg' here.
> > + */
> > + dr_mode = "otg";
> So if I understand correctly, EUD works via the type-C connector and
> only when the switch is turned such that the type-C connector is in use?

That's right - which by the way is also the default selection (USB-c
type) as per the board schematics.
The whole point of adding the text here was to explain the possible
connections available on the board and why we selected the 'otg' mode.

Thanks,
Bhupesh