summaryrefslogtreecommitdiff
path: root/arch/arm/boot/dts/sprd-battery.dtsi
diff options
context:
space:
mode:
authorYuval Adam <_@yuv.al>2017-08-30 08:25:59 +0000
committerYuval Adam <_@yuv.al>2017-08-30 08:25:59 +0000
commit8e4bff4cab0ddac6060645b0715210484d02ff40 (patch)
tree3a5c3024371a04692a3a6d9974d001cdff8ebf84 /arch/arm/boot/dts/sprd-battery.dtsi
Initial file dump from open source releaseHEADmaster
Diffstat (limited to 'arch/arm/boot/dts/sprd-battery.dtsi')
-rw-r--r--arch/arm/boot/dts/sprd-battery.dtsi91
1 files changed, 91 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/sprd-battery.dtsi b/arch/arm/boot/dts/sprd-battery.dtsi
new file mode 100644
index 00000000..6e01305b
--- /dev/null
+++ b/arch/arm/boot/dts/sprd-battery.dtsi
@@ -0,0 +1,91 @@
+/*
+* Copyright (C) 2013 Spreadtrum Communication Incorporated
+* http://www.spreadtrum.com/
+*
+* This program is free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License version 2 as
+* published by the Free Software Foundation.
+*/
+
+/* This is the sprd battery default DTS */
+
+/ {
+ sprd_battery: sprd_battery {
+ compatible = "sprd,sprd-battery";
+ gpios = <&a_eic_gpio 0 0 /* chg int */
+ &a_eic_gpio 4 0 /* cv state */
+ &a_eic_gpio 6 0>; /* chg ovi */
+ chg-end-vol-h = <4375>;
+ chg-end-vol-pure = <4350>;
+ chg-end-vol-l = <4340>;
+ chg-false-full-vol = <4295>; /* when cap = 99 && (bat_cur < chg-end-cur || ocv > chg-false-full-vol), then cap = 100*/
+ chg-bat-safety-vol = <4400>;
+ rechg-vol = <4250>;
+ adp-cdp-cur = <500>;
+ adp-dcp-cur = <500>;
+ adp-sdp-cur = <400>;
+ ovp-stop = <6500>;
+ ovp-restart = <5800>;
+ chg-timeout = <21600>;
+ chgtimeout-show-full = <0>;
+ chg-rechg-timeout = <5400>;
+ chg-cv-timeout = <3600>;
+ chg-eoc-level = <3>;
+ cccv-default = <0>;
+ chg-end-cur = <80>;
+ otp-high-stop = <1450>;
+ otp-high-restart = <1420>;
+ otp-low-stop = <1000>;
+ otp-low-restart = <1030>;
+ chg-polling-time = <30>;
+ chg-polling-time-fast = <1>;
+ bat-polling-time = <15>;
+ bat-polling-time-fast = <15>;
+ cap-one-per-time = <30>;
+ cap-valid-range-poweron = <30>;
+ temp-support = <1>;
+ temp-adc-ch = <0>;
+ temp-adc-scale = <0>;
+ temp-adc-sample-cnt = <15>;
+ temp-table-mode = <1>;
+ temp-comp-res = <30>; /*30mohm,if temp-table-mode = <1>, use it*/
+ temp-tab-size = <19>;
+ temp-tab-val = <725713 525736 385651 286243 214834 162942
+ 124819 96520 75306 59254 47000 37566
+ 30245 24519 20009 16432 13575 11280 9424>;
+ temp-tab-temp = <750 800 850 900 950 1000 /* temperature + 1000,750 = 1000 + (-250)*/
+ 1050 1100 1150 1200 1250 1300
+ 1350 1400 1450 1500 1550 1600 1650>;
+ fgu-mode = <1>;
+ alm-soc = <5>;
+ alm-vol = <3600>;
+ soft-vbat-uvlo = <3100>;
+ rint = <250>;
+ cnom = <1500>;
+ rsense-real = <215>;
+ rsense-spec = <200>;
+ relax-current = <50>;
+ fgu-cal-ajust = <0>;
+ ocv-tab-size = <21>;
+ ocv-tab-vol = <4276 4220 4175 4126 4073 4030 3967 3930 3891 3860 3832 3809 3789 3773 3760 3746 3733 3707 3675 3652 3400>;
+ ocv-tab-cap = <100 95 90 85 80 75 70 65 60 55 50 45 40 35 30 25 20 15 10 5 0>;
+ cnom-temp-tab = <1020 1800 /*value = 1000 + temp*/
+ 1010 1300
+ 1000 1070
+ 990 1000>;
+ rint-temp-tab = <1020 200 /*value = 1000 + temp*/
+ 1010 450
+ 1000 650
+ 990 1100>;
+ sprd_chg: sprd_chg{
+ compatible = "sprd,sprd_chg";
+ interrupt-parent = <&gic>;
+ interrupts = <0 120 0x0>;
+ };
+ sprd_fgu: sprd_fgu{
+ compatible = "sprd,sprd_fgu";
+ interrupt-parent = <&adi>;
+ interrupts = <4 0x0>;
+ };
+ };
+};