Re: [PATCH v4] ARM: dts: nexus4: Initial dts
From: Dmitry Baryshkov
Date: Tue Mar 11 2025 - 12:32:07 EST
On Tue, Mar 11, 2025 at 05:10:02PM +0100, David Heidelberg via B4 Relay wrote:
> From: Ivan Belokobylskiy <belokobylskij@xxxxxxxxx>
>
> Add initial support for LG Nexus 4 (mako).
>
> Features currently working: regulators, eMMC, and volume keys.
>
> Signed-off-by: Ivan Belokobylskiy <belokobylskij@xxxxxxxxx>
> Co-developed-by: David Heidelberg <david@xxxxxxx>
> Signed-off-by: David Heidelberg <david@xxxxxxx>
> ---
> Changes in v4:
> - Sorted regulators and added regulators compatible.
> - Corrected pmic include and references.
> - Moved &rpm outside of / node.
> - Moved and simplify pm8921 keypad.
> - Added chasis-type.
> - Dropped incomplete WiFi node, will be provided in future
> contributions.
> - Link to v3: https://lore.kernel.org/r/20250309-lg-nexus4-mako-v3-1-1dc2807df296@xxxxxxx
>
> Changes in v3:
> - rebased against next-20250307
> - dropped backlight until driver gets converted to DT
>
> Changes in v2:
> - lge vendor doesn't exist anymore, rename to lg
> - sdcc@ to mmc@ to comply with dt-schema
> ---
> arch/arm/boot/dts/qcom/Makefile | 1 +
> .../boot/dts/qcom/qcom-apq8064-lg-nexus4-mako.dts | 344 +++++++++++++++++++++
> 2 files changed, 345 insertions(+)
>
> diff --git a/arch/arm/boot/dts/qcom/Makefile b/arch/arm/boot/dts/qcom/Makefile
> index f06c6d425e91dd73c2b453d15543d95bd32383b9..0c1d116f6e84f76994aa8c8286350bdcd1657a42 100644
> --- a/arch/arm/boot/dts/qcom/Makefile
> +++ b/arch/arm/boot/dts/qcom/Makefile
> @@ -12,6 +12,7 @@ dtb-$(CONFIG_ARCH_QCOM) += \
> qcom-apq8064-ifc6410.dtb \
> qcom-apq8064-sony-xperia-lagan-yuga.dtb \
> qcom-apq8064-asus-nexus7-flo.dtb \
> + qcom-apq8064-lg-nexus4-mako.dtb \
> qcom-apq8074-dragonboard.dtb \
> qcom-apq8084-ifc6540.dtb \
> qcom-apq8084-mtp.dtb \
> diff --git a/arch/arm/boot/dts/qcom/qcom-apq8064-lg-nexus4-mako.dts b/arch/arm/boot/dts/qcom/qcom-apq8064-lg-nexus4-mako.dts
> new file mode 100644
> index 0000000000000000000000000000000000000000..51edd661e4bd903a32445d15955585a194574f30
> --- /dev/null
> +++ b/arch/arm/boot/dts/qcom/qcom-apq8064-lg-nexus4-mako.dts
> @@ -0,0 +1,344 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/input/input.h>
> +#include <dt-bindings/mfd/qcom-rpm.h>
> +#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
> +
> +#include "qcom-apq8064-v2.0.dtsi"
> +#include "pm8821.dtsi"
> +#include "pm8921.dtsi"
> +
> +/ {
> + model = "LG Nexus 4 (mako)";
> + compatible = "lg,nexus4-mako", "qcom,apq8064";
> + chassis-type = "handset";
> +
> + aliases {
> + serial0 = &gsbi7_serial;
> + serial1 = &gsbi6_serial;
> + serial2 = &gsbi4_serial;
> + };
> +
> + chosen {
> + stdout-path = "serial2:115200n8";
> + };
> +
> + reserved-memory {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges;
> +
> + ramoops@88d00000{
> + compatible = "ramoops";
> + reg = <0x88d00000 0x100000>;
> + record-size = <0x20000>;
> + console-size = <0x20000>;
> + ftrace-size = <0x20000>;
> + };
> + };
> +
> + battery_cell: battery-cell {
> + compatible = "simple-battery";
> + constant-charge-current-max-microamp = <900000>;
> + operating-range-celsius = <0 45>;
> + };
Ideally this should also be sorted, although I don't feel like putting
it before /chosen/.
> +};
> +
> +&rpm {
Please sort nodes alphabetically. &rpm definitely comes after &gsbi1.
> + regulators {
[...]
> +};
> +
> +&gsbi1 {
> + qcom,mode = <GSBI_PROT_I2C>;
> +
> + status = "okay";
> +};
> +
> +&gsbi1_i2c {
> + clock-frequency = <200000>;
> +
> + status = "okay";
> +};
> +
> +&gsbi4 {
> + qcom,mode = <GSBI_PROT_I2C_UART>;
> +
> + status = "okay";
> +};
> +
> +&gsbi4_serial {
> + status = "okay";
> +};
> +
> +&pm8821 {
> + interrupts-extended = <&tlmm_pinmux 76 IRQ_TYPE_LEVEL_LOW>;
> +};
> +
> +&pm8921 {
> + interrupts-extended = <&tlmm_pinmux 74 IRQ_TYPE_LEVEL_LOW>;
> +};
> +
> +&pm8921_keypad {
> + linux,keymap = <
> + MATRIX_KEY(0, 0, KEY_VOLUMEDOWN)
> + MATRIX_KEY(0, 1, KEY_VOLUMEUP)
> + >;
> +
> + keypad,num-rows = <1>;
> + keypad,num-columns = <5>;
> +
> + status = "okay";
> +};
> +
> +
> +/* eMMC */
> +&sdcc1 {
> + vmmc-supply = <&pm8921_l5>;
> + vqmmc-supply = <&pm8921_s4>;
> +
> + status = "okay";
> +};
>
> ---
> base-commit: 0a2f889128969dab41861b6e40111aa03dc57014
> change-id: 20250309-lg-nexus4-mako-da0833885b26
>
> Best regards,
> --
> David Heidelberg <david@xxxxxxx>
>
>
--
With best wishes
Dmitry