123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 |
- Battery Profile Data
- Battery Data is a collection of battery profile data made available to
- the QPNP Charger and BMS drivers via device tree.
- qcom,battery-data node required properties:
- - qcom,rpull-up-kohm : The vadc pullup resistor's resistance value in kOhms.
- - qcom,vref-batt-therm-uv : The vadc voltage used to make readings.
- For Qualcomm VADCs this should be 1800000uV.
- qcom,battery-data can also include any number of children nodes. These children
- nodes will be treated as battery profile data nodes.
- Profile data node required properties:
- - qcom,fcc-mah : Full charge count of the battery in milliamp-hours
- - qcom,default-rbatt-mohm : The nominal battery resistance value
- - qcom,rbatt-capacitive-mohm : The capacitive resistance of the battery.
- - qcom,flat-ocv-threshold-uv : The threshold under which the battery can be
- considered to be in the flat portion of the discharge
- curve.
- - qcom,max-voltage-uv : The maximum rated voltage of the battery
- - qcom,v-cutoff-uv : The cutoff voltage of the battery at which the device
- should shutdown gracefully.
- - qcom,chg-term-ua : The termination charging current of the battery.
- - qcom,batt-id-kohm : The battery id resistance of the battery. It can be
- used as an array which could support multiple IDs for one battery
- module when the ID resistance of some battery modules goes across
- several ranges.
- Profile data node required subnodes:
- - qcom,fcc-temp-lut : An 1-dimensional lookup table node that encodes
- temperature to fcc lookup. The units for this lookup
- table should be degrees celsius to milliamp-hours.
- - qcom,pc-temp-ocv-lut : A 2-dimensional lookup table node that encodes
- temperature and percent charge to open circuit voltage
- lookup. The units for this lookup table should be
- degrees celsius and percent to millivolts.
- - qcom,rbatt-sf-lut : A 2-dimentional lookup table node that encodes
- temperature and percent charge to battery internal
- resistance lookup. The units for this lookup table
- should be degrees celsius and percent to milliohms.
- Lookup table required properties:
- - qcom,lut-col-legend : An array that encodes the legend of the lookup table's
- columns. The length of this array will determine the
- lookup table's width.
- - qcom,lut-data : An array that encodes the lookup table's data. The size of this
- array should be equal to the size of qcom,lut-col-legend
- multiplied by 1 if it's a 1-dimensional table, or
- the size of qcom,lut-row-legend if it's a 2-dimensional
- table. The data should be in a flattened row-major
- representation.
- Lookup table optional properties:
- - qcom,lut-row-legend : An array that encodes the legend of the lookup table's rows.
- If this property exists, then it is assumed that the
- lookup table is a 2-dimensional table.
- Example:
- In msm8974-mtp.dtsi:
- mtp_batterydata: qcom,battery-data {
- qcom,rpull-up-kohm = <100>;
- qcom,vref-batt-therm-uv = <1800000>;
- /include/ "batterydata-palladium.dtsi"
- /include/ "batterydata-mtp-3000mah.dtsi"
- };
- &pm8941_bms {
- qcom,battery-data = <&mtp_batterydata>;
- };
- In batterydata-palladium.dtsi:
- qcom,palladium-batterydata {
- qcom,fcc-mah = <1500>;
- qcom,default-rbatt-mohm = <236>;
- qcom,rbatt-capacitive-mohm = <50>;
- qcom,flat-ocv-threshold-uv = <3800000>;
- qcom,max-voltage-uv = <4200000>;
- qcom,v-cutoff-uv = <3400000>;
- qcom,chg-term-ua = <100000>;
- qcom,batt-id-kohm = <75>;
- qcom,fcc-temp-lut {
- qcom,lut-col-legend = <(-20) 0 25 40 65>;
- qcom,lut-data = <1492 1492 1493 1483 1502>;
- };
- qcom,pc-temp-ocv-lut {
- qcom,lut-col-legend = <(-20) 0 25 40 65>;
- qcom,lut-row-legend = <100 95 90 85 80 75 70>,
- <65 60 55 50 45 40 35>,
- <30 25 20 15 10 9 8>,
- <7 6 5 4 3 2 1 0>;
- qcom,lut-data = <4173 4167 4163 4156 4154>,
- <4104 4107 4108 4102 4104>,
- <4057 4072 4069 4061 4060>,
- <3973 4009 4019 4016 4020>,
- <3932 3959 3981 3982 3983>,
- <3899 3928 3954 3950 3950>,
- <3868 3895 3925 3921 3920>,
- <3837 3866 3898 3894 3892>,
- <3812 3841 3853 3856 3862>,
- <3794 3818 3825 3823 3822>,
- <3780 3799 3804 3804 3803>,
- <3768 3787 3790 3788 3788>,
- <3757 3779 3778 3775 3776>,
- <3747 3772 3771 3766 3765>,
- <3736 3763 3766 3760 3746>,
- <3725 3749 3756 3747 3729>,
- <3714 3718 3734 3724 3706>,
- <3701 3703 3696 3689 3668>,
- <3675 3695 3682 3675 3662>,
- <3670 3691 3680 3673 3661>,
- <3661 3686 3679 3672 3656>,
- <3649 3680 3676 3669 3641>,
- <3633 3669 3667 3655 3606>,
- <3610 3647 3640 3620 3560>,
- <3580 3607 3596 3572 3501>,
- <3533 3548 3537 3512 3425>,
- <3457 3468 3459 3429 3324>,
- <3328 3348 3340 3297 3172>,
- <3000 3000 3000 3000 3000>;
- };
- qcom,rbatt-sf-lut {
- qcom,lut-col-legend = <(-20) 0 25 40 65>;
- qcom,lut-row-legend = <100 95 90 85 80 75 70>,
- <65 60 55 50 45 40 35>,
- <30 25 20 15 10 9 8>,
- <7 6 5 4 3 2 1 0>;
- qcom,lut-data = <357 187 100 91 91>,
- <400 208 105 94 94>,
- <390 204 106 95 96>,
- <391 201 108 98 98>,
- <391 202 110 98 100>,
- <390 200 110 99 102>,
- <389 200 110 99 102>,
- <393 202 101 93 100>,
- <407 205 99 89 94>,
- <428 208 100 91 96>,
- <455 212 102 92 98>,
- <495 220 104 93 101>,
- <561 232 107 95 102>,
- <634 245 112 98 98>,
- <714 258 114 98 98>,
- <791 266 114 97 100>,
- <871 289 108 95 97>,
- <973 340 124 108 105>,
- <489 241 109 96 99>,
- <511 246 110 96 99>,
- <534 252 111 95 98>,
- <579 263 112 96 96>,
- <636 276 111 95 97>,
- <730 294 109 96 99>,
- <868 328 112 98 104>,
- <1089 374 119 101 115>,
- <1559 457 128 105 213>,
- <12886 1026 637 422 3269>,
- <170899 127211 98968 88907 77102>;
- };
- };
|