-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ARM: dts: ux500: Move ab8500 nodes to ste-ab8500.dtsi
Some Ux500 devices use the newer AB8505 PMIC instead of AB8500. Although they are very similar, there are subtle differences like the number of regulators or the available GPIO pins. At the moment, ste-dbx5x0.dtsi always configures the AB8500 PMIC. To support devices with AB8505, it is necessary to split the AB8500-specific parts into a separate .dtsi file. Boards can then select the PMIC by including either ste-ab8500.dtsi or ste-ab8505.dtsi. Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
- Loading branch information
Stephan Gerhold
authored and
Linus Walleij
committed
Aug 22, 2019
1 parent
97c6261
commit a46f7c6
Showing
3 changed files
with
234 additions
and
208 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,232 @@ | ||
// SPDX-License-Identifier: GPL-2.0-or-later | ||
/* | ||
* Copyright 2012 Linaro Ltd | ||
*/ | ||
|
||
#include <dt-bindings/clock/ste-ab8500.h> | ||
|
||
/ { | ||
soc { | ||
prcmu@80157000 { | ||
ab8500 { | ||
compatible = "stericsson,ab8500"; | ||
interrupt-parent = <&intc>; | ||
interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; | ||
interrupt-controller; | ||
#interrupt-cells = <2>; | ||
|
||
ab8500_clock: clock-controller { | ||
compatible = "stericsson,ab8500-clk"; | ||
#clock-cells = <1>; | ||
}; | ||
|
||
ab8500_gpio: ab8500-gpio { | ||
compatible = "stericsson,ab8500-gpio"; | ||
gpio-controller; | ||
#gpio-cells = <2>; | ||
}; | ||
|
||
ab8500-rtc { | ||
compatible = "stericsson,ab8500-rtc"; | ||
interrupts = <17 IRQ_TYPE_LEVEL_HIGH | ||
18 IRQ_TYPE_LEVEL_HIGH>; | ||
interrupt-names = "60S", "ALARM"; | ||
}; | ||
|
||
ab8500-gpadc { | ||
compatible = "stericsson,ab8500-gpadc"; | ||
interrupts = <32 IRQ_TYPE_LEVEL_HIGH | ||
39 IRQ_TYPE_LEVEL_HIGH>; | ||
interrupt-names = "HW_CONV_END", "SW_CONV_END"; | ||
vddadc-supply = <&ab8500_ldo_tvout_reg>; | ||
}; | ||
|
||
ab8500_battery: ab8500_battery { | ||
stericsson,battery-type = "LIPO"; | ||
thermistor-on-batctrl; | ||
}; | ||
|
||
ab8500_fg { | ||
compatible = "stericsson,ab8500-fg"; | ||
battery = <&ab8500_battery>; | ||
}; | ||
|
||
ab8500_btemp { | ||
compatible = "stericsson,ab8500-btemp"; | ||
battery = <&ab8500_battery>; | ||
}; | ||
|
||
ab8500_charger { | ||
compatible = "stericsson,ab8500-charger"; | ||
battery = <&ab8500_battery>; | ||
vddadc-supply = <&ab8500_ldo_tvout_reg>; | ||
}; | ||
|
||
ab8500_chargalg { | ||
compatible = "stericsson,ab8500-chargalg"; | ||
battery = <&ab8500_battery>; | ||
}; | ||
|
||
ab8500_usb { | ||
compatible = "stericsson,ab8500-usb"; | ||
interrupts = < 90 IRQ_TYPE_LEVEL_HIGH | ||
96 IRQ_TYPE_LEVEL_HIGH | ||
14 IRQ_TYPE_LEVEL_HIGH | ||
15 IRQ_TYPE_LEVEL_HIGH | ||
79 IRQ_TYPE_LEVEL_HIGH | ||
74 IRQ_TYPE_LEVEL_HIGH | ||
75 IRQ_TYPE_LEVEL_HIGH>; | ||
interrupt-names = "ID_WAKEUP_R", | ||
"ID_WAKEUP_F", | ||
"VBUS_DET_F", | ||
"VBUS_DET_R", | ||
"USB_LINK_STATUS", | ||
"USB_ADP_PROBE_PLUG", | ||
"USB_ADP_PROBE_UNPLUG"; | ||
vddulpivio18-supply = <&ab8500_ldo_intcore_reg>; | ||
v-ape-supply = <&db8500_vape_reg>; | ||
musb_1v8-supply = <&db8500_vsmps2_reg>; | ||
clocks = <&prcmu_clk PRCMU_SYSCLK>; | ||
clock-names = "sysclk"; | ||
}; | ||
|
||
ab8500-ponkey { | ||
compatible = "stericsson,ab8500-poweron-key"; | ||
interrupts = <6 IRQ_TYPE_LEVEL_HIGH | ||
7 IRQ_TYPE_LEVEL_HIGH>; | ||
interrupt-names = "ONKEY_DBF", "ONKEY_DBR"; | ||
}; | ||
|
||
ab8500-sysctrl { | ||
compatible = "stericsson,ab8500-sysctrl"; | ||
}; | ||
|
||
ab8500-pwm { | ||
compatible = "stericsson,ab8500-pwm"; | ||
clocks = <&ab8500_clock AB8500_SYSCLK_INT>; | ||
clock-names = "intclk"; | ||
}; | ||
|
||
ab8500-debugfs { | ||
compatible = "stericsson,ab8500-debug"; | ||
}; | ||
|
||
codec: ab8500-codec { | ||
compatible = "stericsson,ab8500-codec"; | ||
|
||
V-AUD-supply = <&ab8500_ldo_audio_reg>; | ||
V-AMIC1-supply = <&ab8500_ldo_anamic1_reg>; | ||
V-AMIC2-supply = <&ab8500_ldo_anamic2_reg>; | ||
V-DMIC-supply = <&ab8500_ldo_dmic_reg>; | ||
|
||
clocks = <&ab8500_clock AB8500_SYSCLK_AUDIO>; | ||
clock-names = "audioclk"; | ||
|
||
stericsson,earpeice-cmv = <950>; /* Units in mV. */ | ||
}; | ||
|
||
ext_regulators: ab8500-ext-regulators { | ||
compatible = "stericsson,ab8500-ext-regulator"; | ||
|
||
ab8500_ext1_reg: ab8500_ext1 { | ||
regulator-min-microvolt = <1800000>; | ||
regulator-max-microvolt = <1800000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
|
||
ab8500_ext2_reg: ab8500_ext2 { | ||
regulator-min-microvolt = <1360000>; | ||
regulator-max-microvolt = <1360000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
|
||
ab8500_ext3_reg: ab8500_ext3 { | ||
regulator-min-microvolt = <3400000>; | ||
regulator-max-microvolt = <3400000>; | ||
regulator-boot-on; | ||
}; | ||
}; | ||
|
||
ab8500-regulators { | ||
compatible = "stericsson,ab8500-regulator"; | ||
vin-supply = <&ab8500_ext3_reg>; | ||
|
||
// supplies to the display/camera | ||
ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { | ||
regulator-min-microvolt = <2500000>; | ||
regulator-max-microvolt = <2900000>; | ||
regulator-boot-on; | ||
/* BUG: If turned off MMC will be affected. */ | ||
regulator-always-on; | ||
}; | ||
|
||
// supplies to the on-board eMMC | ||
ab8500_ldo_aux2_reg: ab8500_ldo_aux2 { | ||
regulator-min-microvolt = <1100000>; | ||
regulator-max-microvolt = <3300000>; | ||
}; | ||
|
||
// supply for VAUX3; SDcard slots | ||
ab8500_ldo_aux3_reg: ab8500_ldo_aux3 { | ||
regulator-min-microvolt = <1100000>; | ||
regulator-max-microvolt = <3300000>; | ||
}; | ||
|
||
// supply for v-intcore12; VINTCORE12 LDO | ||
ab8500_ldo_intcore_reg: ab8500_ldo_intcore { | ||
}; | ||
|
||
// supply for tvout; gpadc; TVOUT LDO | ||
ab8500_ldo_tvout_reg: ab8500_ldo_tvout { | ||
}; | ||
|
||
// supply for ab8500-usb; USB LDO | ||
ab8500_ldo_usb_reg: ab8500_ldo_usb { | ||
}; | ||
|
||
// supply for ab8500-vaudio; VAUDIO LDO | ||
ab8500_ldo_audio_reg: ab8500_ldo_audio { | ||
}; | ||
|
||
// supply for v-anamic1 VAMIC1 LDO | ||
ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 { | ||
}; | ||
|
||
// supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1 | ||
ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 { | ||
}; | ||
|
||
// supply for v-dmic; VDMIC LDO | ||
ab8500_ldo_dmic_reg: ab8500_ldo_dmic { | ||
}; | ||
|
||
// supply for U8500 CSI/DSI; VANA LDO | ||
ab8500_ldo_ana_reg: ab8500_ldo_ana { | ||
}; | ||
}; | ||
}; | ||
}; | ||
|
||
sound { | ||
stericsson,audio-codec = <&codec>; | ||
clocks = <&prcmu_clk PRCMU_SYSCLK>, <&ab8500_clock AB8500_SYSCLK_ULP>, <&ab8500_clock AB8500_SYSCLK_INT>; | ||
clock-names = "sysclk", "ulpclk", "intclk"; | ||
}; | ||
|
||
mcde@a0350000 { | ||
vana-supply = <&ab8500_ldo_ana_reg>; | ||
|
||
dsi@a0351000 { | ||
vana-supply = <&ab8500_ldo_ana_reg>; | ||
}; | ||
dsi@a0352000 { | ||
vana-supply = <&ab8500_ldo_ana_reg>; | ||
}; | ||
dsi@a0353000 { | ||
vana-supply = <&ab8500_ldo_ana_reg>; | ||
}; | ||
}; | ||
}; | ||
}; |
Oops, something went wrong.