| // SPDX-License-Identifier: GPL-2.0-only |
| /* |
| * Battery device tree entries |
| * |
| * Copyright 2020 Google LLC |
| * |
| */ |
| |
| /* R3 ini: @ b/147700292 */ |
| maxim,config { |
| maxim,r3-default-0k { |
| maxim,batt-id-kohm = <0>; |
| maxim,model-version = <1>; |
| maxim,fg-model = /bits/ 16 < |
| 0x8e70 0x8ed0 0xb6f0 0xb8c0 0xbaa0 0xbbf0 0xbd40 0xbe60 |
| 0xbfa0 0xc180 0xc370 0xc680 0xc7f0 0xcfc0 0xd5c0 0xdc70 |
| 0x0020 0x0070 0x0f00 0x1000 0x10c0 0x1250 0x1790 0x17f0 |
| 0x0bf0 0x0bc0 0x0790 0x07f0 0x0750 0x06b0 0x06d0 0x06d0 |
| 0x2000 0x2000 0x2000 0x2000 0x2000 0x2000 0x2000 0x2000 |
| 0x2000 0x2000 0x2000 0x2000 0x2000 0x2000 0x2000 0x2000 |
| >; |
| maxim,fg-params = /bits/ 16 < |
| /* 0x0036 */ 0xf060 /* nIAvgEmpty -> IAvgEmpty */ |
| /* 0x002a */ 0x2039 /* nRelaxCFG -> RelaxCFG */ |
| /* 0x0028 */ 0x2602 /* nLearnCFG -> LearnCFG */ |
| /* 0x001D */ 0x7214 /* Config: */ |
| /* 0x00BB */ 0x0090 /* Config2: OCVQen|DSOCIi */ |
| /* 0x0013 */ 0x5a00 /* nFullSOCThr -> FullSOCThr*/ |
| /* 0x0035 */ 0x0FA0 /* nFullCapRep: 4000 */ |
| /* 0x0018 */ 0x0FA0 /* nDesignCap: 4000 */ |
| /* 0x0046 */ 0x0c80 /* dPacc - 0xc80 for dQaCC=200%, 0x190 for dQaCC=25% */ |
| /* 0x0045 */ 0x07d1 /* dQacc - nFullCapNom/2 == 200%, slow convergence, |
| - nFullCapNom/16 == 25% */ |
| /* 0x0023 */ 0x0FA2 /* nFullCapNom */ |
| /* 0x003A */ 0x965A /* nVEmpty */ |
| /* 0x0012 */ 0x2280 /* nQRTable00 -> QResidual00 */ |
| /* 0x0022 */ 0x1000 /* nQRTable10 -> QResidual10 */ |
| /* 0x0032 */ 0x0681 /* nQRTable20 -> QResidual20 */ |
| /* 0x0042 */ 0x0682 /* nQRTable30 -> QResidual30 */ |
| /* 0x0038 */ 0x003d /* nRcomp0 */ |
| /* 0x0039 */ 0x193b /* nTempco */ |
| /* 0x001E */ 0x0280 /* ICHGTerm */ |
| /* 0x002C */ 0xed51 /* *TGain */ |
| /* 0x002D */ 0x1eba /* *TOFF */ |
| /* 0x00B9 */ 0x0014 /* *TCurve */ |
| /* 0x002B */ 0x09d0 /* *nMiscCfg */ |
| /* 0x0004 */ 0x0000 /* AtRate @ 0x04 */ |
| /* 0x0049 */ 0x2241 /* ConvCFG */ |
| /* 0x0029 */ 0xceb4 /* FilterCFG */ |
| /* 0x003c */ 0x1680 /* TaskPeriod */ |
| >; |
| }; |
| |
| /* COS: 2733 (b/156053400) */ |
| maxim,r3-default-2k { |
| maxim,batt-id-kohm = <2>; |
| maxim,model-version = <1>; |
| maxim,fg-model = /bits/ 16 < |
| 0x8e70 0x8ed0 0xb6f0 0xb8c0 0xbaa0 0xbbf0 0xbd40 0xbe60 |
| 0xbfa0 0xc180 0xc370 0xc680 0xc7f0 0xcfc0 0xd5c0 0xdc70 |
| 0x0020 0x0070 0x0f00 0x1000 0x10c0 0x1250 0x1790 0x17f0 |
| 0x0bf0 0x0bc0 0x0790 0x07f0 0x0750 0x06b0 0x06d0 0x06d0 |
| 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 |
| 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 |
| >; |
| maxim,fg-params = /bits/ 16 < |
| /* 0x0036 */ 0x0CDC /* IAvgEmpty */ |
| /* 0x002a */ 0x2039 /* RelaxCFG */ |
| /* 0x0028 */ 0x2606 /* LearnCFG */ |
| /* 0x001D */ 0x4217 /* Config: */ |
| /* 0x00BB */ 0x0090 /* Config2 */ |
| /* 0x0013 */ 0x5f00 /* FullSOCThr*/ |
| /* 0x0035 */ 0x1000 /* FullCapRep */ |
| /* 0x0018 */ 0x1013 /* nDesignCap */ |
| /* 0x0046 */ 0x0c80 /* dPacc - 200% */ |
| /* 0x0045 */ 0x0100 /* dQacc - FullCapNom >> 4 */ |
| /* 0x0023 */ 0x1000 /* nFullCapNom */ |
| /* 0x003A */ 0xA561 /* nVEmpty */ |
| /* 0x0012 */ 0x2804 /* QResidual00 */ |
| /* 0x0022 */ 0x1282 /* QResidual10 */ |
| /* 0x0032 */ 0x0800 /* QResidual20 */ |
| /* 0x0042 */ 0x0780 /* QResidual30 */ |
| /* 0x0038 */ 0x003d /* Rcomp0 */ |
| /* 0x0039 */ 0x193b /* Tempco */ |
| /* 0x001E */ 0x0280 /* ICHGTerm */ |
| /* 0x002C */ 0xed51 /* *TGain */ |
| /* 0x002D */ 0x1eba /* *TOFF */ |
| /* 0x00B9 */ 0x0014 /* *TCurve */ |
| /* 0x002B */ 0x3870 /* nMiscCfg */ |
| /* 0x0004 */ 0x0000 /* AtRate @ 0x04 */ |
| /* 0x0049 */ 0x2241 /* ConvCFG */ |
| /* 0x0029 */ 0xceb4 /* FilterCFG */ |
| /* 0x003c */ 0x1680 /* TaskPeriod */ |
| >; |
| }; |
| |
| /* LSN: 2729 (b/156053831) */ |
| maxim,r3-default-a0-3k { |
| maxim,batt-id-kohm = <3>; |
| maxim,model-version = <1>; |
| maxim,fg-model = /bits/ 16 < |
| 0x7fc0 0x8030 0xb600 0xb950 0xba70 0xbc10 0xbcf0 0xbec0 |
| 0xc0f0 0xc2e0 0xc520 0xc9a0 0xcd50 0xd120 0xd720 0xdc90 |
| 0x0020 0x0030 0x0a00 0x1820 0x0ec0 0x1790 0x16a0 0x10d0 |
| 0x0ab0 0x0ad0 0x06f0 0x0870 0x05d0 0x0720 0x0620 0x0620 |
| 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 |
| 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 |
| >; |
| maxim,fg-params = /bits/ 16 < |
| /* 0x0036 */ 0x0CDC /* IAvgEmpty */ |
| /* 0x002a */ 0x2039 /* RelaxCFG */ |
| /* 0x0028 */ 0x2606 /* LearnCFG */ |
| /* 0x001D */ 0x4217 /* Config: */ |
| /* 0x00BB */ 0x0090 /* Config2 */ |
| /* 0x0013 */ 0x5f00 /* FullSOCThr*/ |
| /* 0x0035 */ 0x1012 /* FullCapRep */ |
| /* 0x0018 */ 0x1013 /* nDesignCap */ |
| /* 0x0046 */ 0x0c80 /* dPacc - 200% */ |
| /* 0x0045 */ 0x0101 /* dQacc - FullCapNom >> 4 */ |
| /* 0x0023 */ 0x1012 /* nFullCapNom */ |
| /* 0x003A */ 0xA561 /* nVEmpty */ |
| /* 0x0012 */ 0x2702 /* QResidual00 */ |
| /* 0x0022 */ 0x1200 /* QResidual10 */ |
| /* 0x0032 */ 0x0680 /* QResidual20 */ |
| /* 0x0042 */ 0x0500 /* QResidual30 */ |
| /* 0x0038 */ 0x0038 /* Rcomp0 */ |
| /* 0x0039 */ 0x1534 /* Tempco */ |
| /* 0x001E */ 0x0280 /* ICHGTerm */ |
| /* 0x002C */ 0xed51 /* *TGain */ |
| /* 0x002D */ 0x1eba /* *TOFF */ |
| /* 0x00B9 */ 0x0014 /* *TCurve */ |
| /* 0x002B */ 0x3870 /* nMiscCfg */ |
| /* 0x0004 */ 0x0000 /* AtRate @ 0x04 */ |
| /* 0x0049 */ 0x2241 /* ConvCFG */ |
| /* 0x0029 */ 0xceb4 /* FilterCFG */ |
| /* 0x003c */ 0x1680 /* TaskPeriod */ |
| >; |
| }; |
| |
| /* |
| * 2729 |
| * R3 ini: |
| * MODEL: Write16Registers(0x80) |
| * Write16Registers(0x90) |
| * Write16Registers(0xA0) |
| */ |
| maxim,r3-default-a1-3k { |
| maxim,batt-id-kohm = <3>; |
| maxim,model-version = <1>; |
| maxim,fg-model = /bits/ 16 < |
| 0x7dd0 0x9ae0 0xb770 0xb8d0 0xba90 0xbc00 0xbcf0 0xbe90 |
| 0xc0b0 0xc280 0xc520 0xc930 0xcbb0 0xd040 0xd720 0xdbe0 |
| 0x0020 0x0090 0x1220 0x1240 0x0bf0 0x1840 0x17f0 0x11a0 |
| 0x0be0 0x08a0 0x07e0 0x0890 0x06e0 0x0620 0x0700 0x0700 |
| 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 |
| 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 |
| >; |
| maxim,fg-params = /bits/ 16 < |
| /* 0x0036 */ 0x0CDC /* IAvgEmpty */ |
| /* 0x002a */ 0x2039 /* RelaxCFG */ |
| /* 0x0028 */ 0x2606 /* LearnCFG */ |
| /* 0x001D */ 0x4217 /* Config: */ |
| /* 0x00BB */ 0x0090 /* Config2 */ |
| /* 0x0013 */ 0x5f00 /* FullSOCThr*/ |
| /* 0x0035 */ 0x1012 /* FullCapRep */ |
| /* 0x0018 */ 0x1013 /* nDesignCap */ |
| /* 0x0046 */ 0x0c80 /* dPacc - 200% */ |
| /* 0x0045 */ 0x0101 /* dQacc - FullCapNom >> 4 */ |
| /* 0x0023 */ 0x1012 /* nFullCapNom */ |
| /* 0x003A */ 0xA561 /* nVEmpty */ |
| /* 0x0012 */ 0x2d00 /* QResidual00 */ |
| /* 0x0022 */ 0x1480 /* QResidual10 */ |
| /* 0x0032 */ 0x0800 /* QResidual20 */ |
| /* 0x0042 */ 0x0780 /* QResidual30 */ |
| /* 0x0038 */ 0x08A0 /* Rcomp0 */ |
| /* 0x0039 */ 0x1030 /* Tempco */ |
| /* 0x001E */ 0x0280 /* ICHGTerm */ |
| /* 0x002C */ 0xed51 /* *TGain */ |
| /* 0x002D */ 0x1eba /* *TOFF */ |
| /* 0x00B9 */ 0x0014 /* *TCurve */ |
| /* 0x002B */ 0x3870 /* nMiscCfg */ |
| /* 0x0004 */ 0x0000 /* AtRate @ 0x04 */ |
| /* 0x0049 */ 0x2241 /* ConvCFG */ |
| /* 0x0029 */ 0xceb4 /* FilterCFG */ |
| /* 0x003c */ 0x1680 /* TaskPeriod */ |
| >; |
| }; |
| |
| }; |