mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-30 22:50:54 -04:00
arm64: dts: qcom: msm8916-samsung-a2015: Add vibrator
Both a2015 devices use motor drivers controlled with PWM signal. A5 additionally has a fixed regulator that powers the driver and is controlled by enable signal. A3 routes that enable signal to the motor driver itself. To simplify the description, add the motor to the common dtsi and assume a regulator is used for both. Signed-off-by: Nikita Travkin <nikita@trvn.ru> [Rename the nodes to be reusable in msm8916-sansung-e2015] Signed-off-by: Lin, Meng-Bo <linmengbo0689@protonmail.com> Signed-off-by: Bjorn Andersson <andersson@kernel.org> Link: https://lore.kernel.org/r/20221020115255.2026-1-linmengbo0689@protonmail.com
This commit is contained in:
committed by
Bjorn Andersson
parent
aab0dd5cf1
commit
5ffe618764
@@ -23,6 +23,17 @@ tz-apps@85500000 {
|
||||
};
|
||||
};
|
||||
|
||||
clk_pwm: pwm {
|
||||
compatible = "clk-pwm";
|
||||
#pwm-cells = <2>;
|
||||
|
||||
clocks = <&gcc GCC_GP2_CLK>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&motor_pwm_default>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
@@ -61,6 +72,24 @@ event-hall-sensor {
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* NOTE: A5 connects GPIO 76 to a reglator powering the motor
|
||||
* driver IC but A3 connects the same signal to an ENABLE pin of
|
||||
* the driver.
|
||||
*/
|
||||
reg_motor_vdd: regulator-motor-vdd {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "motor_vdd";
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
|
||||
gpio = <&msmgpio 76 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&motor_en_default>;
|
||||
};
|
||||
|
||||
reg_vdd_tsp_a: regulator-vdd-tsp-a {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vdd_tsp_a";
|
||||
@@ -153,6 +182,16 @@ nfc@27 {
|
||||
pinctrl-0 = <&nfc_default &nfc_clk_req>;
|
||||
};
|
||||
};
|
||||
|
||||
vibrator: vibrator {
|
||||
compatible = "pwm-vibrator";
|
||||
|
||||
pwms = <&clk_pwm 0 100000>;
|
||||
pwm-names = "enable";
|
||||
|
||||
vcc-supply = <®_motor_vdd>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
&blsp_i2c2 {
|
||||
@@ -397,6 +436,19 @@ mdss_sleep: mdss-sleep {
|
||||
};
|
||||
};
|
||||
|
||||
motor_en_default: motor-en-default {
|
||||
pins = "gpio76";
|
||||
function = "gpio";
|
||||
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
motor_pwm_default: motor-pwm-default {
|
||||
pins = "gpio50";
|
||||
function = "gcc_gp2_clk_a";
|
||||
};
|
||||
|
||||
muic_i2c_default: muic-i2c-default {
|
||||
pins = "gpio105", "gpio106";
|
||||
function = "gpio";
|
||||
|
||||
@@ -81,6 +81,10 @@ touchscreen@20 {
|
||||
};
|
||||
};
|
||||
|
||||
&clk_pwm {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&dsi0 {
|
||||
panel@0 {
|
||||
reg = <0>;
|
||||
@@ -104,6 +108,10 @@ &dsi0_out {
|
||||
remote-endpoint = <&panel_in>;
|
||||
};
|
||||
|
||||
&vibrator {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&msmgpio {
|
||||
panel_vdd3_default: panel-vdd3-default {
|
||||
pins = "gpio9";
|
||||
|
||||
@@ -50,6 +50,10 @@ touchscreen@48 {
|
||||
};
|
||||
};
|
||||
|
||||
&clk_pwm {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pronto {
|
||||
iris {
|
||||
compatible = "qcom,wcn3660b";
|
||||
@@ -61,6 +65,10 @@ &touchkey {
|
||||
vdd-supply = <®_touch_key>;
|
||||
};
|
||||
|
||||
&vibrator {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&msmgpio {
|
||||
tkey_en_default: tkey-en-default {
|
||||
pins = "gpio97";
|
||||
|
||||
@@ -26,19 +26,6 @@ muic: extcon@14 {
|
||||
};
|
||||
};
|
||||
|
||||
reg_motor_vdd: regulator-motor-vdd {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "motor_vdd";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
|
||||
gpio = <&msmgpio 76 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&motor_en_default>;
|
||||
};
|
||||
|
||||
reg_touch_key: regulator-touch-key {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "touch_key";
|
||||
@@ -61,20 +48,17 @@ &blsp_i2c2 {
|
||||
/delete-node/ magnetometer@12;
|
||||
};
|
||||
|
||||
®_motor_vdd {
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
&touchkey {
|
||||
vcc-supply = <®_touch_key>;
|
||||
vdd-supply = <®_touch_key>;
|
||||
};
|
||||
|
||||
&msmgpio {
|
||||
motor_en_default: motor-en-default {
|
||||
pins = "gpio76";
|
||||
function = "gpio";
|
||||
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
tkey_en_default: tkey-en-default {
|
||||
pins = "gpio97";
|
||||
function = "gpio";
|
||||
|
||||
Reference in New Issue
Block a user