On 10/20/2026 4:27 PM, Konrad Dybcio wrote:
On 10/9/26 9:55 AM, Xilin Wu wrote:
Add initial device tree support for the Radxa Dragon Q8B,
a single-board computer based on the Qualcomm Snapdragon 8cx Gen 3
SC8280XP platform.

[...]

+       pmic-glink {
+               compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink";
+
+               #address-cells = <1>;
+               #size-cells = <0>;
+               orientation-gpios = <&tlmm 166 GPIO_ACTIVE_HIGH>,
+                                       <&tlmm 49 GPIO_ACTIVE_HIGH>;

Please align the '<'s


Ack.


+                       ports {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               port@0 {

Please add a \n before the subnode


Ack.

[...]

+       vcc_5v_s: regulator-vcc-5v-s {
+               compatible = "regulator-fixed";
+
+               regulator-name = "vcc_5v_s";
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+
+               gpio = <&tlmm 159 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+               startup-delay-us = <250000>;
+               off-on-delay-us = <150000>;
+
+               pinctrl-0 = <&vcc_5v_s_reg_en>;
+               pinctrl-names = "default";
+
+               /* CH7218A needs to be powered on for HPD logic to work */
+               regulator-always-on;

Does the power supply reference at the connector node not handle this?


No, the regulator will be turned off if there's no active display.

[...]

+&gpu_zap_shader {
+       /* Reuse firmware from x13s as the SoC is unfused */
+       firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn";
+};

Other than the signature, the zap firmware is wholly generic.. I wonder
if we can just add a symlink in l-f to get a generic path..

WDYT +Dmitry?


I would prefer that indeed.

[...]

+/* M-key Gen3 x4 */
+&pcie2a {
+       /* Place ECAM and BAR space above 4 GiB to accommodate large BARs. */
+       reg = <0x0 0x01c20000 0x0 0x3000>,
+             <0x0 0x3c000000 0x0 0xf1d>,
+             <0x0 0x3c000f20 0x0 0xa8>,
+             <0x0 0x3c001000 0x0 0x1000>,
+             <0x5 0x00000000 0x0 0x10000000>, /* ECAM config */
+             <0x0 0x01c23000 0x0 0x1000>;
+
+       ranges = /* IO (1 MiB) */
+                <0x01000000 0x0 0x00000000 0x0 0x3c200000 0x0 0x100000>,
+                /* 32-bit non-prefetchable memory (256 MiB) */
+                <0x02000000 0x0 0x40000000 0x5 0x10000000 0x0 0x10000000>,
+                /* 64-bit non-prefetchable memory (3.5 GiB) */
+                <0x03000000 0x5 0x20000000 0x5 0x20000000 0x0 0xe0000000>;

Please drop this change on the board side, this is SoC-specific.
Likewise for the other ports.


Ack. Do you think this change can be applied to SoC DTSI?

[...]

+&pmk8280_pon_pwrkey {
+       status = "okay";
+};

I am confused why this isn't enabled by deafult but that's of course
not your fault

[...]


+&sdc2 {
+       pinctrl-0 = <&sdc2_default_state>;
+       pinctrl-1 = <&sdc2_sleep_state>;
+       pinctrl-names = "default", "sleep";
+
+       full-pwr-cycle;

Hm, is that something that comes from the controller itself? Should
we advertise it on other SoCs too?


It is observed that the boot firmware can leave an inserted SD card in a state that makes the first Linux enumeration fall back to 50 MHz high-speed mode. This property allows the MMC core to fully cycle the controllable card supply after voltage selection so UHS-I voltage switching succeeds reliably.

[...]

+
+       vmmc-supply = <&vreg_l9c>;
+       vqmmc-supply = <&vreg_l6c>;
+
+       cd-gpios = <&tlmm 131 GPIO_ACTIVE_LOW>;
+
+       status = "okay";
+};
+
+&sound {
+       compatible = "qcom,sc8280xp-sndcard";
+       model = "SC8280XP-Radxa-Dragon-Q8B";
+
+       audio-routing =
+               "IN1_HPHL", "HPHL_OUT",

Please don't break the line here, start right after the '='


Ack.

[...]

+       usb0_sbu_default: usb0-sbu-state {
+               oe-n-pins {
+                       pins = "gpio101";
+                       function = "gpio";
+                       bias-disable;
+                       drive-strength = <16>;
+                       output-high;

Drop the forced output state from both SBU pin states


Ack. Thank you for the review.

Konrad


--
Best regards,
Xilin Wu <[email protected]>

Reply via email to