Commit e6081b21 authored by Wolfram Sang's avatar Wolfram Sang Committed by Simon Horman

ARM: dts: lager: use demuxer for IIC3/I2C3

Create a separate bus for da9063 PMIC and da9210 regulator
related I2C slaves.

Based on similar work for HDMI by Wolfram Sang.
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
[wsa: rebased, corrected chip name in commit msg, updated aliases]
Signed-off-by: default avatarWolfram Sang <wsa+renesas@sang-engineering.com>
parent 4e65e1b6
...@@ -55,6 +55,7 @@ aliases { ...@@ -55,6 +55,7 @@ aliases {
i2c10 = &i2cexio0; i2c10 = &i2cexio0;
i2c11 = &i2cexio1; i2c11 = &i2cexio1;
i2c12 = &i2chdmi; i2c12 = &i2chdmi;
i2c13 = &i2cpwr;
}; };
chosen { chosen {
...@@ -418,6 +419,46 @@ adv7612_out: endpoint { ...@@ -418,6 +419,46 @@ adv7612_out: endpoint {
}; };
}; };
}; };
/*
* IIC3 and I2C3 may be switched using pinmux.
* IIC3/I2C3 does not appear to support fallback to GPIO.
*/
i2cpwr: i2c-13 {
compatible = "i2c-demux-pinctrl";
i2c-parent = <&iic3>, <&i2c3>;
i2c-bus-name = "i2c-pwr";
#address-cells = <1>;
#size-cells = <0>;
pmic@58 {
compatible = "dlg,da9063";
reg = <0x58>;
interrupt-parent = <&irqc0>;
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
rtc {
compatible = "dlg,da9063-rtc";
};
wdt {
compatible = "dlg,da9063-watchdog";
};
};
vdd_dvfs: regulator@68 {
compatible = "dlg,da9210";
reg = <0x68>;
interrupt-parent = <&irqc0>;
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1000000>;
regulator-boot-on;
regulator-always-on;
};
};
}; };
&du { &du {
...@@ -557,6 +598,11 @@ iic2_pins: iic2 { ...@@ -557,6 +598,11 @@ iic2_pins: iic2 {
function = "iic2"; function = "iic2";
}; };
i2c3_pins: i2c3 {
groups = "i2c3";
function = "i2c3";
};
iic3_pins: iic3 { iic3_pins: iic3 {
groups = "iic3"; groups = "iic3";
function = "iic3"; function = "iic3";
...@@ -772,38 +818,14 @@ &iic2 { ...@@ -772,38 +818,14 @@ &iic2 {
clock-frequency = <100000>; clock-frequency = <100000>;
}; };
&iic3 { &i2c3 {
pinctrl-names = "default"; pinctrl-0 = <&i2c3_pins>;
pinctrl-0 = <&iic3_pins>; pinctrl-names = "i2c-pwr";
status = "okay"; };
pmic@58 {
compatible = "dlg,da9063";
reg = <0x58>;
interrupt-parent = <&irqc0>;
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
rtc {
compatible = "dlg,da9063-rtc";
};
wdt {
compatible = "dlg,da9063-watchdog";
};
};
vdd_dvfs: regulator@68 {
compatible = "dlg,da9210";
reg = <0x68>;
interrupt-parent = <&irqc0>;
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
regulator-min-microvolt = <1000000>; &iic3 {
regulator-max-microvolt = <1000000>; pinctrl-0 = <&iic3_pins>;
regulator-boot-on; pinctrl-names = "i2c-pwr";
regulator-always-on;
};
}; };
&pci0 { &pci0 {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment