mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
To: Alexander Koskovich <akoskovich@pm.me>,
	Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Cc: Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>, Kees Cook <kees@kernel.org>,
	Tony Luck <tony.luck@intel.com>,
	"Guilherme G. Piccoli" <gpiccoli@igalia.com>,
	linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 2/2] arm64: dts: qcom: sm8250-asus-obiwan: Add ASUS ROG Phone 3
Date: Wed, 18 Mar 2026 12:29:37 +0100	[thread overview]
Message-ID: <4ed72391-fcd2-4ad7-94da-45fe13012953@oss.qualcomm.com> (raw)
In-Reply-To: <nNinWyYOTp_1MjE-6JI6S4NPPxfZHvnIZLblp0x4t71DVOXn0ScH--kpAs-wHBQVUpgSvIZmOKRMmUVNzs8Vcm8PG3_4hFIW1jVx1RES2sg=@pm.me>

On 3/18/26 12:14 PM, Alexander Koskovich wrote:
> On Wednesday, March 18th, 2026 at 6:28 AM, Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> wrote:
> 
>>> +	/*
>>> +	 * There are also ER & EVB boards, but those have meaningful hardware
>>> +	 * differences that make them not compatible with this devicetree.
>>> +	 */
>>> +	qcom,board-id = <31 0>, /* ER2 */
>>> +			<40 0>, /* PR */
>>> +			<41 0>, /* PR2 */
>>> +			<50 0>; /* MP */
>>
>> I would guesstimate MP is Mass Production and everything before that is
>> engineering samples.. perhaps that doesn't hurt - maybe some curious Asus
>> engineer swings by one day!
> 
> Actually the unit I have is 'PR', it's one I got from ASUS when they were still
> sending out phones to developers. I guess the units they shipped out were preprod.

Oh, nice!

Maybe 'public relations'..


>>> +		source-pdos = <PDO_FIXED(5000, 900,
>>> +					 PDO_FIXED_DUAL_ROLE |
>>> +					 PDO_FIXED_USB_COMM |
>>> +					 PDO_FIXED_DATA_SWAP)>;
>>> +
>>> +		sink-pdos = <PDO_FIXED(5000, 3000,
>>> +				       PDO_FIXED_DUAL_ROLE |
>>> +				       PDO_FIXED_USB_COMM |
>>> +				       PDO_FIXED_DATA_SWAP)
>>> +			     PDO_FIXED(9000, 3000, 0)
>>> +			     PDO_FIXED(12000, 2250, 0)>;
>>
>> Both ports have the same PDOs - will this kaboom if you plug in two chargers?
> 
> Good catch, from what I can see there is zero hardware isolation. Downstream
> prevents dual sink by only allowing one port to negotiate sink at a time (seems
> to always prefer usb_1 if both are plugged in, guessing because its used for
> the dock), but there is no upstream mechanism to handle this as far as I know
> (not sure if this could even be done cleanly as it'd require cooperation
> between pm8150b_typec and rt1715).

Could you please remind me how the two were connected? Maybe we can work
something out. Sounds like it would make sense for the two to have *some*
sort of relationship described

> 
> Will just drop the sink PDOs from usb_2 and have it be only source to avoid
> this issue.

SG as a workaround
>>> +&usb_2 {
>>> +	pinctrl-0 = <&rt1715_mux_en>, <&usb2_mux_en>;
>>> +	pinctrl-names = "default";
>>> +
>>> +	/*
>>> +	 * Disable USB3 clock requirement as the bottom port only supports USB2.
>>> +	 * The USB3 lanes are routed through the pogo connector on this board for
>>> +	 * use with accessories, so will need to revisit this when we start to add
>>> +	 * support for those.
>>> +	 */
>>> +	qcom,select-utmi-as-pipe-clk;
>>
>> So, is that right?
>>
>>                                   ┌───────┐
>>                                   │ POGO  │
>>                                   └──┬──┬─┘
>>                    superspeed        │  │
>>        ┌─────────────────────────────┘  │
>>        │                                │
>> ┌──────┼─┐      highspeed               │
>> │ DWC3_2 ┼─────────────────────┐   ┌────┴──┐
>> └────────┘                     └───┤  MUX  ┼───────PM8150_GPIO9
>>                  ┌─────────┐       └──┬────┘
>>                  │ GPIO170 │          │
>>                  └─────────┘          │
>>                       │               │
>> ┌────────┐ RXTX   ┌───┴──┐        ┌───┴──┐
>> │ UART   ┼────────│ MUX  ┼────────┤USB-C2│
>> └────────┘        └──┬───┘        └──────┘
>>                      │
>>                      ▼
>>                     GND
> 
> I misspoke in v3, UART is not controlled via a mux it's just a gate. Was
> looking at the board previously and it seemed it either went to test points on
> the board, or USB. But the enable GPIO controls both. Have it renamed in v4
> staging atm.
> 
> But yeah that is accurate otherwise wrt the USB 2 mux.

Okay.. I don't know whether we have infra to handle it today (+Dmitry?)
but generally we'd need something like

usb-mux {
	select-gpios = <&tlmm foo bar>;
	// sense it via some notification?

	ports {
		// conn to usb_2_hs
		// conn to type-c
		// conn to pogo pin connector
	};
};

rt1715 {
	connector {
		// mux conn
	}
}

pogo-pins-connector {
	// mux conn	
}

there was a similar attempt (I bumped it up.. maybe it'll be merged soon)
at describing a pogo pin connector, so part of that may come in useful:

https://lore.kernel.org/all/20250225223038.879614-2-swboyd@chromium.org/

but in any case, that's a song of the future..

Konrad

  reply	other threads:[~2026-03-18 11:29 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-11  2:43 [PATCH v3 0/2] Add support for the ASUS ROG Phone 3 (SM8250) Alexander Koskovich
2026-03-11  2:43 ` [PATCH v3 1/2] dt-bindings: arm: qcom: Add ASUS ROG Phone 3 Alexander Koskovich
2026-03-11  2:43 ` [PATCH v3 2/2] arm64: dts: qcom: sm8250-asus-obiwan: " Alexander Koskovich
2026-03-18 10:28   ` Konrad Dybcio
2026-03-18 11:14     ` Alexander Koskovich
2026-03-18 11:29       ` Konrad Dybcio [this message]
2026-03-18 11:56         ` Alexander Koskovich
2026-03-23 14:10           ` Konrad Dybcio
2026-03-18 14:40         ` Dmitry Baryshkov

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=4ed72391-fcd2-4ad7-94da-45fe13012953@oss.qualcomm.com \
    --to=konrad.dybcio@oss.qualcomm.com \
    --cc=akoskovich@pm.me \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@oss.qualcomm.com \
    --cc=gpiccoli@igalia.com \
    --cc=kees@kernel.org \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=tony.luck@intel.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

all inboxes | Powered by JetHome®