mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-10-31 03:58:17 +00:00 
			
		
		
		
	Many I2C devices produce roughly the same ACPI data with just things like the GPIO/interrupt information being different. This can be handled by a generic driver along with some information in the device tree. Add a generic i2c driver for this purpose. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heiko Schocher <hs@denx.de>
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| I2C generic device
 | |
| ==================
 | |
| 
 | |
| This is used only to generate ACPI tables for an I2C device.
 | |
| 
 | |
| Required properties :
 | |
| 
 | |
|  - compatible : "i2c-chip";
 | |
|  - reg : I2C chip address
 | |
|  - acpi,hid : HID name for the device
 | |
| 
 | |
| Optional properies in addition to device.txt:
 | |
| 
 | |
|  - reset-gpios : GPIO used to assert reset to the device
 | |
|  - irq-gpios : GPIO used for interrupt (if Interrupt is not used)
 | |
|  - stop-gpios : GPIO used to stop the device
 | |
|  - interrupts-extended : Interrupt to use for the device
 | |
|  - reset-delay-ms : Delay after de-asserting reset, in ms
 | |
|  - reset-off-delay-ms : Delay after asserting reset (during power off)
 | |
|  - enable-delay-ms : Delay after asserting enable
 | |
|  - enable-off-delay-ms : Delay after de-asserting enable (during power off)
 | |
|  - stop-delay-ms : Delay after de-aserting stop
 | |
|  - stop-off-delay-ms : Delay after asserting stop (during power off)
 | |
|  - hid-descr-addr : HID register offset (for Human Interface Devices)
 | |
| 
 | |
| Example
 | |
| -------
 | |
| 
 | |
| 	elan-touchscreen@10 {
 | |
| 		compatible = "i2c-chip";
 | |
| 		reg = <0x10>;
 | |
| 		acpi,hid = "ELAN0001";
 | |
| 		acpi,ddn = "ELAN Touchscreen";
 | |
| 		interrupts-extended = <&acpi_gpe GPIO_21_IRQ
 | |
| 			IRQ_TYPE_EDGE_FALLING>;
 | |
| 		linux,probed;
 | |
| 		reset-gpios = <&gpio_n GPIO_36 GPIO_ACTIVE_HIGH>;
 | |
| 		reset-delay-ms = <20>;
 | |
| 		enable-gpios = <&gpio_n GPIO_152 GPIO_ACTIVE_HIGH>;
 | |
| 		enable-delay-ms = <1>;
 | |
| 		acpi,has-power-resource;
 | |
| 	};
 |