Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

* ChipOne icn8318 I2C touchscreen controller

Required properties:
 - compatible		  : "chipone,icn8318"
 - reg			  : I2C slave address of the chip (0x40)
 - interrupts		  : interrupt specification for the icn8318 interrupt
 - wake-gpios		  : GPIO specification for the WAKE input
 - touchscreen-size-x	  : horizontal resolution of touchscreen (in pixels)
 - touchscreen-size-y	  : vertical resolution of touchscreen (in pixels)

Optional properties:
 - pinctrl-names	  : should be "default"
 - pinctrl-0:		  : a phandle pointing to the pin settings for the
			    control gpios
 - touchscreen-fuzz-x	  : horizontal noise value of the absolute input
			    device (in pixels)
 - touchscreen-fuzz-y	  : vertical noise value of the absolute input
			    device (in pixels)
 - touchscreen-inverted-x : X axis is inverted (boolean)
 - touchscreen-inverted-y : Y axis is inverted (boolean)
 - touchscreen-swapped-x-y	  : X and Y axis are swapped (boolean)
			    Swapping is done after inverting the axis

Example:

i2c@00000000 {
	/* ... */

	chipone_icn8318@40 {
		compatible = "chipone,icn8318";
		reg = <0x40>;
		interrupt-parent = <&pio>;
		interrupts = <9 IRQ_TYPE_EDGE_FALLING>; /* EINT9 (PG9) */
		pinctrl-names = "default";
		pinctrl-0 = <&ts_wake_pin_p66>;
		wake-gpios = <&pio 1 3 GPIO_ACTIVE_HIGH>; /* PB3 */
		touchscreen-size-x = <800>;
		touchscreen-size-y = <480>;
		touchscreen-inverted-x;
		touchscreen-swapped-x-y;
	};

	/* ... */
};