source
+Name: i2c-rtc-gpio
+Info: Adds support for a number of I2C Real Time Clock devices
+ using the software i2c controller
+Load: dtoverlay=i2c-rtc-gpio,<param>=<val>
+Params: abx80x Select one of the ABx80x family:
+ AB0801, AB0803, AB0804, AB0805,
+ AB1801, AB1803, AB1804, AB1805
+
+ ds1307 Select the DS1307 device
+
+ ds1339 Select the DS1339 device
+
+ ds3231 Select the DS3231 device
+
+ mcp7940x Select the MCP7940x device
+
+ mcp7941x Select the MCP7941x device
+
+ pcf2127 Select the PCF2127 device
+
+ pcf8523 Select the PCF8523 device
+
+ pcf8563 Select the PCF8563 device
+
+ trickle-diode-type Diode type for trickle charge - "standard" or
+ "schottky" (ABx80x only)
+
+ trickle-resistor-ohms Resistor value for trickle charge (DS1339,
+ ABx80x)
+
+ wakeup-source Specify that the RTC can be used as a wakeup
+ source
+
+ i2c_gpio_sda GPIO used for I2C data (default "23")
+
+ i2c_gpio_scl GPIO used for I2C clock (default "24")
+
+ i2c_gpio_delay_us Clock delay in microseconds
+ (default "2" = ~100kHz)
+
+
Name: i2c-sensor
Info: Adds support for a number of I2C barometric pressure and temperature
sensors on i2c_arm
--- /dev/null
+// Definitions for several I2C based Real Time Clocks
+// Available through i2c-gpio
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "brcm,bcm2708";
+
+ fragment@0 {
+ target-path = "/";
+ __overlay__ {
+ i2c_gpio: i2c-gpio-rtc@0 {
+ compatible = "i2c-gpio";
+ gpios = <&gpio 23 0 /* sda */
+ &gpio 24 0 /* scl */
+ >;
+ i2c-gpio,delay-us = <2>; /* ~100 kHz */
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+ };
+
+ fragment@1 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ abx80x: abx80x@69 {
+ compatible = "abracon,abx80x";
+ reg = <0x69>;
+ abracon,tc-diode = "standard";
+ abracon,tc-resistor = <0>;
+ status = "okay";
+ };
+ };
+ };
+
+ fragment@2 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ ds1307: ds1307@68 {
+ compatible = "maxim,ds1307";
+ reg = <0x68>;
+ status = "okay";
+ };
+ };
+ };
+
+ fragment@3 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ ds1339: ds1339@68 {
+ compatible = "dallas,ds1339";
+ trickle-resistor-ohms = <0>;
+ reg = <0x68>;
+ status = "okay";
+ };
+ };
+ };
+
+ fragment@4 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ ds3231: ds3231@68 {
+ compatible = "maxim,ds3231";
+ reg = <0x68>;
+ status = "okay";
+ };
+ };
+ };
+
+ fragment@5 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ mcp7940x: mcp7940x@6f {
+ compatible = "microchip,mcp7940x";
+ reg = <0x6f>;
+ status = "okay";
+ };
+ };
+ };
+
+ fragment@6 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ mcp7941x: mcp7941x@6f {
+ compatible = "microchip,mcp7941x";
+ reg = <0x6f>;
+ status = "okay";
+ };
+ };
+ };
+
+ fragment@7 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ pcf2127: pcf2127@51 {
+ compatible = "nxp,pcf2127";
+ reg = <0x51>;
+ status = "okay";
+ };
+ };
+ };
+
+ fragment@8 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ pcf8523: pcf8523@68 {
+ compatible = "nxp,pcf8523";
+ reg = <0x68>;
+ status = "okay";
+ };
+ };
+ };
+
+ fragment@9 {
+ target = <&i2c_gpio>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ pcf8563: pcf8563@51 {
+ compatible = "nxp,pcf8563";
+ reg = <0x51>;
+ status = "okay";
+ };
+ };
+ };
+
+ __overrides__ {
+ abx80x = <0>,"+1";
+ ds1307 = <0>,"+2";
+ ds1339 = <0>,"+3";
+ ds3231 = <0>,"+4";
+ mcp7940x = <0>,"+5";
+ mcp7941x = <0>,"+6";
+ pcf2127 = <0>,"+7";
+ pcf8523 = <0>,"+8";
+ pcf8563 = <0>,"+9";
+ trickle-diode-type = <&abx80x>,"abracon,tc-diode";
+ trickle-resistor-ohms = <&ds1339>,"trickle-resistor-ohms:0",
+ <&abx80x>,"abracon,tc-resistor";
+ wakeup-source = <&ds1339>,"wakeup-source?",
+ <&ds3231>,"wakeup-source?",
+ <&mcp7940x>,"wakeup-source?",
+ <&mcp7941x>,"wakeup-source?";
+ i2c_gpio_sda = <&i2c_gpio>,"gpios:4";
+ i2c_gpio_scl = <&i2c_gpio>,"gpios:16";
+ i2c_gpio_delay_us = <&i2c_gpio>,"i2c-gpio,delay-us:0";
+ };
+};