From nobody Fri Apr 3 01:29:46 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2313F3EAC77; Wed, 11 Mar 2026 18:47:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773254826; cv=none; b=o8pgw0yJab6QKhuu51+h72KZJYZ/Q7go+AAvFQVXLYlJrsF7iw2sEGLp1Y7iVG78GyC3LqlO5Y7uT7R2MiDDVyRPmrWgzCK2a79RR77eK832sOEE/kB9/n8wzhCb+e+R8uKIewLlyPl2Bf4Lzp0a+yod7rwmI68+c0xUJ3JyDo0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773254826; c=relaxed/simple; bh=23ehR3e9GdT43vFDxfGchV095S8HkQ6dk0lxHCCc42o=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=IoLthA/xqHJ/5zi+wvQpG7E3LXOAdNQHKnj2JgaXYkH6IsgrWosdpfPDh1chNWsg9PA0vgNIgmkZcnyhAH8HyiuBJyRoyVu12OFM8Xtq+1Hknrt8cHmenLOODeph9yLCVxE1sF2IG4j/+U3KL9Mdt+4zT+ivY/vWmcq7IXFshQs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=nsIARa3U; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="nsIARa3U" Received: by smtp.kernel.org (Postfix) with ESMTPS id F260DC2BCB0; Wed, 11 Mar 2026 18:47:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773254826; bh=23ehR3e9GdT43vFDxfGchV095S8HkQ6dk0lxHCCc42o=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=nsIARa3U/K8XrZWPs7uGnQiqcR0LViChgv8EEkVZootDy2JYDJKrRhzjxKfok5wVp N2S0jkF9d2UKpD1e2VT95EuksPe+kTlp6vEMZGZ5XtQ8tq/HhhxUpnJYs+2CtNOPxC Hu0alQ3us18SBMl4Zs+9/qJoIpngRbJ2OFsYFzaQ1ij8A+VFOARk4Gl5JuVxkjVr+0 nK/6djcQ1Yx43O+N1E9+/QLcsovIoQncga30i5JGWRcLae27oROVu7IaITHY9t6QEk R6sUeQFUzPoWhcgpQMzyPZBYTw7oZrxQAFwLt78P7CsK/lgNVxm/cUFK1woMhRA/3x wrThs+owgYgEQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id E2D77112586A; Wed, 11 Mar 2026 18:47:05 +0000 (UTC) From: Paul Adam via B4 Relay Date: Wed, 11 Mar 2026 19:46:07 +0100 Subject: [PATCH v5 3/3] arm64: dts: qcom: msm8916-wiko-chuppito: add initial devicetree Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260311-wiko-chuppito-v5-3-0a8656cca1b3@posteo.de> References: <20260311-wiko-chuppito-v5-0-0a8656cca1b3@posteo.de> In-Reply-To: <20260311-wiko-chuppito-v5-0-0a8656cca1b3@posteo.de> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Bjorn Andersson , Konrad Dybcio Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, phone-devel@vger.kernel.org, Paul Adam X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773254823; l=7866; i=adamp@posteo.de; s=20260215; h=from:subject:message-id; bh=gUEGfocX6FZEAHCOkCMohPSEZtjQN06ZmSd94+6ahnk=; b=kfnCLSlI5njQRZIE9UxTpvCme8EbabTynGkX50nCJl4zNyRab51vWcakmjqQhcTfzPU3/hQbK zhfDCkzHloiC7MnV6D4oPd0QVXjQiYTgj57EsurMItY2OI3bSYrb+W0 X-Developer-Key: i=adamp@posteo.de; a=ed25519; pk=mtrPhSn7htywc4S5zrKNrWM6laAdfnaJzIs0BDiCyAs= X-Endpoint-Received: by B4 Relay for adamp@posteo.de/20260215 with auth_id=640 X-Original-From: Paul Adam Reply-To: adamp@posteo.de From: Paul Adam Add an initial device tree for Wiko PULP 4G. Includes support for: - UART - USB (no OTG) - Internal storage - MicroSD - Volume keys + Power button - Touchscreen - Backlight - Accelerometer: Invensense MPU6880 - Magnetometer: Asahi Kasei AK09911 - Hall sensor: Rohm BU52021HFV - Proximity sensor - Vibrator - Earpiece - Microphone 1 - Headphones - Wifi - Bluetooth - GPU Signed-off-by: Paul Adam Reviewed-by: Konrad Dybcio --- arch/arm64/boot/dts/qcom/Makefile | 1 + arch/arm64/boot/dts/qcom/msm8916-wiko-chuppito.dts | 314 +++++++++++++++++= ++++ 2 files changed, 315 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/M= akefile index f80b5d9cf1e8..5a3a9a823503 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -75,6 +75,7 @@ dtb-$(CONFIG_ARCH_QCOM) +=3D msm8916-samsung-rossa.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D msm8916-samsung-serranove.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D msm8916-thwc-uf896.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D msm8916-thwc-ufi001c.dtb +dtb-$(CONFIG_ARCH_QCOM) +=3D msm8916-wiko-chuppito.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D msm8916-wingtech-wt86518.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D msm8916-wingtech-wt86528.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D msm8916-wingtech-wt88047.dtb diff --git a/arch/arm64/boot/dts/qcom/msm8916-wiko-chuppito.dts b/arch/arm6= 4/boot/dts/qcom/msm8916-wiko-chuppito.dts new file mode 100644 index 000000000000..262d9a959e6a --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8916-wiko-chuppito.dts @@ -0,0 +1,314 @@ +// SPDX-License-Identifier: GPL-2.0-only + +/dts-v1/; + +#include "msm8916-pm8916.dtsi" +#include "msm8916-modem-qdsp6.dtsi" + +#include +#include +#include + +/ { + model =3D "Wiko Pulp 4G"; + compatible =3D "wiko,chuppito", "qcom,msm8916"; + chassis-type =3D "handset"; + + aliases { + mmc0 =3D &sdhc_1; /* eMMC */ + mmc1 =3D &sdhc_2; /* SD card */ + serial0 =3D &blsp_uart2; + }; + + chosen { + stdout-path =3D "serial0"; + }; + + backlight: backlight { + compatible =3D "pwm-backlight"; + pwms =3D <&pm8916_pwm 0 100000>; + brightness-levels =3D <0 255>; + num-interpolated-steps =3D <255>; + default-brightness-level =3D <255>; + enable-gpios =3D <&tlmm 119 GPIO_ACTIVE_HIGH>; + pinctrl-0 =3D <&button_backlight_default>; + pinctrl-names =3D "default"; + }; + + gpio-hall-sensor { + compatible =3D "gpio-keys"; + pinctrl-0 =3D <&gpio_hall_sensor_default>; + pinctrl-names =3D "default"; + label =3D "Hall Effect Sensor"; + + event-hall-sensor { + label =3D "Hall Effect Sensor"; + gpios =3D <&tlmm 117 GPIO_ACTIVE_LOW>; + linux,input-type =3D ; + linux,code =3D ; + linux,can-disable; + }; + }; + + gpio-keys { + compatible =3D "gpio-keys"; + pinctrl-0 =3D <&gpio_keys_default>; + pinctrl-names =3D "default"; + label =3D "Buttons"; + + button-volume-up { + label =3D "Volume up"; + gpios =3D <&tlmm 107 GPIO_ACTIVE_LOW>; + linux,code =3D ; + }; + }; + + usb_id: usb-id { + compatible =3D "linux,extcon-usb-gpio"; + id-gpios =3D <&tlmm 110 GPIO_ACTIVE_HIGH>; + pinctrl-0 =3D <&usb_id_default>; + pinctrl-names =3D "default"; + }; +}; + +&blsp_i2c2 { + status =3D "okay"; + + magnetometer@c { + compatible =3D "asahi-kasei,ak09911"; + reg =3D <0x0c>; + vdd-supply =3D <&pm8916_l17>; + vid-supply =3D <&pm8916_l6>; + reset-gpios =3D <&tlmm 120 GPIO_ACTIVE_LOW>; + pinctrl-0 =3D <&mag_reset_default>; + pinctrl-names =3D "default"; + mount-matrix =3D "1", "0", "0", + "0", "1", "0", + "0", "0", "1"; + }; + + proximity@48 { + compatible =3D "sensortek,stk3310"; + reg =3D <0x48>; + interrupts-extended =3D <&tlmm 113 IRQ_TYPE_EDGE_FALLING>; + pinctrl-0 =3D <&proximity_int_default>; + pinctrl-names =3D "default"; + }; + + imu@68 { + compatible =3D "invensense,mpu6880"; + reg =3D <0x68>; + interrupts-extended =3D <&tlmm 115 IRQ_TYPE_EDGE_FALLING>; + vdd-supply =3D <&pm8916_l17>; + vddio-supply =3D <&pm8916_l6>; + pinctrl-0 =3D <&imu_int_default>; + pinctrl-names =3D "default"; + mount-matrix =3D "0", "-1", "0", + "-1", "0", "0", + "0", "0", "-1"; + }; +}; + +&blsp_i2c5 { + status =3D "okay"; + + touchscreen@39 { + compatible =3D "syna,rmi4-i2c"; + reg =3D <0x39>; + interrupts-extended =3D <&tlmm 13 IRQ_TYPE_EDGE_FALLING>; + vdd-supply =3D <&pm8916_l17>; + vio-supply =3D <&pm8916_l6>; + pinctrl-0 =3D <&touchscreen_default>; + pinctrl-names =3D "default"; + #address-cells =3D <1>; + #size-cells =3D <0>; + syna,startup-delay-ms =3D <100>; + syna,reset-delay-ms =3D <160>; + + rmi4-f01@1 { + reg =3D <0x1>; + syna,nosleep-mode =3D <1>; + }; + + rmi4-f11@11 { + reg =3D <0x11>; + syna,sensor-type =3D <1>; + }; + }; +}; + +&blsp_uart2 { + status =3D "okay"; +}; + +&gpu { + status =3D "okay"; +}; + +&mdss { + status =3D "okay"; +}; + +&mpss_mem { + reg =3D <0x0 0x86800000 0x0 0x5600000>; +}; + +&pm8916_codec { + qcom,hphl-jack-type-normally-open; +}; + +&pm8916_mpps { + pwm_out: mpp4-state { + pins =3D "mpp4"; + function =3D "digital"; + power-source =3D ; + output-low; + qcom,dtest =3D <1>; + }; +}; + +&pm8916_pwm { + pinctrl-0 =3D <&pwm_out>; + pinctrl-names =3D "default"; + + status =3D "okay"; +}; + +&pm8916_resin { + linux,code =3D ; + + status =3D "okay"; +}; + +&pm8916_rpm_regulators { + pm8916_l17: l17 { + regulator-min-microvolt =3D <2850000>; + regulator-max-microvolt =3D <2850000>; + }; +}; + +&pm8916_vib { + status =3D "okay"; +}; + +&sdhc_1 { + status =3D "okay"; +}; + +&sdhc_2 { + pinctrl-0 =3D <&sdc2_default>, <&sdc2_cd_default>; + pinctrl-1 =3D <&sdc2_sleep>, <&sdc2_cd_default>; + pinctrl-names =3D "default", "sleep"; + cd-gpios =3D <&tlmm 38 GPIO_ACTIVE_HIGH>; + + status =3D "okay"; +}; + +&sound { + audio-routing =3D "AMIC1", "MIC BIAS Internal1", + "AMIC2", "MIC BIAS Internal2"; +}; + +&tlmm { + button_backlight_default: button-backlight-default-state { + pins =3D "gpio119"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-disable; + }; + + gpio_hall_sensor_default: gpio-hall-sensor-default-state { + pins =3D "gpio117"; + function =3D "gpio"; + drive-strength =3D <6>; + bias-pull-up; + }; + + gpio_keys_default: gpio-keys-default-state { + pins =3D "gpio107"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-up; + }; + + imu_int_default: imu-int-default-state { + pins =3D "gpio115"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-disable; + }; + + mag_reset_default: mag-reset-default-state { + pins =3D "gpio120"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-disable; + }; + + proximity_int_default: proximity-int-default-state { + pins =3D "gpio113"; + function =3D "gpio"; + drive-strength =3D <6>; + bias-pull-up; + }; + + sdc2_cd_default: sdc2-cd-default-state { + pins =3D "gpio38"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-disable; + }; + + touchscreen_default: touchscreen-default-state { + touchscreen-pins { + pins =3D "gpio13"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-up; + }; + + reset-pins { + pins =3D "gpio12"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-disable; + }; + }; + + usb_id_default: usb-id-default-state { + pins =3D "gpio110"; + function =3D "gpio"; + drive-strength =3D <8>; + bias-pull-up; + }; +}; + +&usb { + extcon =3D <&usb_id>, <&usb_id>; + + status =3D "okay"; +}; + +&usb_hs_phy { + extcon =3D <&usb_id>; +}; + +&venus { + status =3D "okay"; +}; + +&venus_mem { + status =3D "okay"; +}; + +&wcnss { + status =3D "okay"; +}; + +&wcnss_iris { + compatible =3D "qcom,wcn3620"; +}; + +&wcnss_mem { + status =3D "okay"; +}; --=20 2.53.0