cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

brcm,iproc-touchscreen.txt (3360B)


      1* Broadcom's IPROC Touchscreen Controller
      2
      3Required properties:
      4- compatible: must be "brcm,iproc-touchscreen"
      5- ts_syscon: handler of syscon node defining physical base
      6  address of the controller and length of memory mapped region.
      7  If this property is selected please make sure MFD_SYSCON config
      8  is enabled in the defconfig file.
      9- clocks:  The clock provided by the SOC to driver the tsc
     10- clock-names:  name for the clock
     11- interrupts: The touchscreen controller's interrupt
     12- address-cells: Specify the number of u32 entries needed in child nodes.
     13  Should set to 1.
     14- size-cells: Specify number of u32 entries needed to specify child nodes size
     15  in reg property. Should set to 1.
     16
     17Optional properties:
     18- scanning_period: Time between scans. Each step is 1024 us.  Valid 1-256.
     19- debounce_timeout: Each step is 512 us.  Valid 0-255
     20- settling_timeout: The settling duration (in ms) is the amount of time
     21                    the tsc waits to allow the voltage to settle after
     22                    turning on the drivers in detection mode.
     23                    Valid values: 0-11
     24                    0 =  0.008 ms
     25                    1 =  0.01 ms
     26                    2 =  0.02 ms
     27                    3 =  0.04 ms
     28                    4 =  0.08 ms
     29                    5 =  0.16 ms
     30                    6 =  0.32 ms
     31                    7 =  0.64 ms
     32                    8 =  1.28 ms
     33                    9 =  2.56 ms
     34                   10 =  5.12 ms
     35                   11 = 10.24 ms
     36- touch_timeout: The continuous number of scan periods in which touch is
     37                not detected before the controller returns to idle state.
     38                Valid values 0-255.
     39- average_data: Number of data samples which are averaged before a final
     40                data point is placed into the FIFO
     41                Valid values 0-7
     42                0 =   1 sample
     43                1 =   2 samples
     44                2 =   4 samples
     45                3 =   8 samples
     46                4 =  16 samples
     47                5 =  32 samples
     48                6 =  64 samples
     49                7 = 128 samples
     50- fifo_threshold: Interrupt is generated whenever the number of fifo
     51                entries exceeds this value
     52                Valid values 0-31
     53- touchscreen-size-x: horizontal resolution of touchscreen (in pixels)
     54- touchscreen-size-y: vertical resolution of touchscreen (in pixels)
     55- touchscreen-fuzz-x: horizontal noise value of the absolute input
     56                      device (in pixels)
     57- touchscreen-fuzz-y: vertical noise value of the absolute input
     58                      device (in pixels)
     59- touchscreen-inverted-x: X axis is inverted (boolean)
     60- touchscreen-inverted-y: Y axis is inverted (boolean)
     61
     62Example: An example of touchscreen node
     63
     64	ts_adc_syscon: ts_adc_syscon@180a6000 {
     65		compatible = "brcm,iproc-ts-adc-syscon","syscon";
     66		reg = <0x180a6000 0xc30>;
     67	};
     68
     69	touchscreen: touchscreen@180a6000 {
     70		compatible = "brcm,iproc-touchscreen";
     71		#address-cells = <1>;
     72		#size-cells = <1>;
     73		ts_syscon = <&ts_adc_syscon>;
     74		clocks = <&adc_clk>;
     75		clock-names = "tsc_clk";
     76		interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
     77
     78		scanning_period = <5>;
     79		debounce_timeout = <40>;
     80		settling_timeout = <7>;
     81		touch_timeout = <10>;
     82		average_data = <5>;
     83		fifo_threshold = <1>;
     84		/* Touchscreen is rotated 180 degrees. */
     85		touchscreen-inverted-x;
     86		touchscreen-inverted-y;
     87	};