From: William Bright <william.bright@imd-tec.com>
To: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konradybcio@kernel.org>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH v4 4/4] arm64: dts: qcom: Add IMDT QCS8550 SBC
Date: Tue, 30 Jun 2026 16:04:38 +0100 [thread overview]
Message-ID: <akPbBuWU11mrCsfD@will-Legion-Slim-5-16APH8> (raw)
In-Reply-To: <c56732c2-2aff-4c3f-801b-b798c95918fc@oss.qualcomm.com>
On Mon, Jun 29, 2026 at 04:03:18PM +0200, Konrad Dybcio wrote:
> On 6/29/26 12:25 PM, William Bright wrote:
> > On Fri, Jun 26, 2026 at 05:18:20PM +0200, Konrad Dybcio wrote:
>
> [...]
>
> > The PCIe switch we are using is a NXP CBTU02044HEJ, this is a simple
> > 1->2 switch that is not PCIe enumerable. Given that there isn't support
> > for this IC already in the kernel and that it will take quite a few
> > weeks/months for me to cobble something together, I am thinking that it
> > might make sense to drop PCIe support from this patch-series in V5 and
> > then submit a seperate patch-series with a driver and bindings for this
> > IC whenever I get something working. Are you OK with this?
>
> Sure
>
> I'm a bit curious why do you have a switch there in the first
> place - is there anything else connected to the other port?
>
Yeah both PCIe ports are used.
Here's a diagram of both pcie0 and pcie1:
pcie0 pcie1
| |
| |
| |
| |
| v
| +-------------------+
| | PCIe Switch |
| | CBTU02044HEJ |
| +-------------------+
| / \
| / \
| / GPIO16 = Low \ GPIO16 = High
v v v
+-------------------+ +-----------+ +-------------+
| M.2 Key E | | LAN7430 | | M.2 Key B |
| Slot | | (Gigabit | | Slot |
| | | Ethernet) | | |
+-------------------+ +-----------+ +-------------+
We used the CBTU02044HEJ PCIe switch on pcie1 so that we could use pcie1
for ethernet or M.2 Key B with static boot-time selection of either.
My limited understanding is that enumerable PCIe switches are expensive
and hard to get although that might be changing. With pcie0 it looks
like I can just add the Key E connector DT node like you suggested and I
will drop pcie1 support for now.
> Would you like for that to be switchable at runtime?
>
> +Mani will probably be interested
>
> Konrad
I didn't intend for this to be possible but its not a negative if this
can be done. My original plan was to use the below .dtso when using Key
B:
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2026 IMD Technologies Ltd
*
* There are two options for PCIe routing on the IMDT QCS8550 SBC.
* By default, the PCIe switch is configured to route to the GBE PHY, but
* this can be changed to route to the M.2 slot Key B by setting
* pcie_switch_sel_gpio high
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/gpio/gpio.h>
&pcie_switch_sel_gpio {
/* Change the PCIe switch so that key B routing is selected by
* inverting the GPIO polarity.
*/
gpios = <16 GPIO_ACTIVE_LOW>;
};
Regards
Will
next prev parent reply other threads:[~2026-06-30 15:04 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-10 8:57 [PATCH v4 0/4] arm64: dts: qcom: Add IMDT QCS8550 SBC William Bright
2026-06-10 8:57 ` [PATCH v4 1/4] dt-bindings: vendor-prefixes: Add IMDT William Bright
2026-06-10 8:57 ` [PATCH v4 2/4] dt-bindings: arm: qcom: Document IMDT QCS8550 SBC/SoM William Bright
2026-06-10 8:57 ` [PATCH v4 3/4] arm64: dts: qcom: Add IMDT QCS8550 SoM William Bright
2026-06-26 15:08 ` Konrad Dybcio
2026-06-10 8:57 ` [PATCH v4 4/4] arm64: dts: qcom: Add IMDT QCS8550 SBC William Bright
2026-06-10 9:05 ` sashiko-bot
2026-06-26 15:18 ` Konrad Dybcio
2026-06-29 10:25 ` William Bright
2026-06-29 14:03 ` Konrad Dybcio
2026-06-30 15:04 ` William Bright [this message]
2026-06-24 13:34 ` [PATCH v4 0/4] " William Bright
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=akPbBuWU11mrCsfD@will-Legion-Slim-5-16APH8 \
--to=william.bright@imd-tec.com \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=konrad.dybcio@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=manivannan.sadhasivam@oss.qualcomm.com \
--cc=robh@kernel.org \
/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