Re: [PATCH] arm64: dts: qcom: add initial device-tree for Microsoft Surface Duo

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon 10 May 07:05 CDT 2021, Felipe Balbi wrote:

> From: Felipe Balbi <felipe.balbi@xxxxxxxxxxxxx>
> 
> Microsoft Surface Duo is based on SM8150 chipset. This new Device Tree
> is a copy of sm8150-mtp with a the addition of the volume up key and
> relevant i2c nodes.
> 

This is really nice to see. Some comments below.

[..]
> diff --git a/arch/arm64/boot/dts/qcom/sm8150-microsoft-surface-duo.dts b/arch/arm64/boot/dts/qcom/sm8150-microsoft-surface-duo.dts
> new file mode 100644
> index 000000000000..f53d4b3dd482
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sm8150-microsoft-surface-duo.dts
> @@ -0,0 +1,545 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (C) 2021, Microsoft Corporation
> + */
> +
> +/dts-v1/;
> +
> +#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
> +#include <dt-bindings/gpio/gpio.h>
> +#include "sm8150.dtsi"
> +#include "pm8150.dtsi"
> +#include "pm8150b.dtsi"
> +#include "pm8150l.dtsi"
> +
> +/ {
> +	model = "Microsoft Surface Duo";
> +	compatible = "microsoft,surface-duo", "qcom,sm8150-mtp";
> +
> +	aliases {
> +		serial0 = &uart2;
> +	};
> +
> +	chosen {
> +		stdout-path = "serial0:115200n8";
> +	};
> +
> +	vph_pwr: vph-pwr-regulator {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vph_pwr";
> +		regulator-min-microvolt = <3700000>;
> +		regulator-max-microvolt = <3700000>;
> +	};
> +
> +	/*
> +	 * Apparently RPMh does not provide support for PM8150 S4 because it
> +	 * is always-on; model it as a fixed regulator.
> +	 */
> +	vreg_s4a_1p8: pm8150-s4 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vreg_s4a_1p8";
> +
> +		regulator-min-microvolt = <1800000>;
> +		regulator-max-microvolt = <1800000>;
> +
> +		regulator-always-on;
> +		regulator-boot-on;
> +
> +		vin-supply = <&vph_pwr>;
> +	};
> +
> +	gpio_keys {
> +		compatible = "gpio-keys";
> +
> +		vol_up {
> +			label = "Volume Up";
> +			gpios = <&pm8150_gpios 6 GPIO_ACTIVE_LOW>;
> +			linux,code = <KEY_VOLUMEUP>;
> +		};
> +	};
> +};
> +
> +&tlmm {

Please sort all nodes alphabetically.

> +	da7280_intr_default: da7280-intr-default {
> +		pins = "gpio42";
> +		function = "gpio";
> +		bias-pull-up;
> +		input-enable;
> +	};
> +};
[..]
> +&remoteproc_adsp {
> +	status = "okay";
> +	firmware-name = "qcom/sm8150/adsp.mdt";

For platforms where we have a Dragonboard or similar we push the
test-signed firmware to qcom/<platform>/. I presume that the Duo
wouldn't run on the test-signed firmware.

So I think it's better to make this qcom/sm8150/ms-duo/adsp.mdt...from
the start.

> +};
> +
> +&remoteproc_cdsp {
> +	status = "okay";
> +	firmware-name = "qcom/sm8150/cdsp.mdt";
> +};
> +
> +&remoteproc_mpss {
> +	status = "okay";
> +	firmware-name = "qcom/sm8150/modem.mdt";
> +};
> +
> +&remoteproc_slpi {
> +	status = "okay";
> +	firmware-name = "qcom/sm8150/slpi.mdt";
> +};

Regards,
Bjorn



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux