mbox series

[v2,0/3] Introduce msm8916/39 based Lenovo devices

Message ID 20240722-msm89xx-wingtech-init-v2-0-0c981bbc5238@trvn.ru
Headers show
Series Introduce msm8916/39 based Lenovo devices | expand

Message

Nikita Travkin July 22, 2024, 12:47 p.m. UTC
Continuing the work of upstreaming the various msm8916 devices from the
backlog, this series introduces few 8916 and 8939 Lenovo/Wingtech
devices (where Wingtech is the ODM for these designs).

Included devices are:

- Lenovo A6000 (Wingtech WT86518)
- Lenovo A6010 (Wingtech WT86528)
- Lenovo Vibe K5 (Wingtech WT82918)
- Lenovo Vibe K5 (HD) (Wingtech WT82918hd)

Note that "HD" variant of K5 is based on msm8929 which is a lower bin
of msm8939 SoC. A simple dtsi is added for this soc along with the new
devices.

Signed-off-by: Nikita Travkin <nikita@trvn.ru>
---
Changes in v2:
- Reorder pinctrl properties (Konrad)
- Convert msm8929.dtsi to be more in line with other soc dtsi (Krzysztof, Dmitry)
- Link to v1: https://lore.kernel.org/r/20240712-msm89xx-wingtech-init-v1-0-64f4aa1870bd@trvn.ru

---
Adam Słaboń (1):
      arm64: dts: qcom: msm8939-wingtech-wt82918: Add Lenovo Vibe K5 devices

Anton Bambura (1):
      arm64: dts: qcom: msm8916-wingtech-wt865x8: Add Lenovo A6000/A6010

Nikita Travkin (1):
      dt-bindings: arm: qcom: Add msm8916/39 based Lenovo devices

 Documentation/devicetree/bindings/arm/qcom.yaml    |   9 +
 arch/arm64/boot/dts/qcom/Makefile                  |   5 +
 .../boot/dts/qcom/msm8916-wingtech-wt86518.dts     |  89 ++++++++
 .../boot/dts/qcom/msm8916-wingtech-wt86528.dts     | 160 +++++++++++++
 .../boot/dts/qcom/msm8916-wingtech-wt865x8.dtsi    | 215 ++++++++++++++++++
 arch/arm64/boot/dts/qcom/msm8929-pm8916.dtsi       | 162 +++++++++++++
 .../boot/dts/qcom/msm8929-wingtech-wt82918hd.dts   |  17 ++
 arch/arm64/boot/dts/qcom/msm8929.dtsi              |   7 +
 .../boot/dts/qcom/msm8939-wingtech-wt82918.dts     |  17 ++
 .../boot/dts/qcom/msm8939-wingtech-wt82918.dtsi    | 252 +++++++++++++++++++++
 .../boot/dts/qcom/msm8939-wingtech-wt82918hd.dts   |  17 ++
 11 files changed, 950 insertions(+)
---
base-commit: dee7f101b64219f512bb2f842227bd04c14efe30
change-id: 20240710-msm89xx-wingtech-init-e07095e2b2ec

Best regards,

Comments

Konrad Dybcio July 23, 2024, 11:24 a.m. UTC | #1
On 22.07.2024 2:47 PM, Nikita Travkin wrote:
> From: Anton Bambura <jenneron@postmarketos.org>
> 
> Add initial device-tree for Lenovo A6000 (wt86518) and Lenovo A6010
> (wt86528), which are MSM8916-based devices. These devices are quite
> similar, so some configuration is shared in msm8916-wingtech-wt865x8.dtsi.

[...]


> +/ {
> +	model = "Lenovo A6000 (Wingtech WT86518)";
> +	compatible = "wingtech,wt86518", "qcom,msm8916";
> +	chassis-type = "handset";
> +
> +	speaker_amp: audio-amplifier {
> +		compatible = "awinic,aw8738";
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&spk_ext_pa_default>;

flip

[...]

> +&sound {
> +	model = "wt88047";
> +	widgets =
> +		"Speaker", "Speaker",
> +		"Headphone", "Headphones";

Please don't start a new line for this (same below)

> +	pin-switches = "Speaker", "Headphones";
> +	audio-routing =
> +		"Speaker", "Speaker Amp OUT",
> +		"Speaker Amp IN", "HPH_R",

[...]

> +	/* left AW8736 */
> +	speaker_amp_left: audio-amplifier-left {
> +		compatible = "awinic,aw8738";

Should this get a new compatible (with a fallback if sw-compatible)?

> +
> +		pinctrl-0 = <&spk_ext_pa_left_default>;
> +		pinctrl-names = "default";
> +
> +		mode-gpios = <&tlmm 119 GPIO_ACTIVE_HIGH>;
> +		sound-name-prefix = "Speaker Amp L";
> +		awinic,mode = <3>;
> +	};
> +
> +	/* right AW8736 */
> +	speaker_amp_right: audio-amplifier-right {
> +		compatible = "awinic,aw8738";

ditto

Konrad
Nikita Travkin July 23, 2024, 3:25 p.m. UTC | #2
Konrad Dybcio писал(а) 23.07.2024 16:24:
> On 22.07.2024 2:47 PM, Nikita Travkin wrote:
>> From: Anton Bambura <jenneron@postmarketos.org>
>>
>> Add initial device-tree for Lenovo A6000 (wt86518) and Lenovo A6010
>> (wt86528), which are MSM8916-based devices. These devices are quite
>> similar, so some configuration is shared in msm8916-wingtech-wt865x8.dtsi.
> 
> [...]
> 
> 
>> +/ {
>> +	model = "Lenovo A6000 (Wingtech WT86518)";
>> +	compatible = "wingtech,wt86518", "qcom,msm8916";
>> +	chassis-type = "handset";
>> +
>> +	speaker_amp: audio-amplifier {
>> +		compatible = "awinic,aw8738";
>> +
>> +		pinctrl-names = "default";
>> +		pinctrl-0 = <&spk_ext_pa_default>;
> 
> flip

Oops, missed this one, will fix.

> 
> [...]
> 
>> +&sound {
>> +	model = "wt88047";
>> +	widgets =
>> +		"Speaker", "Speaker",
>> +		"Headphone", "Headphones";
> 
> Please don't start a new line for this (same below)
> 

Ack, will re-align.

>> +	pin-switches = "Speaker", "Headphones";
>> +	audio-routing =
>> +		"Speaker", "Speaker Amp OUT",
>> +		"Speaker Amp IN", "HPH_R",
> 
> [...]
> 
>> +	/* left AW8736 */
>> +	speaker_amp_left: audio-amplifier-left {
>> +		compatible = "awinic,aw8738";
> 
> Should this get a new compatible (with a fallback if sw-compatible)?
> 

Per my understanding those two are supposed to be effectively same
chip, not sure if there is any point in adding a new compatible/fallback
in this case... 

Thanks for looking at this!
Nikita

>> +
>> +		pinctrl-0 = <&spk_ext_pa_left_default>;
>> +		pinctrl-names = "default";
>> +
>> +		mode-gpios = <&tlmm 119 GPIO_ACTIVE_HIGH>;
>> +		sound-name-prefix = "Speaker Amp L";
>> +		awinic,mode = <3>;
>> +	};
>> +
>> +	/* right AW8736 */
>> +	speaker_amp_right: audio-amplifier-right {
>> +		compatible = "awinic,aw8738";
> 
> ditto
> 
> Konrad