This force-converts the per-device battery node into the standard
properties using "simple-battery" for the HREF machines and the
corresponding Samsung battery for the mobile phones.
This is fine to do since the battery data in the DTS files has never
been deployed or used. In commit a1149ae975
"ARM: ux500: Disable Power Supply and Battery Management by default"
it was turned off and has not been switched back on since. In
the meantime standardized bindings for batteries have appeared
making the old AB8500 battery bindings obsolete.
The battery node which is now in the middle of an included file
is obviously a per-device piece of information so push this down
to each board. The HREF machines all have the same battery and can
share a single node in the HREF dtsi file.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
327 lines
8.3 KiB
Text
327 lines
8.3 KiB
Text
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
/*
|
|
* Copyright 2012 Linaro Ltd
|
|
*/
|
|
|
|
#include <dt-bindings/clock/ste-ab8500.h>
|
|
|
|
/ {
|
|
/* Essential housekeeping hardware monitors */
|
|
iio-hwmon {
|
|
compatible = "iio-hwmon";
|
|
io-channels = <&gpadc 0x02>, /* Battery temperature */
|
|
<&gpadc 0x08>, /* Main battery voltage */
|
|
<&gpadc 0x09>, /* VBUS */
|
|
<&gpadc 0x0b>, /* Charger current */
|
|
<&gpadc 0x0c>, /* Backup battery voltage */
|
|
<&gpadc 0x0d>; /* Die temperature */
|
|
};
|
|
|
|
soc {
|
|
prcmu@80157000 {
|
|
ab8505 {
|
|
compatible = "stericsson,ab8505";
|
|
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>;
|
|
};
|
|
|
|
ab8505_gpio: ab8505-gpiocontroller {
|
|
compatible = "stericsson,ab8505-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";
|
|
};
|
|
|
|
gpadc: ab8500-gpadc {
|
|
compatible = "stericsson,ab8500-gpadc";
|
|
interrupts = <39 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-names = "SW_CONV_END";
|
|
vddadc-supply = <&ab8500_ldo_adc_reg>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
#io-channel-cells = <1>;
|
|
|
|
/* GPADC channels */
|
|
bat_ctrl: channel@1 {
|
|
reg = <0x01>;
|
|
};
|
|
btemp_ball: channel@2 {
|
|
reg = <0x02>;
|
|
};
|
|
acc_detect1: channel@4 {
|
|
reg = <0x04>;
|
|
};
|
|
acc_detect2: channel@5 {
|
|
reg = <0x05>;
|
|
};
|
|
adc_aux1: channel@6 {
|
|
reg = <0x06>;
|
|
};
|
|
adc_aux2: channel@7 {
|
|
reg = <0x07>;
|
|
};
|
|
main_batt_v: channel@8 {
|
|
reg = <0x08>;
|
|
};
|
|
vbus_v: channel@9 {
|
|
reg = <0x09>;
|
|
};
|
|
charger_c: channel@b {
|
|
reg = <0x0b>;
|
|
};
|
|
bk_bat_v: channel@c {
|
|
reg = <0x0c>;
|
|
};
|
|
die_temp: channel@d {
|
|
reg = <0x0d>;
|
|
};
|
|
usb_id: channel@e {
|
|
reg = <0x0e>;
|
|
};
|
|
};
|
|
|
|
ab8500_fg {
|
|
status = "disabled";
|
|
compatible = "stericsson,ab8500-fg";
|
|
interrupts = <24 IRQ_TYPE_LEVEL_HIGH>,
|
|
<8 IRQ_TYPE_LEVEL_HIGH>,
|
|
<28 IRQ_TYPE_LEVEL_HIGH>,
|
|
<27 IRQ_TYPE_LEVEL_HIGH>,
|
|
<26 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-names = "NCONV_ACCU",
|
|
"BATT_OVV",
|
|
"LOW_BAT_F",
|
|
"CC_INT_CALIB",
|
|
"CCEOC";
|
|
monitored-battery = <&battery>;
|
|
io-channels = <&gpadc 0x08>;
|
|
io-channel-names = "main_bat_v";
|
|
};
|
|
|
|
ab8500_btemp {
|
|
status = "disabled";
|
|
compatible = "stericsson,ab8500-btemp";
|
|
interrupts = <20 IRQ_TYPE_LEVEL_HIGH>,
|
|
<80 IRQ_TYPE_LEVEL_HIGH>,
|
|
<83 IRQ_TYPE_LEVEL_HIGH>,
|
|
<81 IRQ_TYPE_LEVEL_HIGH>,
|
|
<82 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-names = "BAT_CTRL_INDB",
|
|
"BTEMP_LOW",
|
|
"BTEMP_HIGH",
|
|
"BTEMP_LOW_MEDIUM",
|
|
"BTEMP_MEDIUM_HIGH";
|
|
monitored-battery = <&battery>;
|
|
io-channels = <&gpadc 0x02>,
|
|
<&gpadc 0x01>;
|
|
io-channel-names = "btemp_ball",
|
|
"bat_ctrl";
|
|
};
|
|
|
|
ab8500_charger {
|
|
status = "disabled";
|
|
compatible = "stericsson,ab8500-charger";
|
|
interrupts = <10 IRQ_TYPE_LEVEL_HIGH>,
|
|
<11 IRQ_TYPE_LEVEL_HIGH>,
|
|
<0 IRQ_TYPE_LEVEL_HIGH>,
|
|
<107 IRQ_TYPE_LEVEL_HIGH>,
|
|
<106 IRQ_TYPE_LEVEL_HIGH>,
|
|
<14 IRQ_TYPE_LEVEL_HIGH>,
|
|
<15 IRQ_TYPE_LEVEL_HIGH>,
|
|
<79 IRQ_TYPE_LEVEL_HIGH>,
|
|
<105 IRQ_TYPE_LEVEL_HIGH>,
|
|
<104 IRQ_TYPE_LEVEL_HIGH>,
|
|
<89 IRQ_TYPE_LEVEL_HIGH>,
|
|
<22 IRQ_TYPE_LEVEL_HIGH>,
|
|
<21 IRQ_TYPE_LEVEL_HIGH>,
|
|
<16 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-names = "MAIN_CH_UNPLUG_DET",
|
|
"MAIN_CHARGE_PLUG_DET",
|
|
"MAIN_EXT_CH_NOT_OK",
|
|
"MAIN_CH_TH_PROT_R",
|
|
"MAIN_CH_TH_PROT_F",
|
|
"VBUS_DET_F",
|
|
"VBUS_DET_R",
|
|
"USB_LINK_STATUS",
|
|
"USB_CH_TH_PROT_R",
|
|
"USB_CH_TH_PROT_F",
|
|
"USB_CHARGER_NOT_OKR",
|
|
"VBUS_OVV",
|
|
"CH_WD_EXP",
|
|
"VBUS_CH_DROP_END";
|
|
monitored-battery = <&battery>;
|
|
vddadc-supply = <&ab8500_ldo_adc_reg>;
|
|
io-channels = <&gpadc 0x09>,
|
|
<&gpadc 0x0b>;
|
|
io-channel-names = "vbus_v",
|
|
"usb_charger_c";
|
|
};
|
|
|
|
ab8500_chargalg {
|
|
status = "disabled";
|
|
compatible = "stericsson,ab8500-chargalg";
|
|
monitored-battery = <&battery>;
|
|
};
|
|
|
|
ab8500_usb: 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";
|
|
#phy-cells = <0>;
|
|
};
|
|
|
|
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>;
|
|
|
|
clocks = <&ab8500_clock AB8500_SYSCLK_AUDIO>;
|
|
clock-names = "audioclk";
|
|
|
|
stericsson,earpeice-cmv = <950>; /* Units in mV. */
|
|
};
|
|
|
|
ab8505-regulators {
|
|
compatible = "stericsson,ab8505-regulator";
|
|
|
|
ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
|
|
regulator-min-microvolt = <2800000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
};
|
|
|
|
ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
|
|
regulator-min-microvolt = <1100000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
};
|
|
|
|
ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
|
|
regulator-min-microvolt = <1100000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
};
|
|
|
|
ab8500_ldo_aux4_reg: ab8500_ldo_aux4 {
|
|
regulator-min-microvolt = <1100000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
};
|
|
|
|
ab8500_ldo_aux5_reg: ab8500_ldo_aux5 {
|
|
regulator-min-microvolt = <1050000>;
|
|
regulator-max-microvolt = <2790000>;
|
|
};
|
|
|
|
ab8500_ldo_aux6_reg: ab8500_ldo_aux6 {
|
|
regulator-min-microvolt = <1050000>;
|
|
regulator-max-microvolt = <2790000>;
|
|
};
|
|
|
|
// supply for v-intcore12; VINTCORE12 LDO
|
|
ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
|
|
regulator-min-microvolt = <1250000>;
|
|
regulator-max-microvolt = <1350000>;
|
|
};
|
|
|
|
// supply for gpadc; ADC LDO
|
|
ab8500_ldo_adc_reg: ab8500_ldo_adc {
|
|
};
|
|
|
|
// 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-aux8; VAUX8 LDO
|
|
ab8500_ldo_aux8_reg: ab8500_ldo_aux8 {
|
|
};
|
|
|
|
// 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>;
|
|
};
|
|
};
|
|
|
|
usb_per5@a03e0000 {
|
|
phys = <&ab8500_usb>;
|
|
phy-names = "usb";
|
|
};
|
|
};
|
|
};
|