162306a36Sopenharmony_ci* Analog Devices AD7879(-1)/AD7889(-1) touchscreen interface (SPI/I2C) 262306a36Sopenharmony_ci 362306a36Sopenharmony_ciRequired properties: 462306a36Sopenharmony_ci- compatible : for SPI slave, use "adi,ad7879" 562306a36Sopenharmony_ci for I2C slave, use "adi,ad7879-1" 662306a36Sopenharmony_ci- reg : SPI chipselect/I2C slave address 762306a36Sopenharmony_ci See spi-bus.txt for more SPI slave properties 862306a36Sopenharmony_ci- interrupts : touch controller interrupt 962306a36Sopenharmony_ci- touchscreen-max-pressure : maximum reported pressure 1062306a36Sopenharmony_ci- adi,resistance-plate-x : total resistance of X-plate (for pressure 1162306a36Sopenharmony_ci calculation) 1262306a36Sopenharmony_ciOptional properties: 1362306a36Sopenharmony_ci- touchscreen-swapped-x-y : X and Y axis are swapped (boolean) 1462306a36Sopenharmony_ci- adi,first-conversion-delay : 0-12: In 128us steps (starting with 128us) 1562306a36Sopenharmony_ci 13 : 2.560ms 1662306a36Sopenharmony_ci 14 : 3.584ms 1762306a36Sopenharmony_ci 15 : 4.096ms 1862306a36Sopenharmony_ci This property has to be a '/bits/ 8' value 1962306a36Sopenharmony_ci- adi,acquisition-time : 0: 2us 2062306a36Sopenharmony_ci 1: 4us 2162306a36Sopenharmony_ci 2: 8us 2262306a36Sopenharmony_ci 3: 16us 2362306a36Sopenharmony_ci This property has to be a '/bits/ 8' value 2462306a36Sopenharmony_ci- adi,median-filter-size : 0: disabled 2562306a36Sopenharmony_ci 1: 4 measurements 2662306a36Sopenharmony_ci 2: 8 measurements 2762306a36Sopenharmony_ci 3: 16 measurements 2862306a36Sopenharmony_ci This property has to be a '/bits/ 8' value 2962306a36Sopenharmony_ci- adi,averaging : 0: 2 middle values (1 if median disabled) 3062306a36Sopenharmony_ci 1: 4 middle values 3162306a36Sopenharmony_ci 2: 8 middle values 3262306a36Sopenharmony_ci 3: 16 values 3362306a36Sopenharmony_ci This property has to be a '/bits/ 8' value 3462306a36Sopenharmony_ci- adi,conversion-interval: : 0 : convert one time only 3562306a36Sopenharmony_ci 1-255: 515us + val * 35us (up to 9.440ms) 3662306a36Sopenharmony_ci This property has to be a '/bits/ 8' value 3762306a36Sopenharmony_ci- gpio-controller : Switch AUX/VBAT/GPIO pin to GPIO mode 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ciExample: 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci touchscreen0@2c { 4262306a36Sopenharmony_ci compatible = "adi,ad7879-1"; 4362306a36Sopenharmony_ci reg = <0x2c>; 4462306a36Sopenharmony_ci interrupt-parent = <&gpio1>; 4562306a36Sopenharmony_ci interrupts = <13 IRQ_TYPE_EDGE_FALLING>; 4662306a36Sopenharmony_ci touchscreen-max-pressure = <4096>; 4762306a36Sopenharmony_ci adi,resistance-plate-x = <120>; 4862306a36Sopenharmony_ci adi,first-conversion-delay = /bits/ 8 <3>; 4962306a36Sopenharmony_ci adi,acquisition-time = /bits/ 8 <1>; 5062306a36Sopenharmony_ci adi,median-filter-size = /bits/ 8 <2>; 5162306a36Sopenharmony_ci adi,averaging = /bits/ 8 <1>; 5262306a36Sopenharmony_ci adi,conversion-interval = /bits/ 8 <255>; 5362306a36Sopenharmony_ci }; 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci touchscreen1@1 { 5662306a36Sopenharmony_ci compatible = "adi,ad7879"; 5762306a36Sopenharmony_ci spi-max-frequency = <5000000>; 5862306a36Sopenharmony_ci reg = <1>; 5962306a36Sopenharmony_ci spi-cpol; 6062306a36Sopenharmony_ci spi-cpha; 6162306a36Sopenharmony_ci gpio-controller; 6262306a36Sopenharmony_ci interrupt-parent = <&gpio1>; 6362306a36Sopenharmony_ci interrupts = <13 IRQ_TYPE_EDGE_FALLING>; 6462306a36Sopenharmony_ci touchscreen-max-pressure = <4096>; 6562306a36Sopenharmony_ci adi,resistance-plate-x = <120>; 6662306a36Sopenharmony_ci adi,first-conversion-delay = /bits/ 8 <3>; 6762306a36Sopenharmony_ci adi,acquisition-time = /bits/ 8 <1>; 6862306a36Sopenharmony_ci adi,median-filter-size = /bits/ 8 <2>; 6962306a36Sopenharmony_ci adi,averaging = /bits/ 8 <1>; 7062306a36Sopenharmony_ci adi,conversion-interval = /bits/ 8 <255>; 7162306a36Sopenharmony_ci }; 72