MAX77654 Ultra-Low Power PMIC Mbed Driver
MAX77654_regs.h@4:77203c01b399, 20 months ago (annotated)
- Committer:
- Okan Sahin
- Date:
- Fri Aug 26 14:57:06 2022 +0300
- Revision:
- 4:77203c01b399
- Parent:
- 0:788f63dcf0a0
fix interrupt_handler_list
use number of interrupts as a size of array.
initialize with NULL.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1 | /******************************************************************************* |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2 | * Copyright(C) Maxim Integrated Products, Inc., All Rights Reserved. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 4 | * Permission is hereby granted, free of charge, to any person obtaining a |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 5 | * copy of this software and associated documentation files(the "Software"), |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 6 | * to deal in the Software without restriction, including without limitation |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 7 | * the rights to use, copy, modify, merge, publish, distribute, sublicense, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 8 | * and/or sell copies of the Software, and to permit persons to whom the |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 9 | * Software is furnished to do so, subject to the following conditions: |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 10 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 11 | * The above copyright notice and this permission notice shall be included |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 12 | * in all copies or substantial portions of the Software. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 13 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 14 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 15 | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 16 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 17 | * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 18 | * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 19 | * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 20 | * OTHER DEALINGS IN THE SOFTWARE. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 21 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 22 | * Except as contained in this notice, the name of Maxim Integrated |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 23 | * Products, Inc.shall not be used except as stated in the Maxim Integrated |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 24 | * Products, Inc.Branding Policy. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 25 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 26 | * The mere transfer of this software does not imply any licenses |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 27 | * of trade secrets, proprietary technology, copyrights, patents, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 28 | * trademarks, maskwork rights, or any other form of intellectual |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 29 | * property whatsoever. Maxim Integrated Products, Inc.retains all |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 30 | * ownership rights. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 31 | ******************************************************************************* |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 32 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 33 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 34 | #ifndef MAX77654_REGS_H_ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 35 | #define MAX77654_REGS_H_ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 36 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 37 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 38 | * @brief INT_GLBL0 Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 39 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 40 | * Address : 0x00 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 41 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 42 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 43 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 44 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 45 | unsigned char gpi0_f : 1; /**< GPI Falling Interrupt. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 46 | Note that "GPI" refers to the GPIO programmed to be an input. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 47 | 0 = No GPI falling edges have occurred since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 48 | 1 = A GPI falling edge has occurred since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 49 | unsigned char gpi0_r : 1; /**< GPI Rising Interrupt. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 50 | Note that "GPI" refers to the GPIO programmed to be an input. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 51 | 0 = No GPI rising edges have occurred since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 52 | 1 = A GPI rising edge has occurred since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 53 | unsigned char nen_f : 1; /**< nEN Falling Interrupt.Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 54 | 0 = No nEN falling edges have occurred since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 55 | 1 = A nEN falling edge as occurred since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 56 | unsigned char nen_r : 1; /**< nEN Rising Interrupt. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 57 | 0 = No nEN rising edges have occurred since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 58 | 1 = A nEN rising edge as occurred since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 59 | unsigned char tjal1_r : 1; /**< Thermal Alarm 1 Rising Interrupt. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 60 | 0 = The junction temperature has not risen above TJAL1 since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 61 | 1 = The junction temperature has risen above TJAL1 since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 62 | unsigned char tjal2_r : 1; /**< Thermal Alarm 2 Rising Interrupt. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 63 | 0 = The junction temperature has not risen above TJAL2 since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 64 | 1 = The junction temperature has risen above TJAL2 since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 65 | unsigned char d0d1_r : 1; /**< LDO Dropout Detector Rising Interrupt. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 66 | 0 = The LDO has not detected dropout since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 67 | 1 = The LDO has detected dropout since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 68 | unsigned char dod0_r : 1; /**< LDO Dropout Detector Rising Interrupt. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 69 | 0 = The LDO has not detected dropout since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 70 | 1 = The LDO has detected dropout since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 71 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 72 | } reg_int_glbl0_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 73 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 74 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 75 | * @brief INT_GLBL1 Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 76 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 77 | * Address : 0x04 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 78 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 79 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 80 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 81 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 82 | unsigned char gpi1_f : 1; /**< GPI Falling Interrupt. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 83 | Note that "GPI" refers to the GPIO programmed to be an input. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 84 | 0 = No GPI falling edges have occurred since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 85 | 1 = A GPI falling edge has occurred since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 86 | unsigned char gpi1_r : 1; /**< GPI Rising Interrupt. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 87 | Note that "GPI" refers to the GPIO programmed to be an input. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 88 | 0 = No GPI rising edges have occurred since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 89 | 1 = A GPI rising edge has occurred since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 90 | unsigned char gpi2_f : 1; /**< GPI Falling Interrupt.Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 91 | 0 = No GPI falling edges have occurred since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 92 | 1 = A GPI falling edge as occurred since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 93 | unsigned char gpi2_r : 1; /**< GPI Rising Interrupt. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 94 | Note that "GPI" refers to the GPIO programmed to be an input. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 95 | 0 = No GPI rising edges have occurred since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 96 | 1 = A GPI rising edge has occurred since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 97 | unsigned char sbb_to : 1; /**< SBB Timeout. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 98 | 0 = NO SBB timeout occurred since the last time this bit was read |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 99 | 1 = SBB timeout occurred since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 100 | unsigned char ldo0_f : 1; /**< LDO0 Fault Interrupt. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 101 | 0 = No fault has occurred on LDO0 since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 102 | 1 = LDO0 has fallen out of regulation since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 103 | unsigned char ldo1_f : 1; /**< LDO1 Fault Interrupt. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 104 | 0 = No fault has occurred on LDO1 since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 105 | 1 = LDO1 has fallen out of regulation since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 106 | unsigned char rsvd : 1; /**< Reserved. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 107 | Unutilized bit. Write to 0. Reads are don't care. Bit 7. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 108 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 109 | } reg_int_glbl1_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 110 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 111 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 112 | * @brief ERCFLAG Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 113 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 114 | * Address : 0x05 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 115 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 116 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 117 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 118 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 119 | unsigned char tovld : 1; /**< Thermal Overload. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 120 | 0 = Thermal overload has not occurred since the last read of this register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 121 | 1 = Thermal overload has occurred since the list read of this register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 122 | This indicates that the junction temperature has exceeded 165ºC. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 123 | unsigned char sysovlo : 1; /**< SYS Domain Overvoltage Lockout. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 124 | 0 = The SYS domain overvoltage lockout has not occurred since this last read of this register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 125 | 1 = The SYS domain overvoltage lockout has occurred since the last read of this register. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 126 | unsigned char sysuvlo : 1; /**< SYS Domain Undervoltage Lockout. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 127 | 0 = The SYS domain undervoltage lockout has not occurred since this last read of this register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 128 | 1 = The SYS domain undervoltage lockout has occurred since the last read of this register. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 129 | unsigned char mrst : 1; /**< Manual Reset Timer. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 130 | 0 = A Manual Reset has not occurred since this last read of this register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 131 | 1 = A Manual Reset has occurred since this last read of this register. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 132 | unsigned char sft_off_f : 1; /**< Software Off Flag. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 133 | 0 = The SFT_OFF function has not occurred since the last read of this register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 134 | 1 = The SFT_OFF function has occurred since the last read of this register. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 135 | unsigned char sft_crst_f: 1; /**< Software Cold Reset Flag. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 136 | 0 = The software cold reset has not occurred since the last read of this register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 137 | 1 = The software cold reset has occurred since the last read of this register. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 138 | unsigned char wdt_off : 1; /**< Watchdog Timer OFF Flag. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 139 | This bit sets when the watchdog timer expires and causes a power-off. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 140 | 0 = Watchdog timer has not caused a power-off since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 141 | 1 = Watchdog timer has expired and caused a power-off since the last time this bit was read. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 142 | unsigned char wdt_rst : 1; /**< Watchdog Timer Reset Flag. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 143 | This bit sets when the watchdog timer expires and causes a power-reset. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 144 | 0 = Watchdog timer has not caused a power-reset since the last time this bit was read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 145 | 1 = Watchdog timer has expired and caused a power-reset since the last time this bit was read.*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 146 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 147 | } reg_ercflag_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 148 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 149 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 150 | * @brief STAT_GLBL Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 151 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 152 | * Address : 0x06 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 153 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 154 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 155 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 156 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 157 | unsigned char stat_irq : 1; /**< Software Version of the nIRQ MOSFET gate drive. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 158 | 0 = unmasked gate drive is logic low |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 159 | 1 = unmasked gate drive is logic high */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 160 | unsigned char stat_en : 1; /**< Debounced Status for the nEN input. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 161 | 0 = nEN is not active (logic high) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 162 | 1 = nEN is active (logic low) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 163 | unsigned char tjal1_s : 1; /**< Thermal Alarm 1 Status. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 164 | 0 = The junction temperature is less than TJAL1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 165 | 1 = The junction temperature is greater than TJAL1 */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 166 | unsigned char tjal2_s : 1; /**< Thermal Alarm 2 Status. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 167 | 0 = The junction temperature is less than TJAL2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 168 | 1 = The junction temperature is greater than TJAL2 */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 169 | unsigned char dod1_s : 1; /**< LDO1 Dropout Detector Rising Status. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 170 | 0 = LDO1 is not in dropout |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 171 | 1 = LDO1 is in dropout */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 172 | unsigned char dod0_s : 1; /**< LDO0 Dropout Detector Rising Status. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 173 | 0 = LDO0 is not in dropout |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 174 | 1 = LDO0 is in dropout */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 175 | unsigned char bok : 1; /**< BOK Interrupt Status. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 176 | 0 = Main Bias is not ready. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 177 | 1 = Main Bias enabled and ready. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 178 | unsigned char didm : 1; /**< Device Identification Bits for Metal Options. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 179 | 0 = MAX77654 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 180 | 1 = Reserved */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 181 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 182 | } reg_stat_glbl_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 183 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 184 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 185 | * @brief INTM_GLBL1 Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 186 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 187 | * Address : 0x08 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 188 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 189 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 190 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 191 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 192 | unsigned char gpi1_fm : 1; /**< GPI Falling Interrupt Mask. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 193 | 0 = Unmasked. If GPI_F goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 194 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 195 | 1 = Masked. nIRQ does not go low due to GPI_F. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 196 | unsigned char gpi1_rm : 1; /**< GPI Rising Interrupt Mask. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 197 | 0 = Unmasked. If GPI_R goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 198 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 199 | 1 = Masked. nIRQ does not go low due to GPI_R. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 200 | unsigned char gpi2_fm : 1; /**< GPI Falling Interrupt Mask. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 201 | 0 = Unmasked. If GPI_F goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 202 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 203 | 1 = Masked. nIRQ does not go low due to GPI_F. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 204 | unsigned char gpi2_rm : 1; /**< GPI Rising Interrupt Mask. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 205 | 0 = Unmasked. If GPI_R goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 206 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 207 | 1 = Masked. nIRQ does not go low due to GPI_R. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 208 | unsigned char sbb_to_m : 1; /**< SBB Timeout Mask. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 209 | 0 = Unmasked. If SBB_TO goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 210 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 211 | 1 = Masked. nIRQ does not go low due to SBB_TO */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 212 | unsigned char ldo0_m : 1; /**< LDO0 Fault Interrupt. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 213 | 0 = Unmasked. If LDO0_F goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 214 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 215 | 1 = Masked. nIRQ does not go low due to LDO0_F. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 216 | unsigned char ldo1_m : 1; /**< LDO1 Fault Interrupt Mask. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 217 | 0 = Unmasked. If LDO1_F goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 218 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 219 | 1 = Masked. nIRQ does not go low due to LDO1_F. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 220 | unsigned char rsvd : 1; /**< Reserved. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 221 | Unutilized bit. Write to 0. Reads are don't care. Bit 7. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 222 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 223 | } reg_intm_glbl1_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 224 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 225 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 226 | * @brief INTM_GLBL0 Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 227 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 228 | * Address : 0x09 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 229 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 230 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 231 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 232 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 233 | unsigned char gpi0_fm : 1; /**< GPI Falling Interrupt Mask. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 234 | 0 = Unmasked. If GPI_F goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 235 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 236 | 1 = Masked. nIRQ does not go low due to GPI_F. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 237 | unsigned char gpi0_rm : 1; /**< GPI Rising Interrupt Mask. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 238 | 0 = Unmasked. If GPI_R goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 239 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 240 | 1 = Masked. nIRQ does not go low due to GPI_R. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 241 | unsigned char nen_fm : 1; /**< nEN Falling Interrupt Mask. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 242 | 0 = Unmasked. If nEN_F goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 243 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 244 | 1 = Masked. nIRQ does not go low due to nEN_F. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 245 | unsigned char nen_rm : 1; /**< nEN Rising Interrupt Mask. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 246 | 0 = Unmasked. If nEN_R goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 247 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 248 | 1 = Masked. nIRQ does not go low due to nEN_R. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 249 | unsigned char tjal1_rm : 1; /**< Thermal Alarm 1 Rising Interrupt Mask. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 250 | 0 = Unmasked. If TJAL1_R goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 251 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 252 | 1 = Masked. nIRQ does not go low due to TJAL1_R. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 253 | unsigned char tjal2_rm : 1; /**< Thermal Alarm 2 Rising Interrupt Mask. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 254 | 0 = Unmasked. If TJAL2_R goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 255 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 256 | 1 = Masked. nIRQ does not go low due to TJAL2_R. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 257 | unsigned char dod1_rm : 1; /**< LDO Dropout Detector Rising Interrupt Mask. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 258 | 0 = Unmasked. If DOD1_R goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 259 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 260 | 1 = Masked. nIRQ does not go low due to DOD1_R. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 261 | unsigned char dod0_rm : 1; /**< LDO Dropout Detector Rising Interrupt Mask. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 262 | 0 = Unmasked. If DOD0_R goes from 0 to 1, then nIRQ goes low. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 263 | nIRQ goes high when all interrupt bits are cleared. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 264 | 1 = Masked. nIRQ does not go low due to DOD0_R. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 265 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 266 | } reg_intm_glbl0_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 267 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 268 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 269 | * @brief CNFG_GLBL Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 270 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 271 | * Address : 0x10 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 272 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 273 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 274 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 275 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 276 | unsigned char sft_ctrl : 2; /**< Software Reset Functions. Bit 1:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 277 | 0b00 = No Action |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 278 | 0b01 = Software Cold Reset (SFT_CRST). The device powers down, resets, and the powers up again. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 279 | 0b10 = Software Off (SFT_OFF). The device powers down, resets, and then remains off and waiting for a wake-up event. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 280 | 0b11 = Factory-Ship Mode Enter (FSM). */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 281 | unsigned char dben_nen : 1; /**< Debounce Timer Enable for the nEN Pin. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 282 | 0 = 500μs Debounce |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 283 | 1 = 30ms Debounce */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 284 | unsigned char nen_mode : 1; /**< nEN Input (ON-KEY) Default Configuration Mode. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 285 | 0 = Push-Button Mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 286 | 1 = Slide-Switch Mode */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 287 | unsigned char sbia_en : 1; /**< Main Bias Enable Software Request. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 288 | 0 = Main Bias not enabled by software. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 289 | Note that the main bias may be on via the on/off controller. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 290 | 1 = Main Bias force enabled by software. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 291 | unsigned char sbia_lpm : 1; /**< Main Bias Low-Power Mode Software Request. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 292 | 0 = Main Bias requested to be in Normal-Power Mode by software. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 293 | 1 = Main Bias request to be in Low-Power Mode by software. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 294 | unsigned char t_mrst : 1; /**< Sets the Manual Reset Time (tMRST). Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 295 | 0 = 8s |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 296 | 1 = 16s */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 297 | unsigned char pu_dis : 1; /**< nEN Internal Pullup Resistor. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 298 | 0 = Strong internal nEN pullup (200kΩ) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 299 | 1 = Weak internal nEN pullup (10MΩ) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 300 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 301 | } reg_cnfg_glbl_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 302 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 303 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 304 | * @brief CNFG_GPIO0 Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 305 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 306 | * Address : 0x11 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 307 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 308 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 309 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 310 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 311 | unsigned char gpo_dir : 1; /**< GPIO Direction. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 312 | 0 = General purpose output (GPO) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 313 | 1 = General purpose input (GPI) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 314 | unsigned char gpo_di : 1; /**< GPIO Digital Input Value. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 315 | 0 = Input logic low |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 316 | 1 = Input logic high */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 317 | unsigned char gpo_drv : 1; /**< General Purpose Output Driver Type. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 318 | This bit is a don't care when DIR = 1 (configured as input) When set for GPO (DIR = 0): |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 319 | 0 = Open-Drain |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 320 | 1 = Push-Pull */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 321 | unsigned char gpo_do : 1; /**< General Purpose Output Data Output. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 322 | This bit is a don't care when DIR = 1 (configured as input). When set for GPO (DIR = 0): |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 323 | 0 = GPIO is output is logic low |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 324 | 1 = GPIO is output logic high when set as push-pull output (DRV = 1). */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 325 | unsigned char dben_gpi : 1; /**< General Purpose Input Debounce Timer Enable. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 326 | 0 = no debounce |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 327 | 1 = 30ms debounce */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 328 | unsigned char alt_gpio0 : 1; /**< Alternate Mode Enable for GPIO0. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 329 | 0 = Standard GPIO. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 330 | 1 = Flexible Power Sequencer Active-High Output for SBB2. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 331 | unsigned char : 1; /**< Bit 6. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 332 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 333 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 334 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 335 | } reg_cnfg_gpio0_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 336 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 337 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 338 | * @brief CNFG_GPIO1 Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 339 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 340 | * Address : 0x12 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 341 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 342 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 343 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 344 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 345 | unsigned char gpo_dir : 1; /**< GPIO Direction. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 346 | 0 = General purpose output (GPO) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 347 | 1 = General purpose input (GPI) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 348 | unsigned char gpo_di : 1; /**< GPIO Digital Input Value. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 349 | 0 = Input logic low |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 350 | 1 = Input logic high */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 351 | unsigned char gpo_drv : 1; /**< General Purpose Output Driver Type. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 352 | This bit is a don't care when DIR = 1 (configured as input) When set for GPO (DIR = 0): |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 353 | 0 = Open-Drain |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 354 | 1 = Push-Pull */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 355 | unsigned char gpo_do : 1; /**< General Purpose Output Data Output. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 356 | This bit is a don't care when DIR = 1 (configured as input). When set for GPO (DIR = 0): |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 357 | 0 = GPIO is output is logic low |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 358 | 1 = GPIO is output logic high when set as push-pull output (DRV = 1). */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 359 | unsigned char dben_gpi : 1; /**< General Purpose Input Debounce Timer Enable. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 360 | 0 = no debounce |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 361 | 1 = 30ms debounce */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 362 | unsigned char alt_gpio1 : 1; /**< Alternate Mode Enable for GPIO1. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 363 | 0 = Standard GPIO. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 364 | 1 = SBB2 Enable. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 365 | unsigned char rsvd : 2; /**< Reserved. Bit 7:6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 366 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 367 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 368 | } reg_cnfg_gpio1_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 369 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 370 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 371 | * @brief CNFG_GPIO2 Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 372 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 373 | * Address : 0x13 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 374 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 375 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 376 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 377 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 378 | unsigned char gpo_dir : 1; /**< GPIO Direction. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 379 | 0 = General purpose output (GPO) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 380 | 1 = General purpose input (GPI) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 381 | unsigned char gpo_di : 1; /**< GPIO Digital Input Value. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 382 | 0 = Input logic low |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 383 | 1 = Input logic high */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 384 | unsigned char gpo_drv : 1; /**< General Purpose Output Driver Type. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 385 | This bit is a don't care when DIR = 1 (configured as input) When set for GPO (DIR = 0): |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 386 | 0 = Open-Drain |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 387 | 1 = Push-Pull */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 388 | unsigned char gpo_do : 1; /**< General Purpose Output Data Output. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 389 | This bit is a don't care when DIR = 1 (configured as input). When set for GPO (DIR = 0): |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 390 | 0 = GPIO is output is logic low |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 391 | 1 = GPIO is output logic high when set as push-pull output (DRV = 1). */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 392 | unsigned char dben_gpi : 1; /**< General Purpose Input Debounce Timer Enable. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 393 | 0 = no debounce |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 394 | 1 = 30ms debounce */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 395 | unsigned char alt_gpio2 : 1; /**< Alternate Mode Enable for GPIO2. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 396 | 0 = Standard GPIO. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 397 | 1 = Bias LPM mode enable. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 398 | unsigned char rsvd : 2; /**< Reserved. Bit 7:6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 399 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 400 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 401 | } reg_cnfg_gpio2_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 402 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 403 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 404 | * @brief CID Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 405 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 406 | * Address : 0x14 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 407 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 408 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 409 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 410 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 411 | unsigned char cid_3_0 : 4; /**< Bits 0 to 3 of the Chip Identification Code. Bit 3:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 412 | The Chip Identification Code refers to a set of reset values in the register map, or the "OTP configuration.". */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 413 | unsigned char : 3; /**< Bit 6:4. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 414 | unsigned char cid_7 : 1; /**< Bit 4 of the Chip Identification Code. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 415 | The Chip Identification Code refers to a set of reset values in the register map, or the "OTP configuration.". */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 416 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 417 | } reg_cid_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 418 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 419 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 420 | * @brief CNFG_WDT Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 421 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 422 | * Address : 0x17 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 423 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 424 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 425 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 426 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 427 | unsigned char wdt_lock : 1; /**< Factory-Set Safety Bit for the Watchdog Timer. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 428 | 0 = Watchdog timer can be enabled and disabled with WDT_EN. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 429 | 1 = Watchdog timer can not be disabled with WDT_EN. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 430 | However, WDT_EN can still be used to enable the watchdog timer. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 431 | unsigned char wdt_en : 1; /**< Watchdog Timer Enable. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 432 | 0 = Watchdog timer is not enabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 433 | 1 = Watchdog timer is enabled. The timer will expire if not reset by setting WDT_CLR. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 434 | unsigned char wdt_clr : 1; /**< Watchdog Timer Clear Control. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 435 | 0 = Watchdog timer period is not reset. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 436 | 1 = Watchdog timer is reset back to tWD. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 437 | unsigned char wdt_mode : 1; /**< Watchdog Timer Expired Action. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 438 | 0 = Watchdog timer expire causes power-off. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 439 | 1 = Watchdog timer expire causes power-reset. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 440 | unsigned char wdt_per : 2; /**< Watchdog Timer Period. Bit 5:4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 441 | 0b00 = 16 seconds 0b01 = 32 seconds |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 442 | 0b10 = 64 seconds 0b11 = 128 seconds. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 443 | unsigned char rsvd : 2; /**< Reserved. Bit 7:6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 444 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 445 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 446 | } reg_cnfg_wdt_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 447 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 448 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 449 | * @brief INT_CHG Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 450 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 451 | * Address : 0x01 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 452 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 453 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 454 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 455 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 456 | unsigned char thm_i : 1; /**< Thermistor related interrupt. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 457 | 0 = The bits in THM_DTLS[2:0] have not changed since the last time this bit was read |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 458 | 1 = The bits in THM_DTLS[2:0] have changed since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 459 | unsigned char chg_i : 1; /**< Charger related interrupt. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 460 | 0 = The bits in CHG_DTLS[3:0] have not changed since the last time this bit was read |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 461 | 1 = The bits in CHG_DTLS[3:0] have changed since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 462 | unsigned char chgin_i : 1; /**< CHGIN related interrupt. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 463 | 0 = The bits in CHGIN_DTLS[1:0] have not changed since the last time this bit was read |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 464 | 1 = The bits in CHGIN_DTLS[1:0] have changed since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 465 | unsigned char tj_reg_i : 1; /**< Die junction temperature regulation interrupt. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 466 | 0 = The die temperature has not exceeded TJ-REG since the last time this bit was read |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 467 | 1 = The die temperature has exceeded TJ-REG since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 468 | unsigned char chgin_ctrl_i : 1; /**< CHGIN control-loop related interrupt. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 469 | 0 = Neither the VCHGIN_MIN_STAT nor the ICHGIN_LIM_STAT bits have changed since the last time this bit was read |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 470 | 1 = The VCHGIN_MIN_STAT or ICHGIN_LIM_STAT bits have changed since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 471 | unsigned char sys_ctrl_i : 1; /**< Minimum System Voltage Regulation-loop related interrupt. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 472 | 0 = The minimum system voltage regulation loop has not engaged since the last time this bit was read |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 473 | 1 = The minimum system voltage regulation loop has engaged since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 474 | unsigned char sys_cnfg_i : 1; /**< System voltage configuration error interrupt. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 475 | 0 = The bit combination in CHG_CV has not been forced to change since the last time this bit was read |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 476 | 1 = The bit combination in CHG_CV has been forced to change to ensure VSYS-REG = VFAST-CHG + 200mV |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 477 | since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 478 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 479 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 480 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 481 | } reg_int_chg_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 482 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 483 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 484 | * @brief STAT_CHG_A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 485 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 486 | * Address : 0x02 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 487 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 488 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 489 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 490 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 491 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 492 | unsigned char thm_dtls : 3; /**< Battery Temperature Details. Bit 2:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 493 | 0b000 = Thermistor is disabled (THM_EN = 0) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 494 | 0b001 = Battery is cold as programmed by THM_COLD[1:0] If thermistor and charger are enabled while the battery is cold, a battery temperature fault will occur. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 495 | 0b010 = Battery is cool as programmed by THM_COOL[1:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 496 | 0b011 = Battery is warm as programmed by THM_WARM[1:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 497 | 0b100 = Battery is hot as programmed by THM_HOT[1:0]. If thermistor and charger are enabled while the battery is hot, a battery temperature fault will occur. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 498 | 0b101 = Battery is in the normal temperature region |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 499 | 0b110 - 0b111 = reserved */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 500 | unsigned char tj_reg_stat : 1; /**< Maximum Junction Temperature Regulation Loop Status. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 501 | 0 = The maximum junction temperature regulation loop is not engaged |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 502 | 1 = The maximum junction temperature regulation loop has engaged to regulate the junction temperature to less than TJ-REG */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 503 | unsigned char vsys_min_stat : 1; /**< Minimum System Voltage Regulation Loop Status. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 504 | 0 = The minimum system voltage regulation loop is not enganged |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 505 | 1 = The minimum system voltage regulation loop is engaged to regulate VSYS ≥ VSYS-MIN */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 506 | unsigned char ichgin_lim_stat : 1; /**< Input Current Limit Loop Status. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 507 | 0 = The CHGIN current limit loop is not engaged |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 508 | 1 = The CHGIN current limit loop has engaged to regulate ICHGIN ≤ ICHGIN-LIM */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 509 | unsigned char vchgin_min_stat : 1; /**< Minimum Input Voltage Regulation Loop Status. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 510 | 0 = The minimum CHGIN voltage regulation loop is not engaged |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 511 | 1 = The minimum CHGIN voltage regulation loop has engaged to regulate VCHGIN ≥ VCHGIN-MIN */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 512 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 513 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 514 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 515 | } reg_stat_chg_a_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 516 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 517 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 518 | * @brief STAT_CHG_B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 519 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 520 | * Address : 0x03 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 521 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 522 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 523 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 524 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 525 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 526 | unsigned char time_sus : 1; /**< Time Suspend Indicator. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 527 | 0 = The charger's timers are either not active, or not suspended |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 528 | 1 = The charger's active timer is suspended due to one of three reasons: |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 529 | charge current dropped below 20% of IFAST-CHG while the charger state machine is in FAST CHARGE CC mode, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 530 | the charger is in SUPPLEMENT mode, or the charger state machine is in BATTERY TEMPERATURE FAULT mode. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 531 | unsigned char chg : 1; /**< Quick Charger Status. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 532 | 0 = Charging is not happening |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 533 | 1 = Charging is happening */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 534 | unsigned char chgin_dtls : 2; /**< CHGIN Status Detail. Bit 3:2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 535 | 0b00 = The CHGIN input voltage is below the UVLO threshold (VCHGIN < VUVLO) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 536 | 0b01 = The CHGIN input voltage is above the OVP threshold (VCHGIN > VOVP) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 537 | 0b10 = The CHGIN input is being debounced (no power accepted from CHGIN during debounce) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 538 | 0b11 = The CHGIN input is okay and debounced */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 539 | unsigned char chg_dtls : 4; /**< Charger Details. Bit 7:4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 540 | 0b0000 = Off |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 541 | 0b0001 = Prequalification mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 542 | 0b0010 = Fast-charge constant-current (CC) mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 543 | 0b0011 = JEITA modified fast-charge constant-current mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 544 | 0b0100 = Fast-charge constant-voltage (CV) mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 545 | 0b0101 = JEITA modified fast-charge constant-voltage mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 546 | 0b0110 = Top-off mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 547 | 0b0111 = JEITA modified top-off mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 548 | 0b1000 = Done |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 549 | 0b1001 = JEITA modified done (done was entered through the JEITA-modified fast-charge states) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 550 | 0b1010 = Prequalification timer fault |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 551 | 0b1011 = Fast-charge timer fault |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 552 | 0b1100 = Battery temperature fault |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 553 | 0b1101 - 0b1111 = reserved */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 554 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 555 | } reg_stat_chg_b_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 556 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 557 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 558 | * @brief INT_M_CHG Register |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 559 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 560 | * Address : 0x07 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 561 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 562 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 563 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 564 | struct { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 565 | unsigned char thm_m : 1; /**< Setting this bit prevents the THM_I bit from causing hardware IRQs. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 566 | 0 = THM_I is not masked |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 567 | 1 = THM_I is masked */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 568 | unsigned char chg_m : 1; /**< Setting this bit prevents the CHG_I bit from causing hardware IRQs. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 569 | 0 = CHG_I is not masked |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 570 | 1 = CHG_I is masked */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 571 | unsigned char chgin_m : 1; /**< Setting this bit prevents the CHGIN_I bit from causing hardware IRQs. Bit 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 572 | 0 = CHGIN_I is not masked |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 573 | 1 = CHGIN_I is masked */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 574 | unsigned char tj_reg_m : 1; /**< Setting this bit prevents the TJREG_I bit from causing hardware IRQs. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 575 | 0 = TJREG_I is not masked |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 576 | 1 = TJREG_I is masked */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 577 | unsigned char chgin_ctrl_m : 1; /**< Setting this bit prevents the CHGIN_CTRL_I bit from causing hardware IRQs. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 578 | 0 = CHGIN_CTRL_I is not masked |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 579 | 1 = CHGIN_CTRL_I is masked */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 580 | unsigned char sys_ctrl_m : 1; /**< Setting this bit prevents the SYS_CTRL_I bit from causing hardware IRQs. Bit 5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 581 | 0 = SYS_CTRL_I is not masked |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 582 | 1 = SYS_CTRL_I is masked */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 583 | unsigned char sys_cnfg_m : 1; /**< Setting this bit prevents the SYS_CNFG_I bit from causing hardware IRQs. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 584 | 0 = SYS_CNFG_I is not masked |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 585 | 1 = SYS_CNFG_I is masked |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 586 | since the last time this bit was read */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 587 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 588 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 589 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 590 | } reg_int_m_chg_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 591 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 592 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 593 | * @brief CNFG_CHG_A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 594 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 595 | * Address : 0x20 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 596 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 597 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 598 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 599 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 600 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 601 | unsigned char thm_cold : 2; /**< Sets the VCOLD JEITA Temperature Threshold. Bit 1:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 602 | 0b00 = VCOLD = 1.024V (-10ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 603 | 0b01 = VCOLD = 0.976V (-5ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 604 | 0b10 = VCOLD = 0.923V (0ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 605 | 0b11 = VCOLD = 0.867V (5ºC for β = 3380K) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 606 | unsigned char thm_cool : 2; /**< Sets the VCOOL JEITA Temperature Threshold. Bit 3:2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 607 | 0b00 = VCOOL = 0.923V (0ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 608 | 0b01 = VCOOL = 0.867V (5ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 609 | 0b10 = VCOOL = 0.807V (10ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 610 | 0b11 = VCOOL = 0.747V (15ºC for β = 3380K) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 611 | unsigned char thm_warm : 2; /**< Sets the VWARM JEITA Temperature Threshold. Bit 5:4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 612 | 0b00 = VWARM = 0.511V (35ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 613 | 0b01 = VWARM = 0.459V (40ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 614 | 0b10 = VWARM = 0.411V (45ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 615 | 0b11 = VWARM = 0.367V (50ºC for β = 3380K) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 616 | unsigned char thm_hot : 2; /**< Sets the VHOT JEITA Temperature Threshold. Bit 7:6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 617 | 0b00 = VHOT = 0.411V (45ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 618 | 0b01 = VHOT = 0.367V (50ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 619 | 0b10 = VHOT = 0.327V (55ºC for β = 3380K) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 620 | 0b11 = VHOT = 0.291V (60ºC for β = 3380K) */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 621 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 622 | } reg_cnfg_chg_a_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 623 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 624 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 625 | * @brief CNFG_CHG_B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 626 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 627 | * Address : 0x21 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 628 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 629 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 630 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 631 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 632 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 633 | unsigned char chg_en : 1; /**< Charger Enable. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 634 | 0 = the battery charger is disabled |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 635 | 1 = the battery charger is enabled */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 636 | unsigned char i_pq : 1; /**< Sets the prequalification charge current (IPQ) as a percentage of IFAST-CHG. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 637 | 0 = 10% 1 = 20% */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 638 | unsigned char ichgin_lim : 3; /**< CHGIN Input Current Limit (ICHGIN-LIM). Bit 4:2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 639 | 0b000 = 95mA 0b001 = 190mA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 640 | 0b010 = 285mA 0b011 = 380mA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 641 | 0b100 = 475mA 0b101 0b111 = Reserved. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 642 | unsigned char vchgin_min : 3; /**< Minimum CHGIN regulation voltage (VCHGIN-MIN). Bit 7:5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 643 | 0b000 = 4.0V 0b001 = 4.1V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 644 | 0b010 = 4.2V 0b011 = 4.3V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 645 | 0b100 = 4.4V 0b101 = 4.5V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 646 | 0b110 = 4.6V 0b111 = 4.7V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 647 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 648 | } reg_cnfg_chg_b_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 649 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 650 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 651 | * @brief CNFG_CHG_C |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 652 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 653 | * Address : 0x22 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 654 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 655 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 656 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 657 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 658 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 659 | unsigned char t_topoff : 3; /**< Top-off timer value (tTO). Bit 2:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 660 | 0b000 = 0 minutes 0b001 = 5 minutes |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 661 | 0b010 = 10 minutes 0b011 = 15 minutes |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 662 | 0b100 = 20 minutes 0b101 = 25 minutes |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 663 | 0b110 = 30 minutes 0b111 = 35 minutes */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 664 | unsigned char i_term : 2; /**< Charger Termination Current (ITERM). Bit 4:3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 665 | 00 = 5% 01 = 7.5% |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 666 | 10 = 10% 11 = 15% */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 667 | unsigned char chg_pq : 3; /**< Battery prequalification voltage threshold (VPQ). Bit 7:5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 668 | 0b000 = 2.3V 0b001 = 2.4V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 669 | 0b010 = 2.5V 0b011 = 2.6V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 670 | 0b100 = 2.7V 0b101 = 2.8V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 671 | 0b110 = 2.9V 0b111 = 3.0V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 672 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 673 | } reg_cnfg_chg_c_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 674 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 675 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 676 | * @brief CNFG_CHG_D |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 677 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 678 | * Address : 0x23 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 679 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 680 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 681 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 682 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 683 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 684 | unsigned char vsys_reg : 5; /**< System voltage regulation (VSYS-REG). Bit 4:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 685 | 0x0 = 4.100V 0x1 = 4.125V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 686 | 0x2 = 4.150V ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 687 | 0x1B = 4.775V 0x1C - 0x1F = 4.800V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 688 | unsigned char tj_reg : 3; /**< Sets the die junction temperature regulation point, TJ-REG. Bit 7:5. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 689 | 0b000 = 60ºC 0b001 = 70ºC |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 690 | 0b010 = 80ºC 0b011 = 90ºC |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 691 | 0b100 - 0b111 = 100ºC */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 692 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 693 | } reg_cnfg_chg_d_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 694 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 695 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 696 | * @brief CNFG_CHG_E |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 697 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 698 | * Address : 0x25 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 699 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 700 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 701 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 702 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 703 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 704 | unsigned char t_fast_chg : 2; /**< System voltage regulation (VSYS-REG). Bit 1:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 705 | 0b00 = timer disabled 0b01 = 3 hours |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 706 | 0b10 = 5 hours 0b11 = 7 hours */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 707 | unsigned char chg_cc : 6; /**< Sets the fast-charge constant current value, IFAST-CHG. Bit 7:2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 708 | 0x0 = 7.5mA 0x1 = 15.0mA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 709 | 0x2 = 22.5mA ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 710 | 0x26 = 292.5mA 0x27 - 0x3F = 300.0mA */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 711 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 712 | } reg_cnfg_chg_e_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 713 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 714 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 715 | * @brief CNFG_CHG_F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 716 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 717 | * Address : 0x25 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 718 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 719 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 720 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 721 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 722 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 723 | unsigned char : 1; /**< Bit 0*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 724 | unsigned char thm_en : 1; /**< Thermistor enable bit. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 725 | 0 = Thermistor is disabled |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 726 | 1 = Thermistor is enabled */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 727 | unsigned char chg_cc_jeita : 6; /**< Sets IFAST-CHG-JEITA for when the battery is either cool or warm as defined |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 728 | by the VCOOL and VWARM temperature thresholds. Bit 7:2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 729 | 0x0 = 7.5mA 0x1 = 15.0mA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 730 | 0x2 = 22.5mA ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 731 | 0x26 = 292.5mA 0x27 - 0x3F = 300.0mA */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 732 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 733 | } reg_cnfg_chg_f_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 734 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 735 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 736 | * @brief CNFG_CHG_G |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 737 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 738 | * Address : 0x26 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 739 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 740 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 741 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 742 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 743 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 744 | unsigned char rsvd : 1; /**< Reserved. Bit 0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 745 | Unutilized bit. Write to 0. Reads are don't care.*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 746 | unsigned char usbs : 1; /**< Setting this bit places CHGIN in USB suspend mode. Bit 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 747 | 0 = CHGIN is not suspended and may draw current from an adapter source |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 748 | 1 = CHGIN is suspended and may draw no current from an adapter source */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 749 | unsigned char chg_cv : 6; /**< Sets fast-charge battery regulation voltage, VFAST-CHG. Bit 7:2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 750 | 0x0 = 3.600V 0x1 = 3.625V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 751 | 0x2 = 3.650V ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 752 | 0x27 = 4.575V 0x28 - 0x3F = 4.600V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 753 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 754 | } reg_cnfg_chg_g_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 755 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 756 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 757 | * @brief CNFG_CHG_H |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 758 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 759 | * Address : 0x27 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 760 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 761 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 762 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 763 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 764 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 765 | unsigned char rsvd : 2; /**< Reserved. Bit 1:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 766 | Unutilized bit. Write to 0. Reads are don't care.*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 767 | unsigned char chg_cv_jeita : 6; /**< Sets fast-charge battery regulation voltage, VFAST-CHG. Bit 7:2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 768 | 0x0 = 3.600V 0x1 = 3.625V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 769 | 0x2 = 3.650V ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 770 | 0x27 = 4.575V 0x28 - 0x3F = 4.600V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 771 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 772 | } reg_cnfg_chg_h_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 773 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 774 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 775 | * @brief CNFG_CHG_I |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 776 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 777 | * Address : 0x28 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 778 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 779 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 780 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 781 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 782 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 783 | unsigned char mux_sel : 4; /**< Selects the analog channel to connect to AMUX. Bit 3:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 784 | 0b0000 = Multiplexer is disabled and AMUX is high-impedance. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 785 | 0b0001 = CHGIN voltage monitor. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 786 | 0b0010 = CHGIN current monitor. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 787 | 0b0011 = BATT voltage monitor. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 788 | 0b0100 = BATT charge current monitor. Valid only while battery charging is happening (CHG = 1). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 789 | 0b0101 = BATT discharge current monitor normal measurement. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 790 | 0b0110 = BATT discharge current monitor nulling measurement. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 791 | 0b0111 = THM voltage monitor 0b1000 = TBIAS voltage monitor |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 792 | 0b1001 = AGND voltage monitor (through 100Ω pull-down resistor) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 793 | 0b1010 - 0b1111 = SYS voltage monitor */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 794 | unsigned char imon_dischg_scale : 4; /**< Selects the battery discharge current full-scale current value. Bit 7:4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 795 | 0x0 = 8.2mA 0x1 = 40.5mA 0x2 = 72.3mA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 796 | 0x3 = 103.4mA 0x4 = 134.1mA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 797 | 0x5 = 164.1mA 0x6 = 193.7mA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 798 | 0x7 = 222.7mA 0x8 = 251.2mA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 799 | 0x9 = 279.3mA 0xA - 0xF = 300.0mA */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 800 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 801 | } reg_cnfg_chg_i_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 802 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 803 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 804 | * @brief CNFG_SBB0_A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 805 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 806 | * Address : 0x29 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 807 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 808 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 809 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 810 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 811 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 812 | unsigned char tv_sbb0 : 7; /**< SIMO Buck-Boost Channel 0 Target Output Voltage. Bit 6:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 813 | 0x00 = 0.800V 0x01 = 0.850V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 814 | 0x02 = 0.900V 0x03 = 0.950V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 815 | 0x04 = 1.000V 0x05 = 1.050V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 816 | 0x06 = 1.100V ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 817 | 0x5C = 5.400V 0x5D = 5.450V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 818 | 0x5E - 0x7F = 5.500V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 819 | unsigned char : 1; /**< Bit 7. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 820 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 821 | } reg_cnfg_sbb0_a_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 822 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 823 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 824 | * @brief CNFG_SBB0_B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 825 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 826 | * Address : 0x2A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 827 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 828 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 829 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 830 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 831 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 832 | unsigned char en_sbb0 : 3; /**< Enable Control for SIMO Buck-Boost Channel 0, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 833 | selecting either an FPS slot the channel powers-up and powers-down in |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 834 | or whether the channel is forced on or off. Bit 2:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 835 | 0b000 = FPS slot 0 0b001 = FPS slot 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 836 | 0b010 = FPS slot 2 0b011 = FPS slot 3 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 837 | 0b100 = Off irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 838 | 0b101 = same as 0b100 0b110 = On irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 839 | 0b111 = same as 0b110 */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 840 | unsigned char ade_sbb0 : 1; /**< SIMO Buck-Boost Channel 0 Active-Discharge Enable. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 841 | 0 = The active discharge function is disabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 842 | When SBB0 is disabled, its discharge rate is a function of the output capacitance and the external load. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 843 | 1 = The active discharge function is enabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 844 | When SBB0 is disabled, an internal resistor (RAD_SBB0) is activated from SBB0 to PGND to help the output voltage discharge. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 845 | unsigned char ip_sbb0 : 2; /**< SIMO Buck-Boost Channel 0 Peak Current Limit. Bit 5:4 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 846 | 0b00 = 1.000A 0b01 = 0.750A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 847 | 0b10 = 0.500A 0b11 = 0.333A*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 848 | unsigned char op_mode : 1; /**< Operation mode of SBB0. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 849 | 0 = Buck-Boost Mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 850 | 1 = Buck Mode*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 851 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 852 | Unutilized bit. Write to 0. Reads are don't care.*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 853 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 854 | } reg_cnfg_sbb0_b_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 855 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 856 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 857 | * @brief CNFG_SBB1_A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 858 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 859 | * Address : 0x2B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 860 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 861 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 862 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 863 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 864 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 865 | unsigned char tv_sbb1 : 7; /**< SIMO Buck-Boost Channel 1 Target Output Voltage. Bit 6:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 866 | 0x00 = 0.800V 0x01 = 0.850V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 867 | 0x02 = 0.900V 0x03 = 0.950V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 868 | 0x04 = 1.000V 0x05 = 1.050V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 869 | 0x06 = 1.100V ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 870 | 0x5C = 5.400V 0x5D = 5.450V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 871 | 0x5E - 0x7F = 5.500V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 872 | unsigned char : 1; /**< Bit 7. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 873 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 874 | } reg_cnfg_sbb1_a_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 875 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 876 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 877 | * @brief CNFG_SBB1_B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 878 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 879 | * Address : 0x2C |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 880 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 881 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 882 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 883 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 884 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 885 | unsigned char en_sbb1 : 3; /**< Enable Control for SIMO Buck-Boost Channel 1, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 886 | selecting either an FPS slot the channel powers-up and powers-down in |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 887 | or whether the channel is forced on or off. Bit 2:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 888 | 0b000 = FPS slot 0 0b001 = FPS slot 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 889 | 0b010 = FPS slot 2 0b011 = FPS slot 3 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 890 | 0b100 = Off irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 891 | 0b101 = same as 0b100 0b110 = On irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 892 | 0b111 = same as 0b110 */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 893 | unsigned char ade_sbb1 : 1; /**< SIMO Buck-Boost Channel 1 Active-Discharge Enable. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 894 | 0 = The active discharge function is disabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 895 | When SBB0 is disabled, its discharge rate is a function of the output capacitance and the external load. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 896 | 1 = The active discharge function is enabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 897 | When SBB0 is disabled, an internal resistor (RAD_SBB0) is activated from SBB0 to PGND to help the output voltage discharge. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 898 | unsigned char ip_sbb1 : 2; /**< SIMO Buck-Boost Channel 1 Peak Current Limit. Bit 5:4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 899 | 0b00 = 1.000A 0b01 = 0.750A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 900 | 0b10 = 0.500A 0b11 = 0.333A*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 901 | unsigned char op_mode : 1; /**< Operation mode of SBB1. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 902 | 0 = Buck-Boost Mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 903 | 1 = Buck Mode*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 904 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 905 | Unutilized bit. Write to 0. Reads are don't care.*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 906 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 907 | } reg_cnfg_sbb1_b_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 908 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 909 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 910 | * @brief CNFG_SBB2_A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 911 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 912 | * Address : 0x2D |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 913 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 914 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 915 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 916 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 917 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 918 | unsigned char tv_sbb2 : 7; /**< SIMO Buck-Boost Channel 2 Target Output Voltage. Bit 6:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 919 | 0x00 = 0.800V 0x01 = 0.850V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 920 | 0x02 = 0.900V 0x03 = 0.950V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 921 | 0x04 = 1.000V 0x05 = 1.050V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 922 | 0x06 = 1.100V ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 923 | 0x5C = 5.400V 0x5D = 5.450V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 924 | 0x5E - 0x7F = 5.500V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 925 | unsigned char : 1; /**< Bit 7. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 926 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 927 | } reg_cnfg_sbb2_a_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 928 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 929 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 930 | * @brief CNFG_SBB2_B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 931 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 932 | * Address : 0x2E |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 933 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 934 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 935 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 936 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 937 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 938 | unsigned char en_sbb2 : 3; /**< Enable Control for SIMO Buck-Boost Channel 2, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 939 | selecting either an FPS slot the channel powers-up and powers-down in |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 940 | or whether the channel is forced on or off. Bit 2:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 941 | 0b000 = FPS slot 0 0b001 = FPS slot 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 942 | 0b010 = FPS slot 2 0b011 = FPS slot 3 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 943 | 0b100 = Off irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 944 | 0b101 = same as 0b100 0b110 = On irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 945 | 0b111 = same as 0b110 */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 946 | unsigned char ade_sbb2 : 1; /**< SIMO Buck-Boost Channel 2 Active-Discharge Enable Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 947 | 0 = The active discharge function is disabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 948 | When SBB0 is disabled, its discharge rate is a function of the output capacitance and the external load. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 949 | 1 = The active discharge function is enabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 950 | When SBB0 is disabled, an internal resistor (RAD_SBB0) is activated from SBB0 to PGND to help the output voltage discharge. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 951 | unsigned char ip_sbb2 : 2; /**< SIMO Buck-Boost Channel 2 Peak Current Limit. Bit 5:4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 952 | 0b00 = 1.000A 0b01 = 0.750A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 953 | 0b10 = 0.500A 0b11 = 0.333A*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 954 | unsigned char op_mode : 1; /**< Operation mode of SBB2. Bit 6. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 955 | 0 = Buck-Boost Mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 956 | 1 = Buck Mode*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 957 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 958 | Unutilized bit. Write to 0. Reads are don't care.*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 959 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 960 | } reg_cnfg_sbb2_b_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 961 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 962 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 963 | * @brief CNFG_SBB_TOP |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 964 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 965 | * Address : 0x2F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 966 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 967 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 968 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 969 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 970 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 971 | unsigned char drv_sbb : 2; /**< SIMO Buck-Boost (all channels) Drive Strength Trim. Bit 1:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 972 | 0b00 = fastest transition time |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 973 | 0b01 = a little slower than 0b00 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 974 | 0b10 = a little slower than 0b01 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 975 | 0b11 = a little slower than 0b10 */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 976 | unsigned char : 5; /**< Bit 6:2. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 977 | unsigned char ichgin_lim_def : 1; /**< Changes how CNFG_CHG_B.ICHGIN_LIM is interpreted. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 978 | See CNFG_CHG_B.ICHGIN_LIM for more details.*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 979 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 980 | } reg_cnfg_sbb_top_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 981 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 982 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 983 | * @brief CNFG_LDO0_A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 984 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 985 | * Address : 0x38 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 986 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 987 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 988 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 989 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 990 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 991 | unsigned char tv_ldo0 : 7; /**< LDO Target Output Voltage This 7-bit configuration is a linear transfer function |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 992 | that starts at 0.8V and ends at 3.975V, with 25mV increments. Bit 6:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 993 | 0x00 = 0.800V 0x01 = 0.825V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 994 | 0x02 = 0.850V 0x03 = 0.875V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 995 | 0x04 = 0.900V 0x05 = 0.925V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 996 | 0x06 = 0.950V ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 997 | 0x7D = 3.925V 0x7E = 3.950V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 998 | 0x7F = 3.975V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 999 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1000 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1001 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1002 | } reg_cnfg_ldo0_a_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1003 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1004 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1005 | * @brief CNFG_LDO0_B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1006 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1007 | * Address : 0x39 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1008 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1009 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1010 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1011 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1012 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1013 | unsigned char en_ldo0 : 3; /**< Enable Control for LDO0, selecting either an FPS slot the channel powers-up and |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1014 | powers-down in or whether the channel is forced on or off. Bit 2:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1015 | 0b000 = FPS slot 0 0b001 = FPS slot 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1016 | 0b010 = FPS slot 2 0b011 = FPS slot 3 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1017 | 0b100 = Off irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1018 | 0b101 = same as 0b100 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1019 | 0b110 = On irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1020 | 0b111 = same as 0b110 */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1021 | unsigned char ade_ldo0 : 1; /**< LDO0 Active-Discharge Enable. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1022 | 0 = The active discharge function is disabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1023 | 1 = The active discharge function is enabled. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1024 | unsigned char ldo0_md : 1; /**< Operation mode of LDO0. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1025 | 0 = Low Dropout Linear Regulator (LDO) Mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1026 | 1 = Load Switch (LSW) Mode */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1027 | unsigned char : 3; /**< Bit 7:5. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1028 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1029 | } reg_cnfg_ldo0_b_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1030 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1031 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1032 | * @brief CNFG_LDO1_A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1033 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1034 | * Address : 0x3A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1035 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1036 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1037 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1038 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1039 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1040 | unsigned char tv_ldo1 : 7; /**< LDO Target Output Voltage This 7-bit configuration is a linear transfer function |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1041 | that starts at 0.8V and ends at 3.975V, with 25mV increments. Bit 6:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1042 | 0x00 = 0.800V 0x01 = 0.825V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1043 | 0x02 = 0.850V 0x03 = 0.875V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1044 | 0x04 = 0.900V 0x05 = 0.925V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1045 | 0x06 = 0.950V ... |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1046 | 0x7D = 3.925V 0x7E = 3.950V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1047 | 0x7F = 3.975V */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1048 | unsigned char rsvd : 1; /**< Reserved. Bit 7. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1049 | Unutilized bit. Write to 0. Reads are don't care. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1050 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1051 | } reg_cnfg_ldo1_a_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1052 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1053 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1054 | * @brief CNFG_LDO1_B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1055 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1056 | * Address : 0x3B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1057 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1058 | typedef union { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1059 | unsigned char raw; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1060 | struct |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1061 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1062 | unsigned char en_ldo1 : 3; /**< Enable Control for LDO1, selecting either an FPS slot the channel powers-up and |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1063 | powers-down in or whether the channel is forced on or off. Bit 2:0. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1064 | 0b000 = FPS slot 0 0b001 = FPS slot 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1065 | 0b010 = FPS slot 2 0b011 = FPS slot 3 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1066 | 0b100 = Off irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1067 | 0b101 = same as 0b100 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1068 | 0b110 = On irrespective of FPS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1069 | 0b111 = same as 0b110 */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1070 | unsigned char ade_ldo1 : 1; /**< LDO1 Active-Discharge Enable. Bit 3. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1071 | 0 = The active discharge function is disabled. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1072 | 1 = The active discharge function is enabled. */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1073 | unsigned char ldo1_md : 1; /**< Operation mode of LDO1. Bit 4. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1074 | 0 = Low Dropout Linear Regulator (LDO) Mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1075 | 1 = Load Switch (LSW) Mode */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1076 | unsigned char : 3; /**< Bit 7:5.*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1077 | } bits; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1078 | } reg_cnfg_ldo1_b_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1079 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1080 | #endif /* MAX77654_REGS_H_ */ |