On Thu, 2020-05-07 at 19:15 +0800, dillon.min...@gmail.com wrote:
> From: dillon min <dillon.min...@gmail.com>
> 
> Enable the stmpe811 touch screen on stm32429-disco board.
> 
> Signed-off-by: dillon min <dillon.min...@gmail.com>
> 
> [PATCH 3/4]: ARM: dts: stm32: enable stmpe811 on stm32429-disco
> 
> V2:
> patch 3: remove unused id, blocks, irq-trigger
> 
> V1:
> patch 4: fix read touch screen xyz timeout bug
> patch 3: enable stmpe_touchscreen on stm32f429-disco board
> patch 2: add i2c3 pin mux for stm32f4
> patch 1: add i2c3 controller interface for stm32f4
> 
> Signed-off-by: dillon min <dillon.min...@gmail.com>

For the STMPE part:

Reviewed-by: Philippe Schenker <philippe.schen...@toradex.com>

> ---
>  arch/arm/boot/dts/stm32f429-disco.dts | 47
> +++++++++++++++++++++++++++++++++++
>  1 file changed, 47 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/stm32f429-disco.dts
> b/arch/arm/boot/dts/stm32f429-disco.dts
> index 30c0f67..fad1ec1 100644
> --- a/arch/arm/boot/dts/stm32f429-disco.dts
> +++ b/arch/arm/boot/dts/stm32f429-disco.dts
> @@ -49,6 +49,8 @@
>  #include "stm32f429.dtsi"
>  #include "stm32f429-pinctrl.dtsi"
>  #include <dt-bindings/input/input.h>
> +#include <dt-bindings/interrupt-controller/irq.h>
> +#include <dt-bindings/gpio/gpio.h>
>  
>  / {
>       model = "STMicroelectronics STM32F429i-DISCO board";
> @@ -127,3 +129,48 @@
>       pinctrl-names = "default";
>       status = "okay";
>  };
> +
> +&i2c3 {
> +     pinctrl-names = "default";
> +     pinctrl-0 = <&i2c3_pins>;
> +     clock-frequency = <100000>;
> +     status = "okay";
> +
> +     stmpe811@41 {
> +             compatible = "st,stmpe811";
> +             reg = <0x41>;
> +             interrupts = <15 IRQ_TYPE_EDGE_FALLING>;
> +             interrupt-parent = <&gpioa>;
> +             /* 3.25 MHz ADC clock speed */
> +             st,adc-freq = <1>;
> +             /* 12-bit ADC */
> +             st,mod-12b = <1>;
> +             /* internal ADC reference */
> +             st,ref-sel = <0>;
> +             /* ADC converstion time: 80 clocks */
> +             st,sample-time = <4>;
> +
> +             stmpe_touchscreen {
> +                     compatible = "st,stmpe-ts";
> +                     /* 8 sample average control */
> +                     st,ave-ctrl = <3>;
> +                     /* 7 length fractional part in z */
> +                     st,fraction-z = <7>;
> +                     /*
> +                      * 50 mA typical 80 mA max touchscreen drivers
> +                      * current limit value
> +                      */
> +                     st,i-drive = <1>;
> +                     /* 1 ms panel driver settling time */
> +                     st,settling = <3>;
> +                     /* 5 ms touch detect interrupt delay */
> +                     st,touch-det-delay = <5>;
> +             };
> +
> +             stmpe_adc {
> +                     compatible = "st,stmpe-adc";
> +                     /* forbid to use ADC channels 3-0 (touch) */
> +                     st,norequest-mask = <0x0F>;
> +             };
> +     };
> +};

Reply via email to