[4/8] arm64: dts: qcom: msm8916-samsung-gt510: Add Vibrator

Message ID 20230105123240.1089375-5-nikita@trvn.ru
State New
Headers
Series Add support for Samsung Galaxy tab A (2015) tablets |

Commit Message

Nikita Travkin Jan. 5, 2023, 12:32 p.m. UTC
  gt510 uses a PWM controllable vibrator, that uses a general purpose
clock output for it's control. Set up the pwm, supply and the vibrator.

Signed-off-by: Nikita Travkin <nikita@trvn.ru>
---
 .../boot/dts/qcom/msm8916-samsung-gt510.dts   | 47 +++++++++++++++++++
 1 file changed, 47 insertions(+)
  

Comments

Krzysztof Kozlowski Jan. 6, 2023, 11:26 a.m. UTC | #1
On 05/01/2023 13:32, Nikita Travkin wrote:
> gt510 uses a PWM controllable vibrator, that uses a general purpose
> clock output for it's control. Set up the pwm, supply and the vibrator.
> 
> Signed-off-by: Nikita Travkin <nikita@trvn.ru>
> ---
>  .../boot/dts/qcom/msm8916-samsung-gt510.dts   | 47 +++++++++++++++++++
>  1 file changed, 47 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
> index e9916199e5a3..44d527b3f1f6 100644
> --- a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
> +++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
> @@ -8,4 +8,51 @@ / {
>  	model = "Samsung Galaxy Tab A 9.7 (2015)";
>  	compatible = "samsung,gt510", "qcom,msm8916";
>  	chassis-type = "tablet";
> +

Squash. One patch per adding GT510, one for GT58.

Best regards,
Krzysztof
  
Nikita Travkin Jan. 6, 2023, 11:45 a.m. UTC | #2
Krzysztof Kozlowski писал(а) 06.01.2023 16:26:
> On 05/01/2023 13:32, Nikita Travkin wrote:
>> gt510 uses a PWM controllable vibrator, that uses a general purpose
>> clock output for it's control. Set up the pwm, supply and the vibrator.
>>
>> Signed-off-by: Nikita Travkin <nikita@trvn.ru>
>> ---
>>  .../boot/dts/qcom/msm8916-samsung-gt510.dts   | 47 +++++++++++++++++++
>>  1 file changed, 47 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
>> index e9916199e5a3..44d527b3f1f6 100644
>> --- a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
>> +++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
>> @@ -8,4 +8,51 @@ / {
>>  	model = "Samsung Galaxy Tab A 9.7 (2015)";
>>  	compatible = "samsung,gt510", "qcom,msm8916";
>>  	chassis-type = "tablet";
>> +
> 
> Squash. One patch per adding GT510, one for GT58.
> 

When submitting the series, I decided to not squash the commits to
preserve the authors for the changes as they were made.

I will send a v2, containing two commits for gt58 and gt510 with
the dtsi changes as part of the first one.

Regards,
Nikita

> Best regards,
> Krzysztof
  

Patch

diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
index e9916199e5a3..44d527b3f1f6 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
@@ -8,4 +8,51 @@  / {
 	model = "Samsung Galaxy Tab A 9.7 (2015)";
 	compatible = "samsung,gt510", "qcom,msm8916";
 	chassis-type = "tablet";
+
+	clk_pwm: pwm {
+		compatible = "clk-pwm";
+		#pwm-cells = <2>;
+
+		clocks = <&gcc GCC_GP2_CLK>;
+
+		pinctrl-0 = <&motor_pwm_default>;
+		pinctrl-names = "default";
+	};
+
+	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-0 = <&motor_en_default>;
+		pinctrl-names = "default";
+	};
+
+	vibrator {
+		compatible = "pwm-vibrator";
+
+		pwms = <&clk_pwm 0 100000>;
+		pwm-names = "enable";
+
+		vcc-supply = <&reg_motor_vdd>;
+	};
+};
+
+&msmgpio {
+	motor_en_default: motor-en-default-state {
+		pins = "gpio76";
+		function = "gpio";
+
+		drive-strength = <2>;
+		bias-disable;
+	};
+
+	motor_pwm_default: motor-pwm-default-state {
+		pins = "gpio50";
+		function = "gcc_gp2_clk_a";
+	};
 };