mbox series

[v1,0/3] X1E Dell XPS 9345 support

Message ID 20240919170018.13672-1-alex.vinarskis@gmail.com (mailing list archive)
Headers show
Series X1E Dell XPS 9345 support | expand

Message

Aleksandrs Vinarskis Sept. 19, 2024, 4:59 p.m. UTC
Introduce support for the mentioned laptop.

Very similar to other X1E laptops, device tree was derived by analyzing dtsi of
existing models and ACPI tables of this laptop [1]. Most notable difference were
* TZ protected SPI19.
* Keyboard only working after suspend/resume sequence, will do a follow up patch
to i2c-hid.
* Lots of small deviations in LDOs voltages.

Successfully tested with Debian 12 and Gnome, although this required additional
patches, namely harcode GPU chipid, apply [2] and _revert_ [3] - same as in Abel
Vesa's branches. Without last two the boot process is terminated by TZ. Firmware
for GPU/aDSP/cDSP was extracted from Windows, WiFi firmware from upstream
linux-firmware.

Quite a few things alraedy work, details in patches, quite a few still in WIP or
TODOs. Since fixing these may take me a while due to lack of documentation,
sending current progress as its very much usable.

[1] https://github.com/aarch64-laptops/build/blob/master/misc/dell-xps-9345/acpi/DSDT.dsl
[2] https://lore.kernel.org/all/20240830-x1e80100-bypass-pdc-v1-1-d4c00be0c3e3@linaro.org/
[3] https://lore.kernel.org/all/20240708-x1e80100-pd-mapper-v1-1-854386af4cf5@linaro.org/

Aleksandrs Vinarskis (3):
  dt-bindings: arm: qcom: Add Dell XPS 13 9345
  firmware: qcom: scm: Allow QSEECOM on Dell XPS 13 9345
  arm64: dts: qcom: Add support for X1-based Dell XPS 13 9345

 .../devicetree/bindings/arm/qcom.yaml         |   1 +
 arch/arm64/boot/dts/qcom/Makefile             |   1 +
 .../dts/qcom/x1e80100-dell-tributo-13.dts     | 860 ++++++++++++++++++
 drivers/firmware/qcom/qcom_scm.c              |   1 +
 4 files changed, 863 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/x1e80100-dell-tributo-13.dts

Comments

Rob Herring (Arm) Sept. 19, 2024, 6:18 p.m. UTC | #1
On Thu, 19 Sep 2024 18:59:31 +0200, Aleksandrs Vinarskis wrote:
> Introduce support for the mentioned laptop.
> 
> Very similar to other X1E laptops, device tree was derived by analyzing dtsi of
> existing models and ACPI tables of this laptop [1]. Most notable difference were
> * TZ protected SPI19.
> * Keyboard only working after suspend/resume sequence, will do a follow up patch
> to i2c-hid.
> * Lots of small deviations in LDOs voltages.
> 
> Successfully tested with Debian 12 and Gnome, although this required additional
> patches, namely harcode GPU chipid, apply [2] and _revert_ [3] - same as in Abel
> Vesa's branches. Without last two the boot process is terminated by TZ. Firmware
> for GPU/aDSP/cDSP was extracted from Windows, WiFi firmware from upstream
> linux-firmware.
> 
> Quite a few things alraedy work, details in patches, quite a few still in WIP or
> TODOs. Since fixing these may take me a while due to lack of documentation,
> sending current progress as its very much usable.
> 
> [1] https://github.com/aarch64-laptops/build/blob/master/misc/dell-xps-9345/acpi/DSDT.dsl
> [2] https://lore.kernel.org/all/20240830-x1e80100-bypass-pdc-v1-1-d4c00be0c3e3@linaro.org/
> [3] https://lore.kernel.org/all/20240708-x1e80100-pd-mapper-v1-1-854386af4cf5@linaro.org/
> 
> Aleksandrs Vinarskis (3):
>   dt-bindings: arm: qcom: Add Dell XPS 13 9345
>   firmware: qcom: scm: Allow QSEECOM on Dell XPS 13 9345
>   arm64: dts: qcom: Add support for X1-based Dell XPS 13 9345
> 
>  .../devicetree/bindings/arm/qcom.yaml         |   1 +
>  arch/arm64/boot/dts/qcom/Makefile             |   1 +
>  .../dts/qcom/x1e80100-dell-tributo-13.dts     | 860 ++++++++++++++++++
>  drivers/firmware/qcom/qcom_scm.c              |   1 +
>  4 files changed, 863 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/qcom/x1e80100-dell-tributo-13.dts
> 
> --
> 2.43.0
> 
> 
> 


My bot found new DTB warnings on the .dts files added or changed in this
series.

Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.

If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:

  pip3 install dtschema --upgrade


New warnings running 'make CHECK_DTBS=y qcom/x1e80100-dell-tributo-13.dtb' for 20240919170018.13672-1-alex.vinarskis@gmail.com:

arch/arm64/boot/dts/qcom/x1e80100-dell-tributo-13.dtb: domain-idle-states: cluster-sleep-0: 'idle-state-name' does not match any of the regexes: 'pinctrl-[0-9]+'
	from schema $id: http://devicetree.org/schemas/power/domain-idle-state.yaml#
arch/arm64/boot/dts/qcom/x1e80100-dell-tributo-13.dtb: domain-idle-states: cluster-sleep-1: 'idle-state-name' does not match any of the regexes: 'pinctrl-[0-9]+'
	from schema $id: http://devicetree.org/schemas/power/domain-idle-state.yaml#
arch/arm64/boot/dts/qcom/x1e80100-dell-tributo-13.dtb: usb@a2f8800: interrupt-names: ['pwr_event', 'dp_hs_phy_irq', 'dm_hs_phy_irq'] is too short
	from schema $id: http://devicetree.org/schemas/usb/qcom,dwc3.yaml#