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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.