The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/input/touchscreen/brcm,iproc-touchscreen.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 * Broadcom's IPROC Touchscreen Controller
    2 
    3 Required 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 
   17 Optional 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 
   62 Example: 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         };

Cache object: e78e7a3a2d10111540eba0f7198b8027


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.