From: Kaipeng Zeng <kaipeng94@gmail.com>
To: devicetree@vger.kernel.org
Cc: linux-arm-msm@vger.kernel.org, conor+dt@kernel.org,
krzk+dt@kernel.org, robh@kernel.org, abelvesa@kernel.org,
konradybcio@kernel.org, andersson@kernel.org,
Kaipeng Zeng <kaipeng94@gmail.com>
Subject: [PATCH v5 0/2] Add device tree for Acer Swift Go Pro AI (SFA14-11)
Date: Sat, 24 Oct 2026 02:05:11 +0800 [thread overview]
Message-ID: <20261023180513.36417-1-kaipeng94@gmail.com> (raw)
The work started with x1-crd.dtsi as initial template.
HDMI refers to ThinkPad T14s.
Bluetooth refers to x1-crd.dtsi from the ubuntu-concept kernel [1].
PWM brightness control refers to Ratizux's GitHub repository [2].
Tested on linux-next (next-20261021: 9a482184) / Ubuntu 26.04 LTS.
Tested and working devices:
- NVMe
- Keyboard & Touchpad
- USB Type-A, Type-C
- Battery & charging status
- Internal display & Backlight brightness control
- HDMI & Type-C display (with audio)
- Bluetooth & Wi-Fi
- Webcam (usb_2)
- GPU
- Audio: speaker (partial), mic, headphone.
Known issues:
- Four internal speakers are detected, but only three work. I use Ratizux's tplg [3] and
alsa configuration [4] on my desktop. I also use amixer & speaker-test to verify them.
- EL2-mode:
- EL2-mode can only work with kernel parameter: "iommu.passthrough=1".
- Audio and Battery status are broken under EL2 mode.
- Bluetooth is broken under EL2 mode.
Also, some notes about eusb*_repeater and EC; hopefully, this can help others understand
why I configured these nodes this way:
- eusb*_repeater conflict between the DSDT and my testing:
By using `i2ctransfer` to sequentially set the modes of 'eusb3/5/6_repeater', I can
observe the corresponding connection or disconnection state changes for the
right-side USB-A port ('usb_mp_hsphy0'), the left-side USB-A port ('usb_mp_hsphy1'),
and the webcam ('usb_2'). Using `gpioset`, it can be verified that 'eusb6_repeater'
is affected by tlmm's GPIO 184, while setting GPIO 6/7 has no effect. And webcam
can be shut down and reset by toggling GPIO 184. The DSDT places GPIO 6/184 as a
'ResourceTemplate' under 'USB3'(usb_mp), GPIO 7 under USB4(usb_2), and webcam is
under USB4. This conflicts with my testing. So, I didn't add the unverified GPIO,
and the connection between USB and repeater follows my testing rather than DSDT.
- There is an EC device under i2c5 at address 0x76, with driver probe failed.
But using i2ctransfer I can observe some data changes related to fan.
The EC driver appears to require additional work, and it couldn't be included in
this patch. So, I didn't add that node.
[1] https://git.launchpad.net/~ubuntu-concept/ubuntu/+source/linux/+git/resolute
[2] https://github.com/Ratizux/linux-device-acer-sfa14-11.git
[3] https://github.com/Ratizux/audioreach-topology/
[4] https://github.com/Ratizux/alsa-ucm-conf
---
Changelog:
V5:
- Rebase to next-20261021, pick up the following upstream changes:
arm64: dts: qcom: x1-crd: Mark the EC reset gpio as reserved (099cd579).
arm64: dts: qcom: hamoa/purwa: Add QREF regulator supplies (d9d07e23).
arm64: dts: qcom: hamoa: Fix swapped USB QMP PHY vdda-phy/vdda-pll supplies (4458dcd3).
- Add 'eusb*_repeater'. (Jianfeng Liu)
- Add 'displayport-2-dai-link'. (Jianfeng Liu)
- Remove 'usb_1_ss1' and 'mdss_dp1'. (Jianfeng Liu)
- Remove unused 'audio-routing'. (Jianfeng Liu)
- Remove 'kypd_vol_up_n'. (Jianfeng Liu)
V4:
- Add -el2-dtbs. (Sashiko)
- The "audio-routing" of "sound" is from x1-crd.dtsi, audio doesn't totally work,
and I didn't see any improvements when I followed Sashiko's advice,
so I just kept it the same as x1-crd.dtsi. (Sashiko)
- Tested in EL2 mode:
Successfully boots with the kernel parameter: "iommu.passthrough=1",
The above features work as in EL1 mode except battery status.
- Fix missing newline before "wsa-dai-link". (Val Packett)
- Link to V4: https://lore.kernel.org/linux-devicetree/20261006085425.40450-1-kaipeng94@gmail.com/
V3:
- Re-sort *-link and its sub-nodes. (Konrad Dybcio)
- Keep a '\n' before 'status'. (Konrad Dybcio)
- Remove 'output-low' from wcd_default. (Konrad Dybcio)
- Link to V3: https://lore.kernel.org/linux-devicetree/20260729064538.19564-1-kaipeng94@gmail.com/
V2:
- Fix Makefile entry ordering. (Krzysztof Kozlowski)
- Use readable compatible string. (Krzysztof Kozlowski)
- Fix sound card model name for this device. (Krzysztof Kozlowski & Konrad Dybcio)
- Re-sort nodes, pinctrl-*. (Krzysztof Kozlowski & Konrad Dybcio)
- Remove those regulators without consumer and lack of a required value in DSDT. (Konrad Dybcio)
- Remove ADSP/CDSP fastrpc memory. (Konrad Dybcio)
- Add iris firmware path. (Konrad Dybcio)
- Delete usb_1_ss1_qmpphy/usb_1_ss2_qmpphy properties of Type-C. (Sashiko)
- Delete usb_1_ss2_hsphy. (Sashiko)
- Remove unused pmic-glink orientation-gpio. (Sashiko)
- Remove node related to WWAN.
- The Webcam is a USB device, can be probed without any additional
node. (Sashiko)
- Using reset-gpios in swr* seems common in X1E devices, like Lenovo
Yoga Slim7x, ThinkPad t14s and Microsoft Romulus.
Because speakers do not completely work and I could not see any
effect of changing it, just retain it. (Sashiko)
- Also, the HDMI audio is the same reason as above. (Sashiko)
- Link to V2: https://lore.kernel.org/linux-devicetree/20260721082410.18275-1-kaipeng94@gmail.com/
- Link to V1: https://lore.kernel.org/linux-devicetree/20260702063156.35169-1-kaipeng94@gmail.com/
Kaipeng Zeng (2):
dt-bindings: arm: qcom: Add Acer Swift Go Pro AI (SFA14-11)
arm64: dts: qcom: Add support for Acer Swift Go Pro AI (SFA14-11)
.../devicetree/bindings/arm/qcom.yaml | 1 +
arch/arm64/boot/dts/qcom/Makefile | 2 +
.../boot/dts/qcom/x1e78100-acer-sfa14-11.dts | 1541 +++++++++++++++++
3 files changed, 1544 insertions(+)
create mode 100644 arch/arm64/boot/dts/qcom/x1e78100-acer-sfa14-11.dts
base-commit: 9a482184d910775cf648863148944945b74e2815
--
2.53.0
next reply other threads:[~2026-10-23 18:07 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-23 18:05 Kaipeng Zeng [this message]
2026-10-23 18:05 ` [PATCH v5 1/2] dt-bindings: arm: qcom: Add Acer Swift Go Pro AI (SFA14-11) Kaipeng Zeng
2026-10-23 18:05 ` [PATCH v5 2/2] arm64: dts: qcom: Add support for " Kaipeng Zeng
2026-10-23 18:33 ` sashiko-bot
2026-10-24 7:33 ` [PATCH v5 0/2] Add device tree " Jianfeng Liu
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=20261023180513.36417-1-kaipeng94@gmail.com \
--to=kaipeng94@gmail.com \
--cc=abelvesa@kernel.org \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--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