From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9D642C636D4 for ; Mon, 13 Feb 2023 12:42:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:Reply-To:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:References:Cc:To:Subject: From:MIME-Version:Date:Message-ID:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=5JAmijtnoRGVcSP2fcxFz3A8ZV0ofGl3OVjN3h7uLkk=; b=oK3VJ98ICQxO9jvynQeE/Xxri2 0/ZUwSY9iizpZcInBiollXh2Gd8HXBnA7lMn3PPn2OA+6rI2V5RRfbqDeaPOMTFnV8riAfYYwSMR7 LalJ68A8WGwyXbpA2AsLDWoMjFkEDKW1tKzo4JuFvSR4L+gexZGcXfEtntRntLFWnYF/1pzY5YYoT Xkt+dcoYhNlunLwjE2AaN2Zhuj7HezJIcfCJWkaqc9EXLuPCIRFnj2pXWcCdF3k68JlDYdYEI3Pvm GsUkPNYW7g4XLvThSqtvpOsn6XE4CZXkx3Uo+5GB2fl20qAjs3j+oJRNZ1Uyp2SmyWPAHhMmYo5IC Zvq03WUA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pRY8y-00EfsG-Vb; Mon, 13 Feb 2023 12:41:17 +0000 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pRY8w-00Efr2-8v for linux-arm-kernel@lists.infradead.org; Mon, 13 Feb 2023 12:41:15 +0000 Received: by mail-wm1-x330.google.com with SMTP id m16-20020a05600c3b1000b003dc4050c94aso8910397wms.4 for ; Mon, 13 Feb 2023 04:41:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=content-transfer-encoding:in-reply-to:organization:references:cc:to :content-language:subject:reply-to:from:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=zHcsWslWS4geOoaOyFy4i3EX0qRfA5AC75jkKmzBE40=; b=kmKrClqgS1Rm1p+bosfEaZ/GyQkYANdE7t7bxIu+s6LXEvQe6JR8TmhBiILJL8t4Hn 1KTXB5AyNdQAdo7agl/6Gt8O2SdbgFUdhQCBS7kjLg4Ix1MDo5qtLY6PzrKraxOHTjFz cxhEZxVzekoNjlmBWaDbY+eDf+ARsWIpwkcjP7s2IsvjTsw6bDh/Tt5C8QRfxKqXjtn8 lRaCAWgMU4pNievRI4XE2Q/1CCn/fTEySZYr8kAZ0O+cpp8+AjHzpXrSvaYZxHtDTUXl 7RAYnYVV8nxkMxTqrAKJjwsQ+hYo2u9zfpJly2kBNEMImxJ3atcO7ci2qNR65wHBNpG5 n6Jw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:organization:references:cc:to :content-language:subject:reply-to:from:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=zHcsWslWS4geOoaOyFy4i3EX0qRfA5AC75jkKmzBE40=; b=1rZR4+mPGwFHTaDXBFnGB0jQ+Yf++A3WfeByWJQAfCG7bugmZEcjt3MpuDzMl+QoVY aYn6U3DRq1ixIRAxpbjWnzX86VhhBTlRSkqV6yKyhH3s7NDtZZ9YWtj5qEdH2Tac6Afk FpIB4LYvMqQlmPuMuOy2eLWWI+zq2vFpRr64fwVNgX2TEWQj124BMUj0juS3FNrsHDEc CPqt7jxacH/wDioFSIqAxpm56J07I1E5TwOCTTiIpm5XijooD/9vq6DgtCGfSRuVfhGw C1i9VCkC51E1rrR61t5ADBgrVAricEHZWPrC/uU2+Q7ZInrMebh3m/4UzVRT5dkIMFCg DfuA== X-Gm-Message-State: AO0yUKXZCwyr8sSZjHYaA0OqXl6B9smBA9x3Hw5NqhJ89hWbih2JiFv8 dBc/sa0l7KNL8QfpbGBft0jxoA== X-Google-Smtp-Source: AK7set+ChHzjPaAAj0LSzU315+gX4eL5CsU7kiARVrBoxEnHgoOj6avm1iTauI8aS67kFM8jopkibQ== X-Received: by 2002:a05:600c:1708:b0:3de:e8c5:d826 with SMTP id c8-20020a05600c170800b003dee8c5d826mr18838812wmn.28.1676292070502; Mon, 13 Feb 2023 04:41:10 -0800 (PST) Received: from ?IPV6:2a01:e0a:982:cbb0:6e1e:131f:8bc1:aad8? ([2a01:e0a:982:cbb0:6e1e:131f:8bc1:aad8]) by smtp.gmail.com with ESMTPSA id t15-20020a05600c198f00b003ddc781b1d4sm14797896wmq.33.2023.02.13.04.41.09 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 13 Feb 2023 04:41:10 -0800 (PST) Message-ID: Date: Mon, 13 Feb 2023 13:41:09 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 From: Neil Armstrong Subject: Re: [PATCH v2 08/11] arm64: dts: qcom: sm8350-hdk: add pmic glink node Content-Language: en-US To: Bjorn Andersson Cc: Heikki Krogerus , Greg Kroah-Hartman , Andy Gross , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Catalin Marinas , Will Deacon , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org References: <20230130-topic-sm8450-upstream-pmic-glink-v2-0-71fea256474f@linaro.org> <20230130-topic-sm8450-upstream-pmic-glink-v2-8-71fea256474f@linaro.org> <20230210201327.fboziimwky2wffiw@ripper> Organization: Linaro Developer Services In-Reply-To: <20230210201327.fboziimwky2wffiw@ripper> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230213_044114_401185_4321B040 X-CRM114-Status: GOOD ( 21.01 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: neil.armstrong@linaro.org Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On 10/02/2023 21:13, Bjorn Andersson wrote: > On Fri, Feb 10, 2023 at 04:02:11PM +0100, Neil Armstrong wrote: >> Add the pmic glink node linked with the DWC3 USB controller >> switched to OTG mode and tagged with usb-role-switch. >> >> Signed-off-by: Neil Armstrong >> --- >> arch/arm64/boot/dts/qcom/sm8350-hdk.dts | 77 ++++++++++++++++++++++++++++----- >> 1 file changed, 65 insertions(+), 12 deletions(-) >> >> diff --git a/arch/arm64/boot/dts/qcom/sm8350-hdk.dts b/arch/arm64/boot/dts/qcom/sm8350-hdk.dts >> index 54654eb75c28..28fc9a835c5d 100644 >> --- a/arch/arm64/boot/dts/qcom/sm8350-hdk.dts >> +++ b/arch/arm64/boot/dts/qcom/sm8350-hdk.dts >> @@ -31,6 +31,40 @@ hdmi_con: endpoint { >> }; >> }; >> >> + pmic-glink { >> + compatible = "qcom,sm8350-pmic-glink", "qcom,pmic-glink"; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + connector@0 { >> + compatible = "usb-c-connector"; >> + reg = <0>; >> + power-role = "dual"; >> + data-role = "dual"; >> + >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + port@0 { >> + reg = <0>; >> + >> + pmic_glink_hs_in: endpoint { >> + remote-endpoint = <&usb_1_dwc3_hs>; >> + }; >> + }; >> + >> + port@1 { >> + reg = <1>; >> + >> + pmic_glink_ss_in: endpoint { >> + remote-endpoint = <&usb_1_dwc3_ss>; >> + }; >> + }; >> + }; >> + }; >> + }; >> + >> vph_pwr: vph-pwr-regulator { >> compatible = "regulator-fixed"; >> regulator-name = "vph_pwr"; >> @@ -666,23 +700,42 @@ &usb_1 { >> }; >> >> &usb_1_dwc3 { >> - /* TODO: Define USB-C connector properly */ >> - dr_mode = "peripheral"; >> -}; >> + dr_mode = "otg"; >> + usb-role-switch; >> >> -&usb_1_hsphy { >> - status = "okay"; >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> >> - vdda-pll-supply = <&vreg_l5b_0p88>; >> - vdda18-supply = <&vreg_l1c_1p8>; >> - vdda33-supply = <&vreg_l2b_3p07>; >> + port@0 { >> + reg = <0>; >> + >> + usb_1_dwc3_hs: endpoint { >> + remote-endpoint = <&pmic_glink_hs_in>; >> + }; >> + }; >> + >> + port@1 { >> + reg = <1>; >> + >> + usb_1_dwc3_ss: endpoint { >> + remote-endpoint = <&pmic_glink_ss_in>; > > The connector is indeed the next active component on the SuperSpeed > lanes for USB. But as you're targeting to introduce QMP on that path, > connector@0/port@1 would be pointing to QMP/ports/port@N. > > Do you plan to express the datapath between USB and QMP using this port > at that time? (It's the correct thing to do...) Yeah we need to figure out, because ultimately the datapath should be: connector: port0 --> usb_1_dwc3_hs port1 --> qmpphy --> usb_1_dwc3_ss port2 --> fsa4480 --> qmpphy -> dp_controller And with a retimer, it gets even more complex: connector: port0 --> usb_1_dwc3_hs port1 --> retimer --> qmpphy --> usb_1_dwc3_ss port2 --> retimer --> qmpphy -> dp_controller The solution I was using is instead of having chained port/endpoints, I use multiple endpoints like : port0 --> usb_1_dwc3_hs port1 --> ep0: usb_1_dwc3_ss ep1: qmpphy port2 --> ep0: fsa4480 ep1: dp_controller But I'm sure this is valid... but it is much simpler. Neil > > Or will we not describe the SS lanes in this scenario? > > Regards, > Bjorn > >> + }; >> + }; >> + }; >> }; >> >> -&usb_1_qmpphy { >> - status = "okay"; >> +&usb_1_dwc3 { >> + dr_mode = "otg"; >> + usb-role-switch; >> +}; >> >> - vdda-phy-supply = <&vreg_l6b_1p2>; >> - vdda-pll-supply = <&vreg_l1b_0p88>; >> +&usb_1_dwc3_hs { >> + remote-endpoint = <&pmic_glink_hs_in>; >> +}; >> + >> +&usb_1_dwc3_ss { >> + remote-endpoint = <&pmic_glink_ss_in>; >> }; >> >> &usb_2 { >> >> -- >> 2.34.1 >> _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel