About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / devicetree / bindings / mfd / cros-ec.txt




Custom Search

Based on kernel version 3.16. Page generated on 2014-08-06 21:37 EST.

1	ChromeOS Embedded Controller
2	
3	Google's ChromeOS EC is a Cortex-M device which talks to the AP and
4	implements various function such as keyboard and battery charging.
5	
6	The EC can be connect through various means (I2C, SPI, LPC) and the
7	compatible string used depends on the interface. Each connection method has
8	its own driver which connects to the top level interface-agnostic EC driver.
9	Other Linux driver (such as cros-ec-keyb for the matrix keyboard) connect to
10	the top-level driver.
11	
12	Required properties (I2C):
13	- compatible: "google,cros-ec-i2c"
14	- reg: I2C slave address
15	
16	Required properties (SPI):
17	- compatible: "google,cros-ec-spi"
18	- reg: SPI chip select
19	
20	Optional properties (SPI):
21	- google,cros-ec-spi-msg-delay: Some implementations of the EC require some
22	  additional processing time in order to accept new transactions. If the delay
23	  between transactions is not long enough the EC may not be able to respond
24	  properly to subsequent transactions and cause them to hang. This property
25	  specifies the delay, in usecs, introduced between transactions to account
26	  for the time required by the EC to get back into a state in which new data
27	  can be accepted.
28	
29	Required properties (LPC):
30	- compatible: "google,cros-ec-lpc"
31	- reg: List of (IO address, size) pairs defining the interface uses
32	
33	
34	Example for I2C:
35	
36	i2c@12CA0000 {
37		cros-ec@1e {
38			reg = <0x1e>;
39			compatible = "google,cros-ec-i2c";
40			interrupts = <14 0>;
41			interrupt-parent = <&wakeup_eint>;
42			wakeup-source;
43		};
44	
45	
46	Example for SPI:
47	
48	spi@131b0000 {
49		ec@0 {
50			compatible = "google,cros-ec-spi";
51			reg = <0x0>;
52			interrupts = <14 0>;
53			interrupt-parent = <&wakeup_eint>;
54			wakeup-source;
55			spi-max-frequency = <5000000>;
56			controller-data {
57			cs-gpio = <&gpf0 3 4 3 0>;
58			samsung,spi-cs;
59			samsung,spi-feedback-delay = <2>;
60			};
61		};
62	};
63	
64	
65	Example for LPC is not supplied as it is not yet implemented.
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.