MAX77654 Ultra-Low Power PMIC Mbed Driver
MAX77654.h@1:4ad70542956e, 2022-04-26 (annotated)
- Committer:
- metin.ozkan@analog.com
- Date:
- Tue Apr 26 09:43:41 2022 +0300
- Revision:
- 1:4ad70542956e
- Parent:
- 0:788f63dcf0a0
- Child:
- 4:77203c01b399
[MBUISTSW-103]: [MAX77654_Mbed_Driver] ERCFLAG descriptions is incorrect
[MBUISTSW-104]: [MAX77654_Mbed_Driver] Remove unused constructor inputs (dataPin, powerPin) and <iostream> header.
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) 2022 Maxim Integrated Products, Inc., All rights Reserved. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 4 | * This software is protected by copyright laws of the United States and |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 5 | * of foreign countries. This material may also be protected by patent laws |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 6 | * and technology transfer regulations of the United States and of foreign |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 7 | * countries. This software is furnished under a license agreement and/or a |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 8 | * nondisclosure agreement and may only be used or reproduced in accordance |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 9 | * with the terms of those agreements. Dissemination of this information to |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 10 | * any party or parties not specified in the license agreement and/or |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 11 | * nondisclosure agreement is expressly prohibited. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 12 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 13 | * The above copyright notice and this permission notice shall be included |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 14 | * in all copies or substantial portions of the Software. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 15 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 17 | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 18 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 19 | * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 20 | * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 21 | * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 22 | * OTHER DEALINGS IN THE SOFTWARE. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 23 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 24 | * Except as contained in this notice, the name of Maxim Integrated |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 25 | * Products, Inc. shall not be used except as stated in the Maxim Integrated |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 26 | * Products, Inc. Branding Policy. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 27 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 28 | * The mere transfer of this software does not imply any licenses |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 29 | * of trade secrets, proprietary technology, copyrights, patents, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 30 | * trademarks, maskwork rights, or any other form of intellectual |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 31 | * property whatsoever. Maxim Integrated Products, Inc. retains all |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 32 | * ownership rights. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 33 | ******************************************************************************* |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 34 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 35 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 36 | #ifndef _MAX77654_H_ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 37 | #define _MAX77654_H_ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 38 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 39 | #include "mbed.h" |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 40 | #include "MAX77654_regs.h" |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 41 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 42 | #define MAX77654_NO_ERROR 0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 43 | #define MAX77654_VALUE_NULL -1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 44 | #define MAX77654_WRITE_DATA_FAILED -2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 45 | #define MAX77654_READ_DATA_FAILED -3 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 46 | #define MAX77654_INVALID_DATA -4 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 47 | #define MAX77654_INVALID_CHANNEL_NUMBER -5 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 48 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 49 | #define MAX77654_I2C_ADDRESS 0x90 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 50 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 51 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 52 | * @brief MAX77654 Ultra-Low Power PMIC Featuring Single-Inductor, 3-Output Buck-Boost, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 53 | * 2-LDOs, Power Path Charger for Small Li+, and Ship Mode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 54 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 55 | * @details The MAX77654 provides highly-integrated battery charging and power supply |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 56 | * solutions for low-power applications where size and efficiency are critical. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 57 | * <br>https://www.maximintegrated.com/en/products/power/power-management-ics/MAX77654.html |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 58 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 59 | * @code |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 60 | * @endcode |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 61 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 62 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 63 | class MAX77654 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 64 | { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 65 | private: |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 66 | I2C *i2c_handler; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 67 | InterruptIn *irq_pin; // interrupt pin |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 68 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 69 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 70 | * @brief Register Addresses |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 71 | * @details Enumerated MAX77654 register addresses |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 72 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 73 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 74 | /*Global*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 75 | INT_GLBL0 = 0x00, // Interrupt Status 0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 76 | INT_GLBL1 = 0x04, // Interrupt Status 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 77 | ERCFLAG = 0x05, // Flags |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 78 | STAT_GLBL = 0x06, // Global Status |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 79 | INTM_GLBL1 = 0x08, // Interrupt Mask 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 80 | INTM_GLBL0 = 0x09, // Interrupt Mask 0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 81 | CNFG_GLBL = 0x10, // Configuration Global |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 82 | CNFG_GPIO0 = 0x11, // GPIO0 Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 83 | CNFG_GPIO1 = 0x12, // GPIO1 Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 84 | CNFG_GPIO2 = 0x13, // GPIO2 Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 85 | CID = 0x14, // Chip Identification Code |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 86 | CNFG_WDT = 0x17, // Configuration WatchDog Timer |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 87 | /*Charger*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 88 | INT_CHG = 0x01, // Charger Interrupt Status |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 89 | STAT_CHG_A = 0x02, // Charger Status A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 90 | STAT_CHG_B = 0x03, // Charger Status B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 91 | INT_M_CHG = 0x07, // Charger Interrupt Mask |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 92 | CNFG_CHG_A = 0x20, // Charger Configuration A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 93 | CNFG_CHG_B = 0x21, // Charger Configuration B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 94 | CNFG_CHG_C = 0x22, // Charger Configuration C |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 95 | CNFG_CHG_D = 0x23, // Charger Configuration D |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 96 | CNFG_CHG_E = 0x24, // Charger Configuration E |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 97 | CNFG_CHG_F = 0x25, // Charger Configuration F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 98 | CNFG_CHG_G = 0x26, // Charger Configuration G |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 99 | CNFG_CHG_H = 0x27, // Charger Configuration H |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 100 | CNFG_CHG_I = 0x28, // Charger Configuration I |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 101 | /*SBB*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 102 | CNFG_SBB0_A = 0x29, // SIMO Buck-Boost 0 Configuration A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 103 | CNFG_SBB0_B = 0x2A, // SIMO Buck-Boost 0 Configuration B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 104 | CNFG_SBB1_A = 0x2B, // SIMO Buck-Boost 1 Configuration A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 105 | CNFG_SBB1_B = 0x2C, // SIMO Buck-Boost 1 Configuration B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 106 | CNFG_SBB2_A = 0x2D, // SIMO Buck-Boost 2 Configuration A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 107 | CNFG_SBB2_B = 0x2E, // SIMO Buck-Boost 2 Configuration B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 108 | CNFG_SBB_TOP = 0x2F, // SIMO Buck-Boost Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 109 | /*LDO*/ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 110 | CNFG_LDO0_A = 0x38, // LDO Configuration A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 111 | CNFG_LDO0_B = 0x39, // LDO Configuration B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 112 | CNFG_LDO1_A = 0x3A, // LDO Configuration B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 113 | CNFG_LDO1_B = 0x3B // LDO Configuration B |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 114 | } reg_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 115 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 116 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 117 | * @brief Interrupt handler function |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 118 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 119 | void InterruptHandler(); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 120 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 121 | void (MAX77654::*funcptr)(void); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 122 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 123 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 124 | * @brief Post interrupt jobs after interrupt is detected. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 125 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 126 | void PostInterruptWork(); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 127 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 128 | Thread *post_intr_work_thread; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 129 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 130 | struct handler { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 131 | void (*func)(void *); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 132 | void *cb; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 133 | }; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 134 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 135 | handler interrupt_handler_list[8]; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 136 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 137 | public: |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 138 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 139 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 140 | * All Interrupt Flags combined from INT_GLBL0, INT_GLBL1 and INT_CHG |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 141 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 142 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 143 | * - Register : ERCFLAG (0x05) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 144 | * - Bit Fields : [7:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 145 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 146 | * - Description : Enumerated interrupt flags |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 147 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 148 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 149 | INT_GLBL0_GPI0_F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 150 | INT_GLBL0_GPI0_R, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 151 | INT_GLBL0_NEN_F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 152 | INT_GLBL0_NEN_R, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 153 | INT_GLBL0_TJAL1_R, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 154 | INT_GLBL0_TJAL2_R, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 155 | INT_GLBL0_DOD1_R, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 156 | INT_GLBL0_DOD0_R, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 157 | INT_GLBL1_GPI1_F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 158 | INT_GLBL1_GPI1_R, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 159 | INT_GLBL1_GPI2_F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 160 | INT_GLBL1_GPI2_R, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 161 | INT_GLBL1_SBB_TO, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 162 | INT_GLBL1_LDO0_F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 163 | INT_GLBL1_LDO1_F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 164 | INT_CHG_THM_I, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 165 | INT_CHG_CGH_I, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 166 | INT_CHG_CHGIN_I, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 167 | INT_CHG_TJ_REG_I, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 168 | INT_CHG_CHGIN_CTRL_I, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 169 | INT_CHG_SYS_CTRL_I, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 170 | INT_CHG_SYS_CNFG_I, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 171 | INT_CHG_END |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 172 | } int_glbl_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 173 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 174 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 175 | * MAX77654 constructor. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 176 | */ |
metin.ozkan@analog.com | 1:4ad70542956e | 177 | MAX77654(I2C *i2c, PinName IRQPin = NC); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 178 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 179 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 180 | * MAX77654 destructor. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 181 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 182 | ~MAX77654(); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 183 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 184 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 185 | * @brief Function pointer type to interrupt handler function |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 186 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 187 | typedef void (*interrupt_handler_function)(void *); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 188 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 189 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 190 | * @brief Read from a register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 191 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 192 | * @param[in] reg Address of a register to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 193 | * @param[out] value Pointer to save result value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 194 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 195 | * @returns 0 on success, negative error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 196 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 197 | int read_register(uint8_t reg, uint8_t *value); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 198 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 199 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 200 | * @brief Write to a register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 201 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 202 | * @param[in] reg Address of a register to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 203 | * @param[out] value Pointer of value to be written to register. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 204 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 205 | * @returns 0 on success, negative error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 206 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 207 | int write_register(uint8_t reg, const uint8_t *value); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 208 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 209 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 210 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 211 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 212 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 213 | * - Register : ERCFLAG (0x05) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 214 | * - Bit Fields : [7:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 215 | * - Default : 0x0 |
metin.ozkan@analog.com | 1:4ad70542956e | 216 | * - Description : Event Recorder Flags. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 217 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 218 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 219 | ERC_FLAG_NOT_OCCURRED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 220 | ERC_FLAG_OCCURRED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 221 | }ercflag_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 222 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 223 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 224 | * @brief Get Thermal Overload Flag. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 225 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 226 | * @param[out] ercflag Thermal overload bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 227 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 228 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 229 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 230 | int GetThermalOverload(ercflag_t *ercflag); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 231 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 232 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 233 | * @brief Get Sys Domain Overvoltage Lockout Flag. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 234 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 235 | * @param[out] ercflag Sys domain overvoltage lockout bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 236 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 237 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 238 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 239 | int GetSysOvervoltageLockout(ercflag_t *ercflag); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 240 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 241 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 242 | * @brief Get Sys Domain Undervoltage Lockout Flag. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 243 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 244 | * @param[out] ercflag Sys domain undervoltage lockout bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 245 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 246 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 247 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 248 | int GetSysUndervoltageLockout(ercflag_t *ercflag); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 249 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 250 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 251 | * @brief Get Manual Reset Timer Flag. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 252 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 253 | * @param[out] ercflag Manual reset timer bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 254 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 255 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 256 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 257 | int GetManualResetTimer(ercflag_t *ercflag); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 258 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 259 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 260 | * @brief Get Software Off Flag. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 261 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 262 | * @param[out] ercflag Software off bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 263 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 264 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 265 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 266 | int GetSoftwareOffFlag(ercflag_t *ercflag); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 267 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 268 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 269 | * @brief Get Software Cold Reset. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 270 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 271 | * @param[out] ercflag Software cold reset bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 272 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 273 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 274 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 275 | int GetSoftwareColdResetFlag(ercflag_t *ercflag); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 276 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 277 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 278 | * @brief Get Watchdog Timer Off Flag. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 279 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 280 | * @param[out] ercflag Watchdog timer off bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 281 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 282 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 283 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 284 | int GetWatchdogTimerOffFlag(ercflag_t *ercflag); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 285 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 286 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 287 | * @brief Get Watchdog Timer Reset Flag. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 288 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 289 | * @param[out] ercflag Watchdog timer reset bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 290 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 291 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 292 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 293 | int GetWatchdogTimerResetFlag(ercflag_t *ercflag); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 294 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 295 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 296 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 297 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 298 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 299 | * - Register : STAT_GLBL (0x06) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 300 | * - Bit Fields : [7] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 301 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 302 | * - Description : Device Identification Bits for Metal Options. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 303 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 304 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 305 | DIDM_MAX77654, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 306 | DIDM_RESERVED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 307 | }didm_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 308 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 309 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 310 | * @brief Get Device Identification Bits for Metal Options. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 311 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 312 | * @param[out] didm Device identification bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 313 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 314 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 315 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 316 | int GetDeviceIdentification(didm_t *didm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 317 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 318 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 319 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 320 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 321 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 322 | * - Register : STAT_GLBL (0x06) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 323 | * - Bit Fields : [6] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 324 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 325 | * - Description : BOK Interrupt Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 326 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 327 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 328 | BOK_MAIN_BIAS_NOT_READY, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 329 | BOK_MAIN_BIAS_READY |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 330 | }bok_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 331 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 332 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 333 | * @brief Get BOK Interrupt Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 334 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 335 | * @param[out] bok Main bias status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 336 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 337 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 338 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 339 | int GetBOKInterruptStatus(bok_t *bok); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 340 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 341 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 342 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 343 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 344 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 345 | * - Register : STAT_GLBL (0x06) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 346 | * - Bit Fields : [5] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 347 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 348 | * - Description : LDO0 Dropout Detector Rising Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 349 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 350 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 351 | DOD0_S_LDO0_NOT_IN_DROPOUT, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 352 | DOD0_S_LDO0_IN_DROPOUT |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 353 | }dod0_s_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 354 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 355 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 356 | * @brief Get LDO0 Dropout Detector Rising Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 357 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 358 | * @param[out] dod0_s LDO0 dropout status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 359 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 360 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 361 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 362 | int GetLDO0DropoutRisingStatus(dod0_s_t *dod0_s); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 363 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 364 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 365 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 366 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 367 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 368 | * - Register : STAT_GLBL (0x06) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 369 | * - Bit Fields : [4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 370 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 371 | * - Description : LDO1 Dropout Detector Rising Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 372 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 373 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 374 | DOD1_S_LDO1_NOT_IN_DROPOUT, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 375 | DOD1_S_LDO1_IN_DROPOUT |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 376 | }dod1_s_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 377 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 378 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 379 | * @brief Get LDO1 Dropout Detector Rising Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 380 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 381 | * @param[out] dod1_s LDO1 dropout status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 382 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 383 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 384 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 385 | int GetLDO1DropoutRisingStatus(dod1_s_t *dod1_s); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 386 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 387 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 388 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 389 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 390 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 391 | * - Register : STAT_GLBL (0x06) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 392 | * - Bit Fields : [3] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 393 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 394 | * - Description : Thermal Alarm 2 Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 395 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 396 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 397 | TJAL2_S_JUNC_TEMP_LESS_THAN_TJA2, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 398 | TJAL2_S_JUNC_TEMP_GREATER_THAN_TJA2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 399 | }tjal2_s_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 400 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 401 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 402 | * @brief Get Thermal Alarm 2 Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 403 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 404 | * @param[out] tjal2_s Thermal alarm 2 status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 405 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 406 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 407 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 408 | int GetThermalAlarm2Status(tjal2_s_t *tjal2_s); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 409 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 410 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 411 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 412 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 413 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 414 | * - Register : STAT_GLBL (0x06) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 415 | * - Bit Fields : [2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 416 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 417 | * - Description : Thermal Alarm 1 Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 418 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 419 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 420 | TJAL1_S_JUNC_TEMP_LESS_THAN_TJA1, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 421 | TJAL1_S_JUNC_TEMP_GREATER_THAN_TJA1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 422 | }tjal1_s_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 423 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 424 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 425 | * @brief Get Thermal Alarm 1 Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 426 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 427 | * @param[out] tjal1_s Thermal alarm 1 status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 428 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 429 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 430 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 431 | int GetThermalAlarm1Status(tjal1_s_t *tjal1_s); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 432 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 433 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 434 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 435 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 436 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 437 | * - Register : STAT_GLBL (0x06) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 438 | * - Bit Fields : [1] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 439 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 440 | * - Description : Debounced Status for the nEN input. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 441 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 442 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 443 | STAT_EN_NEN_NOT_ACTIVE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 444 | STAT_EN_NEN_ACTIVE |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 445 | }stat_en_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 446 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 447 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 448 | * @brief Get Debounced Status for the nEN input. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 449 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 450 | * @param[out] stat_en Debounced status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 451 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 452 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 453 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 454 | int GetnENDebouncedStatus(stat_en_t *stat_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 455 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 456 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 457 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 458 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 459 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 460 | * - Register : STAT_GLBL (0x06) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 461 | * - Bit Fields : [0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 462 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 463 | * - Description : Software Version of the nIRQ MOSFET gate drive. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 464 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 465 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 466 | STAT_IRQ_UNMASKED_GATE_DRIVE_LOW, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 467 | STAT_IRQ_UNMASKED_GATE_DRIVE_HIGH |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 468 | }stat_irq_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 469 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 470 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 471 | * @brief Get Software Version of the nIRQ MOSFET gate drive. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 472 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 473 | * @param[out] stat_en Software version bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 474 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 475 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 476 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 477 | int GetSoftwareVersionGateDrive(stat_irq_t *stat_irq); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 478 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 479 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 480 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 481 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 482 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 483 | * - Register : INT_M_CHG (0x07), INTM_GLBL1 (0x08), and INTM_GLBL0 (0x09) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 484 | * - Bit Fields : [7:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 485 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 486 | * - Description : Interrupt Masks. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 487 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 488 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 489 | INTM_INTERRUPT_UNMASKED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 490 | INTM_INTERRUPT_MASKED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 491 | }intm_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 492 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 493 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 494 | * @brief Set LDO1 Fault Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 495 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 496 | * @param[in] intm LDO1 fault interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 497 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 498 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 499 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 500 | int SetLDO1FaultInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 501 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 502 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 503 | * @brief Get LDO1 Fault Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 504 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 505 | * @param[out] intm LDO1 fault interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 506 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 507 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 508 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 509 | int GetLDO1FaultInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 510 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 511 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 512 | * @brief Set LDO0 Fault Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 513 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 514 | * @param[in] intm LDO0 fault interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 515 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 516 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 517 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 518 | int SetLDO0FaultInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 519 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 520 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 521 | * @brief Get LDO1 Fault Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 522 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 523 | * @param[out] intm LDO1 fault interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 524 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 525 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 526 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 527 | int GetLDO0FaultInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 528 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 529 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 530 | * @brief Set SBB Timeout Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 531 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 532 | * @param[in] intm SBB timeout interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 533 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 534 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 535 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 536 | int SetSBBTimeoutMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 537 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 538 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 539 | * @brief Get SBB Timeout Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 540 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 541 | * @param[out] intm SBB timeout interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 542 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 543 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 544 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 545 | int GetSBBTimeoutMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 546 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 547 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 548 | * @brief Set GPI2 Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 549 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 550 | * @param[in] intm GPI2 rising interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 551 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 552 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 553 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 554 | int SetGPI2RisingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 555 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 556 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 557 | * @brief Get GPI2 Rising Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 558 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 559 | * @param[out] intm GPI2 rising interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 560 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 561 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 562 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 563 | int GetGPI2RisingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 564 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 565 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 566 | * @brief Set GPI2 Falling Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 567 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 568 | * @param[in] intm GPI2 falling interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 569 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 570 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 571 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 572 | int SetGPI2FallingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 573 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 574 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 575 | * @brief Get GPI2 Falling Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 576 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 577 | * @param[out] intm GPI2 falling interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 578 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 579 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 580 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 581 | int GetGPI2FallingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 582 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 583 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 584 | * @brief Set GPI1 Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 585 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 586 | * @param[in] intm GPI1 rising interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 587 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 588 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 589 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 590 | int SetGPI1RisingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 591 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 592 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 593 | * @brief Get GPI1 Rising Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 594 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 595 | * @param[out] intm GPI1 rising interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 596 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 597 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 598 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 599 | int GetGPI1RisingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 600 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 601 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 602 | * @brief Set GPI1 Falling Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 603 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 604 | * @param[in] intm GPI1 falling interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 605 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 606 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 607 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 608 | int SetGPI1FallingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 609 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 610 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 611 | * @brief Get GPI1 Falling Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 612 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 613 | * @param[out] intm GPI1 falling interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 614 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 615 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 616 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 617 | int GetGPI1FallingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 618 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 619 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 620 | * @brief Set LDO Dropout0 Detector Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 621 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 622 | * @param[in] intm LDO dropout0 detector rising interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 623 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 624 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 625 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 626 | int SetDropout0RisingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 627 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 628 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 629 | * @brief Get LDO Dropout0 Detector Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 630 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 631 | * @param[out] intm LDO dropout0 detector rising interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 632 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 633 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 634 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 635 | int GetDropout0RisingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 636 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 637 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 638 | * @brief Set LDO Dropout1 Detector Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 639 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 640 | * @param[in] intm LDO dropout1 detector rising interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 641 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 642 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 643 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 644 | int SetDropout1RisingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 645 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 646 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 647 | * @brief Get LDO Dropout1 Detector Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 648 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 649 | * @param[out] intm LDO dropout1 detector rising interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 650 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 651 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 652 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 653 | int GetDropout1RisingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 654 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 655 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 656 | * @brief Set Thermal Alarm 2 Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 657 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 658 | * @param[in] intm Thermal alarm 2 rising interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 659 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 660 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 661 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 662 | int SetThermalAlarm2RisingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 663 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 664 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 665 | * @brief Get Thermal Alarm 2 Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 666 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 667 | * @param[out] intm Thermal alarm 2 rising interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 668 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 669 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 670 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 671 | int GetThermalAlarm2RisingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 672 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 673 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 674 | * @brief Set Thermal Alarm 1 Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 675 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 676 | * @param[in] intm Thermal alarm 1 rising interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 677 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 678 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 679 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 680 | int SetThermalAlarm1RisingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 681 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 682 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 683 | * @brief Get Thermal Alarm 1 Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 684 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 685 | * @param[out] intm Thermal alarm 1 rising interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 686 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 687 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 688 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 689 | int GetThermalAlarm1RisingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 690 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 691 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 692 | * @brief Set nEN Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 693 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 694 | * @param[in] intm nEN rising interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 695 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 696 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 697 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 698 | int SetnENRisingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 699 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 700 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 701 | * @brief Get nEN Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 702 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 703 | * @param[out] intm nEN rising interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 704 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 705 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 706 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 707 | int GetnENRisingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 708 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 709 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 710 | * @brief Set nEN Falling Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 711 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 712 | * @param[in] intm nEN falling interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 713 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 714 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 715 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 716 | int SetnENFallingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 717 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 718 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 719 | * @brief Get nEN Falling Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 720 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 721 | * @param[out] intm nEN falling interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 722 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 723 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 724 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 725 | int GetnENFallingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 726 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 727 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 728 | * @brief Set GPI0 Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 729 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 730 | * @param[in] intm GPI rising interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 731 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 732 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 733 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 734 | int SetGPI0RisingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 735 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 736 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 737 | * @brief Get GPI0 Rising Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 738 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 739 | * @param[out] intm GPI rising interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 740 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 741 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 742 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 743 | int GetGPI0RisingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 744 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 745 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 746 | * @brief Set GPI0 Falling Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 747 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 748 | * @param[in] intm GPI falling interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 749 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 750 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 751 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 752 | int SetGPI0FallingInterruptMask(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 753 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 754 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 755 | * @brief Get GPI0 Falling Interrupt Mask. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 756 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 757 | * @param[out] intm GPI falling interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 758 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 759 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 760 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 761 | int GetGPI0FallingInterruptMask(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 762 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 763 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 764 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 765 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 766 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 767 | * - Register : CNFG_GLBL (0x10) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 768 | * - Bit Fields : [7] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 769 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 770 | * - Description : nEN Internal Pullup Resistor. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 771 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 772 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 773 | PU_DIS_STRONG_NEN_PULLUP_200K, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 774 | PU_DIS_WEAK_NEN_PULLUP_10M |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 775 | }pu_dis_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 776 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 777 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 778 | * @brief Set nEN Internal Pullup Resistor. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 779 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 780 | * @param[in] pu_dis nEN internal pullup resistor bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 781 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 782 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 783 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 784 | int SetnENInternalPullupResistor(pu_dis_t pu_dis); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 785 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 786 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 787 | * @brief Get nEN Internal Pullup Resistor. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 788 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 789 | * @param[out] pu_dis nEN internal pullup resistor bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 790 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 791 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 792 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 793 | int GetnENInternalPullupResistor(pu_dis_t *pu_dis); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 794 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 795 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 796 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 797 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 798 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 799 | * - Register : CNFG_GLBL (0x10) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 800 | * - Bit Fields : [6] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 801 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 802 | * - Description : Manual Reset Time (tMRST). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 803 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 804 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 805 | T_MRST_TIME_8S, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 806 | T_MRST_TIME_16S |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 807 | }t_mrst_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 808 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 809 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 810 | * @brief Set the Manual Reset Time (tMRST). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 811 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 812 | * @param[in] t_mrst Manual reset time bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 813 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 814 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 815 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 816 | int SetManualResetTime(t_mrst_t t_mrst); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 817 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 818 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 819 | * @brief Get the Manual Reset Time (tMRST). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 820 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 821 | * @param[out] t_mrst Manual reset time bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 822 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 823 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 824 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 825 | int GetManualResetTime(t_mrst_t *t_mrst); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 826 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 827 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 828 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 829 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 830 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 831 | * - Register : CNFG_GLBL (0x10) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 832 | * - Bit Fields : [5] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 833 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 834 | * - Description : Main Bias Low-Power Mode Software Request. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 835 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 836 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 837 | SBIA_LPM_NORMAL_POWER_MODE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 838 | SBIA_LPM_LOWER_POWER_MODE |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 839 | }sbia_lpm_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 840 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 841 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 842 | * @brief Set Main Bias Low-Power Mode Software Request. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 843 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 844 | * @param[in] sbia_lpm main bias low-power mode software request bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 845 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 846 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 847 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 848 | int SetMainBiasLowerPowerModeReq(sbia_lpm_t sbia_lpm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 849 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 850 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 851 | * @brief Get Main Bias Low-Power Mode Software Request. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 852 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 853 | * @param[out] sbia_lpm Main bias low-power mode software request bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 854 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 855 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 856 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 857 | int GetMainBiasLowerPowerModeReq(sbia_lpm_t *sbia_lpm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 858 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 859 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 860 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 861 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 862 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 863 | * - Register : CNFG_GLBL (0x10) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 864 | * - Bit Fields : [4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 865 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 866 | * - Description : Main Bias Enable Software Request. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 867 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 868 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 869 | SBIA_EN_ON_OFF_CONTROLLER, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 870 | SBIA_EN_ALWAYS_ON |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 871 | }sbia_en_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 872 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 873 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 874 | * @brief Set Main Bias Enable Software Request. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 875 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 876 | * @param[in] sbia_en Main bias enable software request bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 877 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 878 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 879 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 880 | int SetMainBiasEnableReq(sbia_en_t sbia_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 881 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 882 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 883 | * @brief Get Main Bias Enable Software Request. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 884 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 885 | * @param[out] sbia_en Main bias enable software request bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 886 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 887 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 888 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 889 | int GetMainBiasEnableReq(sbia_en_t *sbia_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 890 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 891 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 892 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 893 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 894 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 895 | * - Register : CNFG_GLBL (0x10) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 896 | * - Bit Fields : [3] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 897 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 898 | * - Description : nEN Input (ON-KEY) Default Configuration Mode. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 899 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 900 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 901 | NEN_MODE_PUSH_BUTTON_MODE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 902 | NEN_MODE_SLIDE_SWITCH_MODE |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 903 | }nen_mode_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 904 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 905 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 906 | * @brief Set nEN Input (ON-KEY) Default Configuration Mode. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 907 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 908 | * @param[in] nen_mode nEN input default configuration mode bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 909 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 910 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 911 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 912 | int SetnEnInputMode(nen_mode_t nen_mode); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 913 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 914 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 915 | * @brief Get nEN Input (ON-KEY) Default Configuration Mode. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 916 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 917 | * @param[out] nen_mode nEN input default configuration mode bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 918 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 919 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 920 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 921 | int GetnEnInputMode(nen_mode_t *nen_mode); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 922 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 923 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 924 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 925 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 926 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 927 | * - Register : CNFG_GLBL (0x10) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 928 | * - Bit Fields : [2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 929 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 930 | * - Description : Debounce Timer Enable for the nEN Pin. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 931 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 932 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 933 | DBEN_NEN_DEBOUNCE_500US, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 934 | DBEN_NEN_DEBOUNCE_30MS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 935 | }dben_nen_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 936 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 937 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 938 | * @brief Set Debounce Timer Enable for the nEN Pin. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 939 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 940 | * @param[in] dben_nen Debounce timer enable for the nEN pin bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 941 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 942 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 943 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 944 | int SetDebounceTimerEnable(dben_nen_t dben_nen); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 945 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 946 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 947 | * @brief Get Debounce Timer Enable for the nEN Pin. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 948 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 949 | * @param[out] dben_nen Debounce timer enable for the nEN pin bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 950 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 951 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 952 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 953 | int GetDebounceTimerEnable(dben_nen_t *dben_nen); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 954 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 955 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 956 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 957 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 958 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 959 | * - Register : CNFG_GLBL (0x10) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 960 | * - Bit Fields : [1:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 961 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 962 | * - Description : Software Reset Functions. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 963 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 964 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 965 | SFT_CTRL_NO_ACTION, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 966 | SFT_CTRL_SOFTWARE_COLD_RESET, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 967 | SFT_CTRL_SOFTWARE_OFF, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 968 | SFT_CTRL_FACTORY_SHIP_MODE_ENTER |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 969 | }sft_ctrl_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 970 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 971 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 972 | * @brief Set Software Reset Functions. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 973 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 974 | * @param[in] sft_ctrl Software reset functions field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 975 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 976 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 977 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 978 | int SetSoftwareResetFunctions(sft_ctrl_t sft_ctrl); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 979 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 980 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 981 | * @brief Get Software Reset Functions. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 982 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 983 | * @param[out] sft_ctrl Software reset functions field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 984 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 985 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 986 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 987 | int GetSoftwareResetFunctions(sft_ctrl_t *sft_ctrl); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 988 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 989 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 990 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 991 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 992 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 993 | * - Register : CNFG_GPIO0 (0x11), CNFG_GPIO1 (0x12) and CNFG_GPIO2 (0x13) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 994 | * - Bit Fields : [5] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 995 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 996 | * - Description : Alternate Mode Enable for GPIO 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 997 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 998 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 999 | ALT_GPIO_STANDARD_GPI_OR_GPO, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1000 | ALT_GPIO_FLEX_POWER_OR_SSB2_ENABLE_OR_BIAS_LPM |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1001 | }alt_gpio_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1002 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1003 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1004 | * @brief Set Alternate Mode Enable for GPIO. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1005 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1006 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1007 | * @param[in] alt_gpio Alternate mode enable for GPIO bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1008 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1009 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1010 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1011 | int SetAlternateModeEnable(uint8_t channel, alt_gpio_t alt_gpio); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1012 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1013 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1014 | * @brief Get Alternate Mode Enable for GPIO. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1015 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1016 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1017 | * @param[out] alt_gpio Alternate mode enable for GPIO bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1018 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1019 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1020 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1021 | int GetAlternateModeEnable(uint8_t channel, alt_gpio_t *alt_gpio); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1022 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1023 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1024 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1025 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1026 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1027 | * - Register : CNFG_GPIO0 (0x11), CNFG_GPIO1 (0x12) and CNFG_GPIO2 (0x13) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1028 | * - Bit Fields : [4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1029 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1030 | * - Description : General Purpose Input Debounce Timer Enable for GPIO 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1031 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1032 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1033 | DBEN_GPI_NO_DEBOUNCE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1034 | DBEN_GPI_DEBOUNCE_30MS |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1035 | }dben_gpi_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1036 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1037 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1038 | * @brief Set General Purpose Input Debounce Timer Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1039 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1040 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1041 | * @param[in] dben_gpi General purpose input debounce timer enable bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1042 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1043 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1044 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1045 | int SetGPIDebounceTimerEnable(uint8_t channel, dben_gpi_t dben_gpi); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1046 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1047 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1048 | * @brief Get General Purpose Input Debounce Timer Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1049 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1050 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1051 | * @param[out] dben_gpi General purpose input debounce timer enable bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1052 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1053 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1054 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1055 | int GetGPIDebounceTimerEnable(uint8_t channel, dben_gpi_t *dben_gpi); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1056 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1057 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1058 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1059 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1060 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1061 | * - Register : CNFG_GPIO0 (0x11), CNFG_GPIO1 (0x12) and CNFG_GPIO2 (0x13) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1062 | * - Bit Fields : [3] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1063 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1064 | * - Description : General Purpose Output Data Output for GPIO 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1065 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1066 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1067 | GPO_DO_LOGIC_LOW, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1068 | GPO_DO_LOGIC_HIGH |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1069 | }gpo_do_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1070 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1071 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1072 | * @brief Set General Purpose Output Data Output. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1073 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1074 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1075 | * @param[in] gpo_do General purpose output data output bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1076 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1077 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1078 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1079 | int SetGPODataOutput(uint8_t channel, gpo_do_t gpo_do); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1080 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1081 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1082 | * @brief Get General Purpose Output Data Output. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1083 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1084 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1085 | * @param[out] gpo_do General purpose output data output bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1086 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1087 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1088 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1089 | int GetGPODataOutput(uint8_t channel, gpo_do_t *gpo_do); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1090 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1091 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1092 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1093 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1094 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1095 | * - Register : CNFG_GPIO0 (0x11), CNFG_GPIO1 (0x12) and CNFG_GPIO2 (0x13) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1096 | * - Bit Fields : [2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1097 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1098 | * - Description : General Purpose Output Driver Type for GPIO 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1099 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1100 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1101 | GPO_DRV_OPEN_DRAIN, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1102 | GPO_DRV_PUSH_PULL |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1103 | }gpo_drv_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1104 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1105 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1106 | * @brief Set General Purpose Output Driver Type. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1107 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1108 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1109 | * @param[in] gpo_drv General purpose output driver type bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1110 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1111 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1112 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1113 | int SetGPODriveType(uint8_t channel, gpo_drv_t gpo_drv); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1114 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1115 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1116 | * @brief Get General Purpose Output Driver Type. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1117 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1118 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1119 | * @param[out] gpo_drv General purpose output driver type bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1120 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1121 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1122 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1123 | int GetGPODriveType(uint8_t channel, gpo_drv_t *gpo_drv); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1124 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1125 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1126 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1127 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1128 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1129 | * - Register : CNFG_GPIO0 (0x11), CNFG_GPIO1 (0x12) and CNFG_GPIO2 (0x13) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1130 | * - Bit Fields : [1] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1131 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1132 | * - Description : GPIO Digital Input Value for GPIO 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1133 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1134 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1135 | GPO_DI_INPUT_LOGIC_LOW, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1136 | GPO_DI_INPUT_LOGIC_HIGH |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1137 | }gpo_di_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1138 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1139 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1140 | * @brief Set GPIO Digital Input Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1141 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1142 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1143 | * @param[in] gpo_di GPIO digital input value bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1144 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1145 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1146 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1147 | int SetGPIOInputValue(uint8_t channel, gpo_di_t gpo_di); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1148 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1149 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1150 | * @brief Get GPIO Digital Input Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1151 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1152 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1153 | * @param[out] gpo_di GPIO digital input value bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1154 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1155 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1156 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1157 | int GetGPIOInputValue(uint8_t channel, gpo_di_t *gpo_di); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1158 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1159 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1160 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1161 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1162 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1163 | * - Register : CNFG_GPIO0 (0x11), CNFG_GPIO1 (0x12) and CNFG_GPIO2 (0x13) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1164 | * - Bit Fields : [0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1165 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1166 | * - Description : GPIO Direction for GPIO 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1167 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1168 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1169 | GPO_DIR_GPO, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1170 | GPO_DIR_GPI |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1171 | }gpo_dir_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1172 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1173 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1174 | * @brief Set GPIO Direction. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1175 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1176 | * @param[in] channel Channel number: 0, 1 or 2 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1177 | * @param[in] gpo_dir GPIO direction bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1178 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1179 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1180 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1181 | int SetGPIODirection(uint8_t channel, gpo_dir_t gpo_dir); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1182 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1183 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1184 | * @brief Get GPIO Direction. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1185 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1186 | * @param[in] channel Channel number |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1187 | * @param[out] gpo_dir GPIO direction bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1188 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1189 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1190 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1191 | int GetGPIODirection(uint8_t channel, gpo_dir_t *gpo_dir); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1192 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1193 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1194 | * @brief Read the CID |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1195 | * @details Read and return Chip Identification Code register value |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1196 | * @returns CID if no errors, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1197 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1198 | int GetCID(void); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1199 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1200 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1201 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1202 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1203 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1204 | * - Register : CNFG_WDT (0x17) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1205 | * - Bit Fields : [5:4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1206 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1207 | * - Description : Watchdog Timer Period. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1208 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1209 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1210 | WDT_PER_SECOND_16S, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1211 | WDT_PER_SECOND_32S, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1212 | WDT_PER_SECOND_64S, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1213 | WDT_PER_SECOND_128S |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1214 | }wdt_per_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1215 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1216 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1217 | * @brief Set Watchdog Timer Period. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1218 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1219 | * @param[in] wdt_per Watchdog timer period bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1220 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1221 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1222 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1223 | int SetWatchdogTimerPeriod(wdt_per_t wdt_per); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1224 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1225 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1226 | * @brief Get Watchdog Timer Period. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1227 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1228 | * @param[out] wdt_per Watchdog timer period bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1229 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1230 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1231 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1232 | int GetWatchdogTimerPeriod(wdt_per_t *wdt_per); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1233 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1234 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1235 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1236 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1237 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1238 | * - Register : CNFG_WDT (0x17) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1239 | * - Bit Fields : [3] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1240 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1241 | * - Description : Watchdog Timer Expired Action. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1242 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1243 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1244 | WDT_MODE_POWER_OFF, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1245 | WDT_MODE_POWER_RESET |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1246 | }wdt_mode_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1247 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1248 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1249 | * @brief Set Watchdog Timer Expired Action. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1250 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1251 | * @param[in] wdt_mode Watchdog timer expired action bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1252 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1253 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1254 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1255 | int SetWatchdogTimerExpiredAction(wdt_mode_t wdt_mode); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1256 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1257 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1258 | * @brief Get Watchdog Timer Expired Action. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1259 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1260 | * @param[out] wdt_mode Watchdog timer expired action bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1261 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1262 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1263 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1264 | int GetWatchdogTimerExpiredAction(wdt_mode_t *wdt_mode); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1265 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1266 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1267 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1268 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1269 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1270 | * - Register : CNFG_WDT (0x17) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1271 | * - Bit Fields : [2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1272 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1273 | * - Description : Watchdog Timer Clear Control. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1274 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1275 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1276 | WDT_CLR_PERIOD_NOT_RESET, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1277 | WDT_CLR_PERIOD_RESET |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1278 | }wdt_clr_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1279 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1280 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1281 | * @brief Set Watchdog Timer Clear Control. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1282 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1283 | * @param[in] wdt_clr Watchdog timer clear control bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1284 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1285 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1286 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1287 | int SetWatchdogTimerClearControl(wdt_clr_t wdt_clr); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1288 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1289 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1290 | * @brief Get Watchdog Timer Clear Control. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1291 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1292 | * @param[out] wdt_clr Watchdog timer clear control bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1293 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1294 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1295 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1296 | int GetWatchdogTimerClearControl(wdt_clr_t *wdt_clr); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1297 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1298 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1299 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1300 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1301 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1302 | * - Register : CNFG_WDT (0x17) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1303 | * - Bit Fields : [1] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1304 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1305 | * - Description : Watchdog Timer Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1306 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1307 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1308 | WDT_EN_DISABLED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1309 | WDT_EN_ENABLED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1310 | }wdt_en_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1311 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1312 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1313 | * @brief Set Watchdog Timer Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1314 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1315 | * @param[in] wdt_en Watchdog timer enable bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1316 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1317 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1318 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1319 | int SetWatchdogTimerEnable(wdt_en_t wdt_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1320 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1321 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1322 | * @brief Get Watchdog Timer Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1323 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1324 | * @param[out] wdt_en Watchdog timer enable bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1325 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1326 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1327 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1328 | int GetWatchdogTimerEnable(wdt_en_t *wdt_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1329 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1330 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1331 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1332 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1333 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1334 | * - Register : CNFG_WDT (0x17) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1335 | * - Bit Fields : [0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1336 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1337 | * - Description : Factory-Set Safety Bit for the Watchdog Timer. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1338 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1339 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1340 | WDT_LOCK_UNLOCKED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1341 | WDT_LOCK_LOCKED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1342 | }wdt_lock_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1343 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1344 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1345 | * @brief Set Factory-Set Safety Bit for the Watchdog Timer. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1346 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1347 | * @param[in] wdt_lock Factory-set safety bit for the watchdog timer to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1348 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1349 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1350 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1351 | int SetFactorySetSafetyBit(wdt_lock_t wdt_lock); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1352 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1353 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1354 | * @brief Get Factory-Set Safety Bit for the Watchdog Timer. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1355 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1356 | * @param[out] wdt_lock Factory-set safety bit for the watchdog timer to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1357 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1358 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1359 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1360 | int GetFactorySetSafetyBit(wdt_lock_t *wdt_lock); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1361 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1362 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1363 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1364 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1365 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1366 | * - Register : STAT_CHG_A (0x02) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1367 | * - Bit Fields : [6:3] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1368 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1369 | * - Description : Status bits if it is engaged or not. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1370 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1371 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1372 | STAT_EN_NOT_ENGAGED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1373 | STAT_EN_ENGAGED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1374 | }stat_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1375 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1376 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1377 | * @brief Get Minimum Input Voltage Regulation Loop Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1378 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1379 | * @param[out] stat Status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1380 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1381 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1382 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1383 | int GetMinimumVCHGINVoltageLoopStatus(stat_t *stat); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1384 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1385 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1386 | * @brief Get Input Current Limit Loop Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1387 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1388 | * @param[out] stat Status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1389 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1390 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1391 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1392 | int GetCHGINCurrentLimitLoopStatus(stat_t *stat); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1393 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1394 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1395 | * @brief Get Minimum System Voltage Regulation Loop Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1396 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1397 | * @param[out] stat Status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1398 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1399 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1400 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1401 | int GetMinimumSYSVoltageLoopStatus(stat_t *stat); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1402 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1403 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1404 | * @brief Get Maximum Junction Temperature Regulation Loop Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1405 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1406 | * @param[out] stat Status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1407 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1408 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1409 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1410 | int GetMaximumJunctionTempLoopStatus(stat_t *stat); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1411 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1412 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1413 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1414 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1415 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1416 | * - Register : STAT_CHG_A (0x02) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1417 | * - Bit Fields : [2:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1418 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1419 | * - Description : Battery Temperature Details. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1420 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1421 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1422 | THM_DTLS_THERMISTOR_DISABLED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1423 | THM_DTLS_BATTERY_COLD, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1424 | THM_DTLS_BATTERY_COOL, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1425 | THM_DTLS_BATTERY_WARM, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1426 | THM_DTLS_BATTERY_HOT, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1427 | THM_DTLS_BATTERY_NORMAL, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1428 | THM_DTLS_RESERVED_0x06, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1429 | THM_DTLS_RESERVED_0x07 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1430 | }thm_dtls_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1431 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1432 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1433 | * @brief Get Battery Temperature Details. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1434 | * Valid only when CHGIN_DTLS[1:0] = 0b11. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1435 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1436 | * @param[out] thm_dtls Battery temperature details field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1437 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1438 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1439 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1440 | int GetBatteryTemperatureDetails(thm_dtls_t *thm_dtls); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1441 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1442 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1443 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1444 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1445 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1446 | * - Register : STAT_CHG_B (0x03) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1447 | * - Bit Fields : [7:4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1448 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1449 | * - Description : Charger Details. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1450 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1451 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1452 | CHG_DTLS_OFF, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1453 | CHG_DTLS_PREQUALIFICATION_MODE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1454 | CHG_DTLS_FAST_CHARGE_CC, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1455 | CHG_DTLS_JEITA_FAST_CHARGE_CC, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1456 | CHG_DTLS_FAST_CHARGE_CV, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1457 | CHG_DTLS_JEITA_FAST_CHARGE_CV, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1458 | CHG_DTLS_TOP_OFF_MODE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1459 | CHG_DTLS_JEITA_MODIFIED_TOP_OFF_MODE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1460 | CHG_DTLS_DONE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1461 | CHG_DTLS_JEITA_MODIFIED_DONE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1462 | CHG_DTLS_PREQUALIFICATION_TIMER_FAULT, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1463 | CHG_DTLS_FAST_CHARGE_TIMER_FAULT, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1464 | CHG_DTLS_BATTERY_TEMPERATURE_FAULT, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1465 | CHG_DTLS_RESERVED_0x0D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1466 | CHG_DTLS_RESERVED_0x0E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1467 | CHG_DTLS_RESERVED_0x0F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1468 | }chg_dtls_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1469 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1470 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1471 | * @brief Get Charger Details. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1472 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1473 | * @param[out] chg_dtls Charger details field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1474 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1475 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1476 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1477 | int GetChargerDetails(chg_dtls_t *chg_dtls); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1478 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1479 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1480 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1481 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1482 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1483 | * - Register : STAT_CHG_B (0x03) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1484 | * - Bit Fields : [3:2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1485 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1486 | * - Description : CHGIN Status Detail. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1487 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1488 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1489 | CHGIN_DTLS_VOLTAGE_BELOW_UVLO, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1490 | CHGIN_DTLS_VOLTAGE_ABOVE_OVP, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1491 | CHGIN_DTLS_DEBOUNCED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1492 | CHGIN_DTLS_OKAY |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1493 | }chgin_dtls_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1494 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1495 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1496 | * @brief Get CHGIN Status Detail. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1497 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1498 | * @param[out] chgin_dtls CHGIN status detail field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1499 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1500 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1501 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1502 | int GetCHGINStatusDetails(chgin_dtls_t *chgin_dtls); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1503 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1504 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1505 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1506 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1507 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1508 | * - Register : STAT_CHG_B (0x03) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1509 | * - Bit Fields : [1] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1510 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1511 | * - Description : Quick Charger Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1512 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1513 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1514 | CHG_CHARGING_NOT_HAPPENING, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1515 | CHG_CHARGING_HAPPENING |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1516 | }chg_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1517 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1518 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1519 | * @brief Get Quick Charger Status. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1520 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1521 | * @param[out] chg Quick charger status bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1522 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1523 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1524 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1525 | int GetQuickChargerStatus(chg_t *chg); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1526 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1527 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1528 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1529 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1530 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1531 | * - Register : STAT_CHG_B (0x03) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1532 | * - Bit Fields : [0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1533 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1534 | * - Description : Time Suspend Indicator. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1535 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1536 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1537 | TIME_SUS_CHARGER_TIMER_NOT_SUSPENDED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1538 | TIME_SUS_CHARGER_TIMER_SUSPENDED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1539 | }time_sus_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1540 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1541 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1542 | * @brief Get Time Suspend Indicator. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1543 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1544 | * @param[out] time_sus Time suspend indicator bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1545 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1546 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1547 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1548 | int GetTimeSuspendedIndicator(time_sus_t *time_sus); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1549 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1550 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1551 | * @brief Set SYS_CNFG_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1552 | * Setting this bit prevents the SYS_CNFG_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1553 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1554 | * @param[in] intm Interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1555 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1556 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1557 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1558 | int SetSYSCONFIGMBit(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1559 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1560 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1561 | * @brief Get SYS_CNFG_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1562 | * Setting this bit prevents the SYS_CNFG_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1563 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1564 | * @param[out] intm Interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1565 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1566 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1567 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1568 | int GetSYSCONFIGMBit(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1569 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1570 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1571 | * @brief Set SYS_CTRL_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1572 | * Setting this bit prevents the SYS_CTRL_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1573 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1574 | * @param[in] intm Interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1575 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1576 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1577 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1578 | int SetSYSCTRLMBit(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1579 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1580 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1581 | * @brief Get SYS_CTRL_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1582 | * Setting this bit prevents the SYS_CTRL_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1583 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1584 | * @param[out] intm Interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1585 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1586 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1587 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1588 | int GetSYSCTRLMBit(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1589 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1590 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1591 | * @brief Set CHGIN_CTRL_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1592 | * Setting this bit prevents the CHGIN_CTRL_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1593 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1594 | * @param[in] intm Interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1595 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1596 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1597 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1598 | int SetCHGINCTRLMBit(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1599 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1600 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1601 | * @brief Get CHGIN_CTRL_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1602 | * Setting this bit prevents the CHGIN_CTRL_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1603 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1604 | * @param[out] intm Interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1605 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1606 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1607 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1608 | int GetCHGINCTRLMBit(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1609 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1610 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1611 | * @brief Set TJREG_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1612 | * Setting this bit prevents the TJREG_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1613 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1614 | * @param[in] intm Interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1615 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1616 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1617 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1618 | int SetTJREGMBit(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1619 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1620 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1621 | * @brief Get TJREG_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1622 | * Setting this bit prevents the TJREG_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1623 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1624 | * @param[out] intm Interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1625 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1626 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1627 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1628 | int GetTJREGMBit(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1629 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1630 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1631 | * @brief Set CHGIN_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1632 | * Setting this bit prevents the CHGIN_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1633 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1634 | * @param[in] intm Interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1635 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1636 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1637 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1638 | int SetCHGINMBit(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1639 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1640 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1641 | * @brief Get CHGIN_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1642 | * Setting this bit prevents the CHGIN_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1643 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1644 | * @param[out] intm Interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1645 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1646 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1647 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1648 | int GetCHGINMBit(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1649 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1650 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1651 | * @brief Set CHG_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1652 | * Setting this bit prevents the CHG_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1653 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1654 | * @param[in] intm Interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1655 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1656 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1657 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1658 | int SetCHGMBit(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1659 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1660 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1661 | * @brief Get CHG_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1662 | * Setting this bit prevents the CHG_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1663 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1664 | * @param[out] intm Interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1665 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1666 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1667 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1668 | int GetCHGMBit(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1669 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1670 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1671 | * @brief Set THM_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1672 | * Setting this bit prevents the THM_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1673 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1674 | * @param[in] intm Interrupt mask bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1675 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1676 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1677 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1678 | int SetTHMMBit(intm_t intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1679 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1680 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1681 | * @brief Get THM_I. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1682 | * Setting this bit prevents the THM_I bit from causing hardware IRQs |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1683 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1684 | * @param[out] intm Interrupt mask bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1685 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1686 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1687 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1688 | int GetTHMMBit(intm_t *intm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1689 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1690 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1691 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1692 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1693 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1694 | * - Register : CNFG_CHG_A (0x20) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1695 | * - Bit Fields : [7:6] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1696 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1697 | * - Description : VHOT JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1698 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1699 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1700 | THM_HOT_VOLT_0_411V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1701 | THM_HOT_VOLT_0_367V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1702 | THM_HOT_VOLT_0_327V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1703 | THM_HOT_VOLT_0_291V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1704 | }thm_hot_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1705 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1706 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1707 | * @brief Set the VHOT JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1708 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1709 | * @param[in] thm_hot The VHOT JEITA temperature threshold field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1710 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1711 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1712 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1713 | int SetHOTJEITATemperature(thm_hot_t thm_hot); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1714 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1715 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1716 | * @brief Get the VHOT JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1717 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1718 | * @param[out] thm_hot The VHOT JEITA temperature threshold field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1719 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1720 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1721 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1722 | int GetHOTJEITATemperature(thm_hot_t *thm_hot); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1723 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1724 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1725 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1726 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1727 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1728 | * - Register : CNFG_CHG_A (0x20) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1729 | * - Bit Fields : [5:4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1730 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1731 | * - Description : VWARM JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1732 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1733 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1734 | THM_WARM_VOLT_0_511V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1735 | THM_WARM_VOLT_0_459V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1736 | THM_WARM_VOLT_0_411V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1737 | THM_WARM_VOLT_0_367V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1738 | }thm_warm_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1739 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1740 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1741 | * @brief Set the VWARM JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1742 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1743 | * @param[in] thm_warm The VWARM JEITA temperature threshold field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1744 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1745 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1746 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1747 | int SetWARMJEITATemperature(thm_warm_t thm_warm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1748 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1749 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1750 | * @brief Get the VWARM JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1751 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1752 | * @param[out] thm_warm The VWARM JEITA temperature threshold field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1753 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1754 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1755 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1756 | int GetWARMJEITATemperature(thm_warm_t *thm_warm); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1757 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1758 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1759 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1760 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1761 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1762 | * - Register : CNFG_CHG_A (0x20) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1763 | * - Bit Fields : [3:2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1764 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1765 | * - Description : VCOOL JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1766 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1767 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1768 | THM_COOL_VOLT_0_923V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1769 | THM_COOL_VOLT_0_867V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1770 | THM_COOL_VOLT_0_807V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1771 | THM_COOL_VOLT_0_747V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1772 | }thm_cool_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1773 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1774 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1775 | * @brief Set the VCOOL JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1776 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1777 | * @param[in] thm_cool The VCOOL JEITA temperature threshold field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1778 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1779 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1780 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1781 | int SetCOOLJEITATemperature(thm_cool_t thm_cool); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1782 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1783 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1784 | * @brief Get the VCOOL JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1785 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1786 | * @param[out] thm_cool The VCOOL JEITA temperature threshold field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1787 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1788 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1789 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1790 | int GetCOOLJEITATemperature(thm_cool_t *thm_cool); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1791 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1792 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1793 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1794 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1795 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1796 | * - Register : CNFG_CHG_A (0x20) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1797 | * - Bit Fields : [1:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1798 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1799 | * - Description : VCOLD JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1800 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1801 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1802 | THM_COLD_VOLT_1_024V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1803 | THM_COLD_VOLT_0_976V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1804 | THM_COLD_VOLT_0_923V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1805 | THM_COLD_VOLT_0_867V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1806 | }thm_cold_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1807 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1808 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1809 | * @brief Set the VCOLD JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1810 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1811 | * @param[in] thm_cold The VCOLD JEITA temperature threshold field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1812 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1813 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1814 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1815 | int SetCOLDJEITATemperature(thm_cold_t thm_cold); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1816 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1817 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1818 | * @brief Get the VCOLD JEITA Temperature Threshold. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1819 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1820 | * @param[out] thm_cold The VCOLD JEITA temperature threshold field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1821 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1822 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1823 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1824 | int GetCOLDJEITATemperature(thm_cold_t *thm_cold); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1825 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1826 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1827 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1828 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1829 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1830 | * - Register : CNFG_CHG_B (0x21) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1831 | * - Bit Fields : [7:5] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1832 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1833 | * - Description : Minimum CHGIN Regulation Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1834 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1835 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1836 | VCHGIN_MIN_VOLT_4_0V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1837 | VCHGIN_MIN_VOLT_4_1V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1838 | VCHGIN_MIN_VOLT_4_2V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1839 | VCHGIN_MIN_VOLT_4_3V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1840 | VCHGIN_MIN_VOLT_4_4V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1841 | VCHGIN_MIN_VOLT_4_5V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1842 | VCHGIN_MIN_VOLT_4_6V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1843 | VCHGIN_MIN_VOLT_4_7V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1844 | }vchgin_min_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1845 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1846 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1847 | * @brief Set Minimum CHGIN Regulation Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1848 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1849 | * @param[in] vchgin_min Minimum CHGIN regulation voltage field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1850 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1851 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1852 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1853 | int SetMinimumCHGINVoltage(vchgin_min_t vchgin_min); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1854 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1855 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1856 | * @brief Get Minimum CHGIN Regulation Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1857 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1858 | * @param[out] vchgin_min Minimum CHGIN regulation voltage field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1859 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1860 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1861 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1862 | int GetMinimumCHGINVoltage(vchgin_min_t *vchgin_min); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1863 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1864 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1865 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1866 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1867 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1868 | * - Register : CNFG_CHG_B (0x21) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1869 | * - Bit Fields : [4:2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1870 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1871 | * - Description : CHGIN Input Current Limit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1872 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1873 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1874 | ICHGIN_LIM_AMP_95MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1875 | ICHGIN_LIM_AMP_190MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1876 | ICHGIN_LIM_AMP_285MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1877 | ICHGIN_LIM_AMP_385MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1878 | ICHGIN_LIM_AMP_475MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1879 | ICHGIN_LIM_AMP_RESERVED_0x05, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1880 | ICHGIN_LIM_AMP_RESERVED_0x06, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1881 | ICHGIN_LIM_AMP_RESERVED_0x07 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1882 | }ichgin_lim_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1883 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1884 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1885 | * @brief Set CHGIN Input Current Limit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1886 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1887 | * @param[in] ichgin_lim CHGIN input current limit field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1888 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1889 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1890 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1891 | int SetCHGINInputCurrentLimit(ichgin_lim_t ichgin_lim); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1892 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1893 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1894 | * @brief Get CHGIN Input Current Limit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1895 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1896 | * @param[out] ichgin_lim CHGIN input current limit field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1897 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1898 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1899 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1900 | int GetCHGINInputCurrentLimit(ichgin_lim_t *ichgin_lim); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1901 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1902 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1903 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1904 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1905 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1906 | * - Register : CNFG_CHG_B (0x21) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1907 | * - Bit Fields : [1] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1908 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1909 | * - Description : Prequalification Charge Current as a percentage of IFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1910 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1911 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1912 | I_PQ_PERCENT_10, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1913 | I_PQ_PERCENT_20 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1914 | }i_pq_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1915 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1916 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1917 | * @brief Set the Prequalification Charge Current as a percentage of IFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1918 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1919 | * @param[in] i_pq The prequalification charge current bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1920 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1921 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1922 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1923 | int SetPrequalificationChargeCurrent(i_pq_t i_pq); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1924 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1925 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1926 | * @brief Get the Prequalification Charge Current as a percentage of IFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1927 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1928 | * @param[out] i_pq the prequalification charge current bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1929 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1930 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1931 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1932 | int GetPrequalificationChargeCurrent(i_pq_t *i_pq); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1933 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1934 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1935 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1936 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1937 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1938 | * - Register : CNFG_CHG_B (0x21) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1939 | * - Bit Fields : [0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1940 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1941 | * - Description : Charger Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1942 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1943 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1944 | CHG_EN_BATTERY_CHARGER_DISABLED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1945 | CHG_EN_BATTERY_CHARGER_ENABLED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1946 | }chg_en_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1947 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1948 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1949 | * @brief Set Charger Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1950 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1951 | * @param[in] chg_en Charger enable bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1952 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1953 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1954 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1955 | int SetBatteryChargerEnable(chg_en_t chg_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1956 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1957 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1958 | * @brief Get Charger Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1959 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1960 | * @param[out] chg_en Charger enable bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1961 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1962 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1963 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1964 | int GetBatteryChargerEnable(chg_en_t *chg_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1965 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1966 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1967 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1968 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1969 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1970 | * - Register : CNFG_CHG_C (0x22) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1971 | * - Bit Fields : [7:5] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1972 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1973 | * - Description : Battery Prequalification Voltage Threshold (VPQ). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1974 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1975 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1976 | CHG_PQ_VOLT_2_3V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1977 | CHG_PQ_VOLT_2_4V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1978 | CHG_PQ_VOLT_2_5V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1979 | CHG_PQ_VOLT_2_6V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1980 | CHG_PQ_VOLT_2_7V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1981 | CHG_PQ_VOLT_2_8V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1982 | CHG_PQ_VOLT_2_9V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1983 | CHG_PQ_VOLT_3_0V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1984 | }chg_pq_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1985 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1986 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1987 | * @brief Set Battery Prequalification Voltage Threshold (VPQ). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1988 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1989 | * @param[in] chg_pq Battery prequalification voltage threshold field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1990 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1991 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1992 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1993 | int SetBatteryPQVoltageThreshold(chg_pq_t chg_pq); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1994 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1995 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1996 | * @brief Get Battery Prequalification Voltage Threshold (VPQ). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1997 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1998 | * @param[out] chg_pq Battery prequalification voltage threshold field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 1999 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2000 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2001 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2002 | int GetBatteryPQVoltageThreshold(chg_pq_t *chg_pq); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2003 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2004 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2005 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2006 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2007 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2008 | * - Register : CNFG_CHG_C (0x22) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2009 | * - Bit Fields : [4:3] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2010 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2011 | * - Description : Charger Termination Current (ITERM). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2012 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2013 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2014 | I_TERM_PERCENT_5, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2015 | I_TERM_PERCENT_7_5, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2016 | I_TERM_PERCENT_10, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2017 | I_TERM_PERCENT_15 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2018 | }i_term_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2019 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2020 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2021 | * @brief Set Charger Termination Current (ITERM). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2022 | * I_TERM[1:0] sets the charger termination current |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2023 | * as a percentage of the fast charge current IFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2024 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2025 | * @param[in] i_term Charger termination current field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2026 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2027 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2028 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2029 | int SetChargerTerminationCurrent(i_term_t i_term); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2030 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2031 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2032 | * @brief Get Charger Termination Current (ITERM). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2033 | * I_TERM[1:0] sets the charger termination current |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2034 | * as a percentage of the fast charge current IFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2035 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2036 | * @param[out] i_term Charger termination current field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2037 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2038 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2039 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2040 | int GetChargerTerminationCurrent(i_term_t *i_term); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2041 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2042 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2043 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2044 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2045 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2046 | * - Register : CNFG_CHG_C (0x22) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2047 | * - Bit Fields : [2:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2048 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2049 | * - Description : Top-off Timer Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2050 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2051 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2052 | T_TOPOFF_MINUTE_0M, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2053 | T_TOPOFF_MINUTE_5M, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2054 | T_TOPOFF_MINUTE_10M, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2055 | T_TOPOFF_MINUTE_15M, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2056 | T_TOPOFF_MINUTE_20M, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2057 | T_TOPOFF_MINUTE_25M, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2058 | T_TOPOFF_MINUTE_30M, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2059 | T_TOPOFF_MINUTE_35M |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2060 | }t_topoff_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2061 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2062 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2063 | * @brief Set Top-off Timer Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2064 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2065 | * @param[in] t_topoff Top-off timer value field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2066 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2067 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2068 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2069 | int SetTopOffTimerValue(t_topoff_t t_topoff); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2070 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2071 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2072 | * @brief Get Top-off Timer Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2073 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2074 | * @param[out] t_topoff Top-off timer value field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2075 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2076 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2077 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2078 | int GetTopOffTimerValue(t_topoff_t *t_topoff); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2079 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2080 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2081 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2082 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2083 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2084 | * - Register : CNFG_CHG_D (0x23) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2085 | * - Bit Fields : [7:5] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2086 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2087 | * - Description : Die Junction Temperature Regulation Point, TJ-REG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2088 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2089 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2090 | TJ_REG_DEGREE_60C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2091 | TJ_REG_DEGREE_70C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2092 | TJ_REG_DEGREE_80C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2093 | TJ_REG_DEGREE_90C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2094 | TJ_REG_DEGREE_100C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2095 | TJ_REG_DEGREE_100C_0x05, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2096 | TJ_REG_DEGREE_100C_0x06, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2097 | TJ_REG_DEGREE_100C_0x07 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2098 | }tj_reg_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2099 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2100 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2101 | * @brief Set the Die Junction Temperature Regulation Point, TJ-REG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2102 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2103 | * @param[in] tj_reg The die junction temperature regulation point field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2104 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2105 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2106 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2107 | int SetDieJunctionTemperature(tj_reg_t tj_reg); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2108 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2109 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2110 | * @brief Get the Die Junction Temperature Regulation Point, TJ-REG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2111 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2112 | * @param[out] tj_reg The die junction temperature regulation point field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2113 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2114 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2115 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2116 | int GetDieJunctionTemperature(tj_reg_t *tj_reg); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2117 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2118 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2119 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2120 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2121 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2122 | * - Register : CNFG_CHG_D (0x23) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2123 | * - Bit Fields : [4:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2124 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2125 | * - Description : System Voltage Regulation (VSYS-REG). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2126 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2127 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2128 | VSYS_REG_VOLT_4_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2129 | VSYS_REG_VOLT_4_125V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2130 | VSYS_REG_VOLT_4_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2131 | VSYS_REG_VOLT_4_175V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2132 | VSYS_REG_VOLT_4_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2133 | VSYS_REG_VOLT_4_225V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2134 | VSYS_REG_VOLT_4_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2135 | VSYS_REG_VOLT_4_275V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2136 | VSYS_REG_VOLT_4_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2137 | VSYS_REG_VOLT_4_325V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2138 | VSYS_REG_VOLT_4_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2139 | VSYS_REG_VOLT_4_375V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2140 | VSYS_REG_VOLT_4_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2141 | VSYS_REG_VOLT_4_425V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2142 | VSYS_REG_VOLT_4_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2143 | VSYS_REG_VOLT_4_475V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2144 | VSYS_REG_VOLT_4_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2145 | VSYS_REG_VOLT_4_525V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2146 | VSYS_REG_VOLT_4_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2147 | VSYS_REG_VOLT_4_575V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2148 | VSYS_REG_VOLT_4_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2149 | VSYS_REG_VOLT_4_625V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2150 | VSYS_REG_VOLT_4_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2151 | VSYS_REG_VOLT_4_675V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2152 | VSYS_REG_VOLT_4_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2153 | VSYS_REG_VOLT_4_725V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2154 | VSYS_REG_VOLT_4_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2155 | VSYS_REG_VOLT_4_775V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2156 | VSYS_REG_VOLT_4_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2157 | VSYS_REG_VOLT_4_800V_0x1D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2158 | VSYS_REG_VOLT_4_800V_0x1E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2159 | VSYS_REG_VOLT_4_800V_0x1F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2160 | }vsys_reg_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2161 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2162 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2163 | * @brief Set System Voltage Regulation (VSYS-REG). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2164 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2165 | * @param[in] vsys_reg System voltage regulation field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2166 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2167 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2168 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2169 | int SetSystemVoltageRegulation(vsys_reg_t vsys_reg); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2170 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2171 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2172 | * @brief Get System Voltage Regulation (VSYS-REG). |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2173 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2174 | * @param[out] vsys_reg System voltage regulation field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2175 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2176 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2177 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2178 | int GetSystemVoltageRegulation(vsys_reg_t *vsys_reg); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2179 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2180 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2181 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2182 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2183 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2184 | * - Register : CNFG_CHG_E (0x24), and CNFG_CHG_F (0x25) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2185 | * - Bit Fields : [7:2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2186 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2187 | * - Description : Fast-Charge Constant Current Value, IFAST-CHG or IFAST-CHG-JEITA. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2188 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2189 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2190 | CHG_CC_AMP_7_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2191 | CHG_CC_AMP_15_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2192 | CHG_CC_AMP_22_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2193 | CHG_CC_AMP_30_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2194 | CHG_CC_AMP_37_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2195 | CHG_CC_AMP_45_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2196 | CHG_CC_AMP_52_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2197 | CHG_CC_AMP_60_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2198 | CHG_CC_AMP_67_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2199 | CHG_CC_AMP_75_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2200 | CHG_CC_AMP_82_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2201 | CHG_CC_AMP_90_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2202 | CHG_CC_AMP_97_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2203 | CHG_CC_AMP_105_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2204 | CHG_CC_AMP_112_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2205 | CHG_CC_AMP_120_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2206 | CHG_CC_AMP_127_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2207 | CHG_CC_AMP_135_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2208 | CHG_CC_AMP_142_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2209 | CHG_CC_AMP_150_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2210 | CHG_CC_AMP_157_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2211 | CHG_CC_AMP_165_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2212 | CHG_CC_AMP_172_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2213 | CHG_CC_AMP_180_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2214 | CHG_CC_AMP_187_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2215 | CHG_CC_AMP_195_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2216 | CHG_CC_AMP_202_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2217 | CHG_CC_AMP_210_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2218 | CHG_CC_AMP_217_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2219 | CHG_CC_AMP_225_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2220 | CHG_CC_AMP_232_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2221 | CHG_CC_AMP_240_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2222 | CHG_CC_AMP_247_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2223 | CHG_CC_AMP_255_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2224 | CHG_CC_AMP_262_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2225 | CHG_CC_AMP_270_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2226 | CHG_CC_AMP_277_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2227 | CHG_CC_AMP_285_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2228 | CHG_CC_AMP_292_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2229 | CHG_CC_AMP_300_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2230 | CHG_CC_AMP_300_0MA_0x28, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2231 | CHG_CC_AMP_300_0MA_0x29, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2232 | CHG_CC_AMP_300_0MA_0x2A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2233 | CHG_CC_AMP_300_0MA_0x2B, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2234 | CHG_CC_AMP_300_0MA_0x2C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2235 | CHG_CC_AMP_300_0MA_0x2D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2236 | CHG_CC_AMP_300_0MA_0x2E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2237 | CHG_CC_AMP_300_0MA_0x2F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2238 | CHG_CC_AMP_300_0MA_0x30, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2239 | CHG_CC_AMP_300_0MA_0x31, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2240 | CHG_CC_AMP_300_0MA_0x32, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2241 | CHG_CC_AMP_300_0MA_0x33, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2242 | CHG_CC_AMP_300_0MA_0x34, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2243 | CHG_CC_AMP_300_0MA_0x35, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2244 | CHG_CC_AMP_300_0MA_0x36, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2245 | CHG_CC_AMP_300_0MA_0x37, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2246 | CHG_CC_AMP_300_0MA_0x38, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2247 | CHG_CC_AMP_300_0MA_0x39, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2248 | CHG_CC_AMP_300_0MA_0x3A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2249 | CHG_CC_AMP_300_0MA_0x3B, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2250 | CHG_CC_AMP_300_0MA_0x3C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2251 | CHG_CC_AMP_300_0MA_0x3D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2252 | CHG_CC_AMP_300_0MA_0x3E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2253 | CHG_CC_AMP_300_0MA_0x3F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2254 | }chg_cc_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2255 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2256 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2257 | * @brief Set the Fast-Charge Constant Current Value, IFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2258 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2259 | * @param[in] chg_cc the fast-charge constant current value field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2260 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2261 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2262 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2263 | int SetFastChargeCCValue(chg_cc_t chg_cc); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2264 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2265 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2266 | * @brief Get the Fast-Charge Constant Current Value, IFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2267 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2268 | * @param[out] chg_cc the fast-charge constant current value field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2269 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2270 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2271 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2272 | int GetFastChargeCCValue(chg_cc_t *chg_cc); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2273 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2274 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2275 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2276 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2277 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2278 | * - Register : CNFG_CHG_E (0x24) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2279 | * - Bit Fields : [1:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2280 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2281 | * - Description : Fast-charge Safety timer, tFC. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2282 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2283 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2284 | T_FAST_CHG_TIMER_DISABLED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2285 | T_FAST_CHG_HOUR_3H, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2286 | T_FAST_CHG_HOUR_5H, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2287 | T_FAST_CHG_HOUR_7H |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2288 | }t_fast_chg_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2289 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2290 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2291 | * @brief Set the Fast-charge Safety timer, tFC. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2292 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2293 | * @param[in] t_fast_chg Fast-charge safety timer field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2294 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2295 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2296 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2297 | int SetFastChargSafetyTimer(t_fast_chg_t t_fast_chg); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2298 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2299 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2300 | * @brief Get the Fast-charge Safety timer, tFC. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2301 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2302 | * @param[out] t_fast_chg Fast-charge safety timer field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2303 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2304 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2305 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2306 | int GetFastChargSafetyTimer(t_fast_chg_t *t_fast_chg); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2307 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2308 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2309 | * @brief Set IFAST-CHG-JEITA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2310 | * when the battery is either cool or warm as defined by the |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2311 | * VCOOL and VWARM temperature thresholds.. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2312 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2313 | * @param[in] chg_cc_jeita IFAST-CHG-JEITA field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2314 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2315 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2316 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2317 | int SetFastChargeCCJEITA(chg_cc_t chg_cc_jeita); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2318 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2319 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2320 | * @brief Get IFAST-CHG-JEITA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2321 | * when the battery is either cool or warm as defined by the |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2322 | * VCOOL and VWARM temperature thresholds. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2323 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2324 | * @param[out] chg_cc_jeita IFAST-CHG-JEITA field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2325 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2326 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2327 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2328 | int GetFastChargeCCJEITA(chg_cc_t *chg_cc_jeita); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2329 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2330 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2331 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2332 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2333 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2334 | * - Register : CNFG_CHG_F (0x25) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2335 | * - Bit Fields : [1] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2336 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2337 | * - Description : Thermistor Enable Bit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2338 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2339 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2340 | THM_EN_THERMISTOR_DISABLED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2341 | THM_EN_THERMISTOR_ENABLED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2342 | }thm_en_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2343 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2344 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2345 | * @brief Set Thermistor Enable Bit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2346 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2347 | * @param[in] thm_en Thermistor enable bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2348 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2349 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2350 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2351 | int SetThermistorEnable(thm_en_t thm_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2352 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2353 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2354 | * @brief Get Thermistor enable bit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2355 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2356 | * @param[out] thm_en Thermistor enable bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2357 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2358 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2359 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2360 | int GetThermistorEnable(thm_en_t *thm_en); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2361 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2362 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2363 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2364 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2365 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2366 | * - Register : CNFG_CHG_G (0x26) and CNFG_CHG_H (0x27) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2367 | * - Bit Fields : [7:2] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2368 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2369 | * - Description : Fast-Charge Battery Regulation Voltage, VFAST-CHG or VFAST-CHG-JEITA. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2370 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2371 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2372 | CHG_CV_VOLT_3_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2373 | CHG_CV_VOLT_3_625V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2374 | CHG_CV_VOLT_3_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2375 | CHG_CV_VOLT_3_675V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2376 | CHG_CV_VOLT_3_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2377 | CHG_CV_VOLT_3_725V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2378 | CHG_CV_VOLT_3_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2379 | CHG_CV_VOLT_3_775V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2380 | CHG_CV_VOLT_3_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2381 | CHG_CV_VOLT_3_825V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2382 | CHG_CV_VOLT_3_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2383 | CHG_CV_VOLT_3_875V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2384 | CHG_CV_VOLT_3_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2385 | CHG_CV_VOLT_3_925V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2386 | CHG_CV_VOLT_3_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2387 | CHG_CV_VOLT_3_975V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2388 | CHG_CV_VOLT_4_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2389 | CHG_CV_VOLT_4_025V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2390 | CHG_CV_VOLT_4_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2391 | CHG_CV_VOLT_4_075V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2392 | CHG_CV_VOLT_4_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2393 | CHG_CV_VOLT_4_125V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2394 | CHG_CV_VOLT_4_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2395 | CHG_CV_VOLT_4_175V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2396 | CHG_CV_VOLT_4_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2397 | CHG_CV_VOLT_4_225V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2398 | CHG_CV_VOLT_4_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2399 | CHG_CV_VOLT_4_275V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2400 | CHG_CV_VOLT_4_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2401 | CHG_CV_VOLT_4_325V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2402 | CHG_CV_VOLT_4_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2403 | CHG_CV_VOLT_4_375V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2404 | CHG_CV_VOLT_4_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2405 | CHG_CV_VOLT_4_425V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2406 | CHG_CV_VOLT_4_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2407 | CHG_CV_VOLT_4_475V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2408 | CHG_CV_VOLT_4_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2409 | CHG_CV_VOLT_4_525V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2410 | CHG_CV_VOLT_4_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2411 | CHG_CV_VOLT_4_575V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2412 | CHG_CV_VOLT_4_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2413 | CHG_CV_VOLT_4_600V_0x29, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2414 | CHG_CV_VOLT_4_600V_0x2A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2415 | CHG_CV_VOLT_4_600V_0x2B, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2416 | CHG_CV_VOLT_4_600V_0x2C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2417 | CHG_CV_VOLT_4_600V_0x2D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2418 | CHG_CV_VOLT_4_600V_0x2E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2419 | CHG_CV_VOLT_4_600V_0x2F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2420 | CHG_CV_VOLT_4_600V_0x30, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2421 | CHG_CV_VOLT_4_600V_0x31, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2422 | CHG_CV_VOLT_4_600V_0x32, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2423 | CHG_CV_VOLT_4_600V_0x33, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2424 | CHG_CV_VOLT_4_600V_0x34, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2425 | CHG_CV_VOLT_4_600V_0x35, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2426 | CHG_CV_VOLT_4_600V_0x36, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2427 | CHG_CV_VOLT_4_600V_0x37, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2428 | CHG_CV_VOLT_4_600V_0x38, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2429 | CHG_CV_VOLT_4_600V_0x39, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2430 | CHG_CV_VOLT_4_600V_0x3A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2431 | CHG_CV_VOLT_4_600V_0x3B, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2432 | CHG_CV_VOLT_4_600V_0x3C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2433 | CHG_CV_VOLT_4_600V_0x3D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2434 | CHG_CV_VOLT_4_600V_0x3E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2435 | CHG_CV_VOLT_4_600V_0x3F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2436 | }chg_cv_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2437 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2438 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2439 | * @brief Set Fast-Charge Battery Regulation Voltage, VFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2440 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2441 | * @param[in] chg_cv Fast-charge battery regulation voltage field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2442 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2443 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2444 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2445 | int SetFastChargeBatteryRegVolt(chg_cv_t chg_cv); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2446 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2447 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2448 | * @brief Get Fast-Charge Battery Regulation Voltage, VFAST-CHG. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2449 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2450 | * @param[out] chg_cv Fast-charge battery regulation voltage field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2451 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2452 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2453 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2454 | int GetFastChargeBatteryRegVolt(chg_cv_t *chg_cv); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2455 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2456 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2457 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2458 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2459 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2460 | * - Register : CNFG_CHG_G (0x26) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2461 | * - Bit Fields : [1] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2462 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2463 | * - Description : USB suspend mode. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2464 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2465 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2466 | USBS_CHGIN_NOT_SUSPENDED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2467 | USBS_CHGIN_SUSPENDED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2468 | }usbs_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2469 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2470 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2471 | * @brief Set USBS. Setting this bit places CHGIN in USB suspend mode. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2472 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2473 | * @param[in] usbs USB suspend mode bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2474 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2475 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2476 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2477 | int SetCHGINUSBSuspendMode(usbs_t usbs); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2478 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2479 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2480 | * @brief Get USBS. Setting this bit places CHGIN in USB suspend mode. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2481 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2482 | * @param[out] usbs USB suspend mode bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2483 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2484 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2485 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2486 | int GetCHGINUSBSuspendMode(usbs_t *usbs); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2487 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2488 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2489 | * @brief Set the modified VFAST-CHG-JEITA for when the battery is either |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2490 | * cool or warm as defined by the VCOOL and VWARM temperature thresholds. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2491 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2492 | * @param[in] chg_cv_jeita Modified VFAST-CHG-JEITA field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2493 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2494 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2495 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2496 | int SetFastChargeVoltageJEITA(chg_cv_t chg_cv_jeita); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2497 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2498 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2499 | * @brief Get the modified VFAST-CHG-JEITA for when the battery is either |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2500 | * cool or warm as defined by the VCOOL and VWARM temperature thresholds. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2501 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2502 | * @param[out] chg_cv_jeita Modified VFAST-CHG-JEITA field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2503 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2504 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2505 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2506 | int GetFastChargeVoltageJEITA(chg_cv_t *chg_cv_jeita); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2507 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2508 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2509 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2510 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2511 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2512 | * - Register : CNFG_CHG_I (0x28) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2513 | * - Bit Fields : [7:4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2514 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2515 | * - Description : Battery Discharge Current Full-Scale Current Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2516 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2517 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2518 | IMON_DISCHG_SCALE_AMP_8_2MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2519 | IMON_DISCHG_SCALE_AMP_40_5MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2520 | IMON_DISCHG_SCALE_AMP_72_3MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2521 | IMON_DISCHG_SCALE_AMP_103_4MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2522 | IMON_DISCHG_SCALE_AMP_134_1MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2523 | IMON_DISCHG_SCALE_AMP_164_1MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2524 | IMON_DISCHG_SCALE_AMP_193_7MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2525 | IMON_DISCHG_SCALE_AMP_222_7MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2526 | IMON_DISCHG_SCALE_AMP_251_2MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2527 | IMON_DISCHG_SCALE_AMP_279_3MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2528 | IMON_DISCHG_SCALE_AMP_300_0MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2529 | IMON_DISCHG_SCALE_AMP_300_0MA_0x0B, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2530 | IMON_DISCHG_SCALE_AMP_300_0MA_0x0C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2531 | IMON_DISCHG_SCALE_AMP_300_0MA_0x0D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2532 | IMON_DISCHG_SCALE_AMP_300_0MA_0x0E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2533 | IMON_DISCHG_SCALE_AMP_300_0MA_0x0F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2534 | }imon_dischg_scale_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2535 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2536 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2537 | * @brief Set the Battery Discharge Current Full-Scale Current Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2538 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2539 | * @param[in] imon_dischg_scale the battery discharge current full-scale current value field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2540 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2541 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2542 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2543 | int SetDischargeCurrentFullScale(imon_dischg_scale_t imon_dischg_scale); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2544 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2545 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2546 | * @brief Get the Battery Discharge Current Full-Scale Current Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2547 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2548 | * @param[out] imon_dischg_scale the battery discharge current full-scale current value field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2549 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2550 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2551 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2552 | int GetDischargeCurrentFullScale(imon_dischg_scale_t *imon_dischg_scale); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2553 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2554 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2555 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2556 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2557 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2558 | * - Register : CNFG_CHG_I (0x28) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2559 | * - Bit Fields : [3:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2560 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2561 | * - Description : Analog channel to connect to AMUX. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2562 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2563 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2564 | MUX_SEL_MULTIPLEXER_DISABLED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2565 | MUX_SEL_CHGIN_VOLTAGE_MONITOR, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2566 | MUX_SEL_CHGIN_CURRENT_MONITOR, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2567 | MUX_SEL_BATTERY_VOLTAGE_MONITOR, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2568 | MUX_SEL_BATTERY_CHARGE_CURRENT_MONITOR, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2569 | MUX_SEL_BATTERY_DISCHARGE_CURRENT_MONITOR_NORMAL, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2570 | MUX_SEL_BATTERY_DISCHARGE_CURRENT_MONITOR_NULL, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2571 | MUX_SEL_THM_VOLTAGE_MONITOR, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2572 | MUX_SEL_TBIAS_VOLTAGE_MONITOR, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2573 | MUX_SEL_AGND_VOLTAGE_MONITOR, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2574 | MUX_SEL_SYS_VOLTAGE_MONITOR, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2575 | MUX_SEL_SYS_VOLTAGE_MONITOR_0x0B, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2576 | MUX_SEL_SYS_VOLTAGE_MONITOR_0x0C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2577 | MUX_SEL_SYS_VOLTAGE_MONITOR_0x0D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2578 | MUX_SEL_SYS_VOLTAGE_MONITOR_0x0E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2579 | MUX_SEL_SYS_VOLTAGE_MONITOR_0x0F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2580 | }mux_sel_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2581 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2582 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2583 | * @brief Set the Analog Channel to connect to AMUX. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2584 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2585 | * @param[in] imon_dischg_scale the battery discharge current full-scale current value field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2586 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2587 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2588 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2589 | int SetAMUX(mux_sel_t mux_sel); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2590 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2591 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2592 | * @brief Get the Battery Discharge Current Full-Scale Current Value. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2593 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2594 | * @param[out] imon_dischg_scale the battery discharge current full-scale current value field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2595 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2596 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2597 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2598 | int GetAMUX(mux_sel_t *mux_sel); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2599 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2600 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2601 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2602 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2603 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2604 | * - Register : CNFG_SBB0_A (0x29), CNFG_SBB1_A (0x2B) and CNFG_SBB2_A (0x2D) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2605 | * - Bit Fields : [6:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2606 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2607 | * - Description : SIMO Buck-Boost Channel 0, 1 or 2 Target Output Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2608 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2609 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2610 | TV_SBB_VOLT_0_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2611 | TV_SBB_VOLT_0_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2612 | TV_SBB_VOLT_0_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2613 | TV_SBB_VOLT_0_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2614 | TV_SBB_VOLT_1_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2615 | TV_SBB_VOLT_1_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2616 | TV_SBB_VOLT_1_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2617 | TV_SBB_VOLT_1_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2618 | TV_SBB_VOLT_1_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2619 | TV_SBB_VOLT_1_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2620 | TV_SBB_VOLT_1_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2621 | TV_SBB_VOLT_1_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2622 | TV_SBB_VOLT_1_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2623 | TV_SBB_VOLT_1_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2624 | TV_SBB_VOLT_1_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2625 | TV_SBB_VOLT_1_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2626 | TV_SBB_VOLT_1_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2627 | TV_SBB_VOLT_1_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2628 | TV_SBB_VOLT_1_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2629 | TV_SBB_VOLT_1_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2630 | TV_SBB_VOLT_1_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2631 | TV_SBB_VOLT_1_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2632 | TV_SBB_VOLT_1_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2633 | TV_SBB_VOLT_1_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2634 | TV_SBB_VOLT_2_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2635 | TV_SBB_VOLT_2_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2636 | TV_SBB_VOLT_2_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2637 | TV_SBB_VOLT_2_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2638 | TV_SBB_VOLT_2_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2639 | TV_SBB_VOLT_2_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2640 | TV_SBB_VOLT_2_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2641 | TV_SBB_VOLT_2_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2642 | TV_SBB_VOLT_2_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2643 | TV_SBB_VOLT_2_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2644 | TV_SBB_VOLT_2_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2645 | TV_SBB_VOLT_2_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2646 | TV_SBB_VOLT_2_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2647 | TV_SBB_VOLT_2_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2648 | TV_SBB_VOLT_2_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2649 | TV_SBB_VOLT_2_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2650 | TV_SBB_VOLT_2_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2651 | TV_SBB_VOLT_2_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2652 | TV_SBB_VOLT_2_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2653 | TV_SBB_VOLT_2_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2654 | TV_SBB_VOLT_3_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2655 | TV_SBB_VOLT_3_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2656 | TV_SBB_VOLT_3_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2657 | TV_SBB_VOLT_3_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2658 | TV_SBB_VOLT_3_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2659 | TV_SBB_VOLT_3_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2660 | TV_SBB_VOLT_3_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2661 | TV_SBB_VOLT_3_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2662 | TV_SBB_VOLT_3_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2663 | TV_SBB_VOLT_3_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2664 | TV_SBB_VOLT_3_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2665 | TV_SBB_VOLT_3_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2666 | TV_SBB_VOLT_3_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2667 | TV_SBB_VOLT_3_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2668 | TV_SBB_VOLT_3_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2669 | TV_SBB_VOLT_3_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2670 | TV_SBB_VOLT_3_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2671 | TV_SBB_VOLT_3_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2672 | TV_SBB_VOLT_3_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2673 | TV_SBB_VOLT_3_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2674 | TV_SBB_VOLT_4_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2675 | TV_SBB_VOLT_4_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2676 | TV_SBB_VOLT_4_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2677 | TV_SBB_VOLT_4_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2678 | TV_SBB_VOLT_4_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2679 | TV_SBB_VOLT_4_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2680 | TV_SBB_VOLT_4_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2681 | TV_SBB_VOLT_4_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2682 | TV_SBB_VOLT_4_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2683 | TV_SBB_VOLT_4_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2684 | TV_SBB_VOLT_4_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2685 | TV_SBB_VOLT_4_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2686 | TV_SBB_VOLT_4_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2687 | TV_SBB_VOLT_4_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2688 | TV_SBB_VOLT_4_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2689 | TV_SBB_VOLT_4_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2690 | TV_SBB_VOLT_4_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2691 | TV_SBB_VOLT_4_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2692 | TV_SBB_VOLT_4_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2693 | TV_SBB_VOLT_4_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2694 | TV_SBB_VOLT_5_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2695 | TV_SBB_VOLT_5_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2696 | TV_SBB_VOLT_5_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2697 | TV_SBB_VOLT_5_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2698 | TV_SBB_VOLT_5_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2699 | TV_SBB_VOLT_5_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2700 | TV_SBB_VOLT_5_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2701 | TV_SBB_VOLT_5_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2702 | TV_SBB_VOLT_5_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2703 | TV_SBB_VOLT_5_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2704 | TV_SBB_VOLT_5_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2705 | TV_SBB_VOLT_5_500V_0x5D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2706 | TV_SBB_VOLT_5_500V_0x5E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2707 | TV_SBB_VOLT_5_500V_0x5F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2708 | TV_SBB_VOLT_5_500V_0x60, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2709 | TV_SBB_VOLT_5_500V_0x61, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2710 | TV_SBB_VOLT_5_500V_0x62, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2711 | TV_SBB_VOLT_5_500V_0x63, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2712 | TV_SBB_VOLT_5_500V_0x64, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2713 | TV_SBB_VOLT_5_500V_0x65, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2714 | TV_SBB_VOLT_5_500V_0x66, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2715 | TV_SBB_VOLT_5_500V_0x67, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2716 | TV_SBB_VOLT_5_500V_0x68, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2717 | TV_SBB_VOLT_5_500V_0x69, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2718 | TV_SBB_VOLT_5_500V_0x6A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2719 | TV_SBB_VOLT_5_500V_0x6B, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2720 | TV_SBB_VOLT_5_500V_0x6C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2721 | TV_SBB_VOLT_5_500V_0x6D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2722 | TV_SBB_VOLT_5_500V_0x6E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2723 | TV_SBB_VOLT_5_500V_0x6F, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2724 | TV_SBB_VOLT_5_500V_0x70, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2725 | TV_SBB_VOLT_5_500V_0x71, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2726 | TV_SBB_VOLT_5_500V_0x72, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2727 | TV_SBB_VOLT_5_500V_0x73, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2728 | TV_SBB_VOLT_5_500V_0x74, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2729 | TV_SBB_VOLT_5_500V_0x75, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2730 | TV_SBB_VOLT_5_500V_0x76, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2731 | TV_SBB_VOLT_5_500V_0x77, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2732 | TV_SBB_VOLT_5_500V_0x78, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2733 | TV_SBB_VOLT_5_500V_0x79, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2734 | TV_SBB_VOLT_5_500V_0x7A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2735 | TV_SBB_VOLT_5_500V_0x7B, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2736 | TV_SBB_VOLT_5_500V_0x7C, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2737 | TV_SBB_VOLT_5_500V_0x7D, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2738 | TV_SBB_VOLT_5_500V_0x7E, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2739 | TV_SBB_VOLT_5_500V_0x7F |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2740 | }tv_sbb_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2741 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2742 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2743 | * @brief Set SIMO Buck-Boost Channel x Target Output Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2744 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2745 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2746 | * @param[in] tv_sbb SIMO buck-boost channel x target output voltage field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2747 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2748 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2749 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2750 | int SetSBBTargetOutVoltage(uint8_t channel, tv_sbb_t tv_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2751 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2752 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2753 | * @brief Get SIMO Buck-Boost Channel x Target Output Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2754 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2755 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2756 | * @param[out] tv_sbb SIMO buck-boost channel x target output voltage field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2757 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2758 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2759 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2760 | int GetSBBTargetOutVoltage(uint8_t channel, tv_sbb_t *tv_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2761 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2762 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2763 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2764 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2765 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2766 | * - Register : CNFG_SBB0_B (0x2A), CNFG_SBB1_B (0x2C) (0x2B) and CNFG_SBB2_B (0x2E) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2767 | * - Bit Fields : [6] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2768 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2769 | * - Description : Operation mode of SBB0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2770 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2771 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2772 | OP_MODE_BUCK_BOOST_MODE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2773 | OP_MODE_BUCK_MODE |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2774 | }op_mode_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2775 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2776 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2777 | * @brief Set Operation mode of SBBx. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2778 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2779 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2780 | * @param[in] op_mode Operation mode of SBBx bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2781 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2782 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2783 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2784 | int SetSIMOOperationMode(uint8_t channel, op_mode_t op_mode); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2785 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2786 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2787 | * @brief Get Operation mode of SBBx. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2788 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2789 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2790 | * @param[out] op_mode Operation mode of SBBx bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2791 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2792 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2793 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2794 | int GetSIMOOperationMode(uint8_t channel, op_mode_t *op_mode); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2795 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2796 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2797 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2798 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2799 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2800 | * - Register : CNFG_SBB0_B (0x2A), CNFG_SBB1_B (0x2C) (0x2B) and CNFG_SBB2_B (0x2E) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2801 | * - Bit Fields : [5:4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2802 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2803 | * - Description : SIMO Buck-Boost Channel 0, 1 or 2 Peak Current Limit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2804 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2805 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2806 | IP_SBB_AMP_1_000A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2807 | IP_SBB_AMP_0_750A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2808 | IP_SBB_AMP_0_500A, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2809 | IP_SBB_AMP_0_333A |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2810 | }ip_sbb_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2811 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2812 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2813 | * @brief Set SIMO Buck-Boost Channel x Peak Current Limit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2814 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2815 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2816 | * @param[in] ip_sbb SIMO buck-boost channel 2 peak current limit field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2817 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2818 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2819 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2820 | int SetSBBPeakCurrentLimit(uint8_t channel, ip_sbb_t ip_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2821 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2822 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2823 | * @brief Get SIMO Buck-Boost Channel x Peak Current Limit. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2824 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2825 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2826 | * @param[out] ip_sbb SIMO buck-boost channel 2 peak current limit field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2827 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2828 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2829 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2830 | int GetSBBPeakCurrentLimit(uint8_t channel, ip_sbb_t *ip_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2831 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2832 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2833 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2834 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2835 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2836 | * - Register : CNFG_SBB0_B (0x2A), CNFG_SBB1_B (0x2C) (0x2B) and CNFG_SBB2_B (0x2E) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2837 | * - Bit Fields : [3] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2838 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2839 | * - Description : SIMO Buck-Boost Channel 0, 1 or 2 Active-Discharge Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2840 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2841 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2842 | ADE_SBB_DISABLED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2843 | ADE_SBB_ENABLED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2844 | }ade_sbb_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2845 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2846 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2847 | * @brief Set SIMO Buck-Boost Channel x Active-Discharge Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2848 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2849 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2850 | * @param[in] ade_sbb SIMO buck-boost channel 2 active-discharge enable bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2851 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2852 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2853 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2854 | int SetSBBActiveDischargeEnable(uint8_t channel, ade_sbb_t ade_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2855 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2856 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2857 | * @brief Get SIMO Buck-Boost Channel x Active-Discharge Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2858 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2859 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2860 | * @param[out] ade_sbb SIMO buck-boost channel 2 active-discharge enable bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2861 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2862 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2863 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2864 | int GetSBBActiveDischargeEnable(uint8_t channel, ade_sbb_t *ade_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2865 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2866 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2867 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2868 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2869 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2870 | * - Register : CNFG_SBB0_B (0x2A), CNFG_SBB1_B (0x2C) (0x2B) and CNFG_SBB2_B (0x2E) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2871 | * - Bit Fields : [5:4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2872 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2873 | * - Description : Enable Control for SIMO Buck-Boost Channel 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2874 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2875 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2876 | EN_SBB_FPS_SLOT_0, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2877 | EN_SBB_FPS_SLOT_1, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2878 | EN_SBB_FPS_SLOT_2, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2879 | EN_SBB_FPS_SLOT_3, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2880 | EN_SBB_OFF, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2881 | EN_SBB_SAME_AS_0X04, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2882 | EN_SBB_ON, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2883 | EN_SBB_SAME_AS_0X06, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2884 | }en_sbb_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2885 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2886 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2887 | * @brief Set Enable Control for SIMO Buck-Boost Channel x. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2888 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2889 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2890 | * @param[in] en_sbb Enable control for SIMO buck-boost channel x field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2891 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2892 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2893 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2894 | int SetSBBEnableControl(uint8_t channel, en_sbb_t en_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2895 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2896 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2897 | * @brief Get Enable Control for SIMO Buck-Boost Channel x. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2898 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2899 | * @param[in] channel Channel number: 0, 1 or 2. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2900 | * @param[out] en_sbb Enable control for SIMO buck-boost channel x field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2901 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2902 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2903 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2904 | int GetSBBEnableControl(uint8_t channel, en_sbb_t *en_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2905 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2906 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2907 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2908 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2909 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2910 | * - Register : CNFG_SBB_TOP (0x2F) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2911 | * - Bit Fields : [7] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2912 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2913 | * - Description : Changes how CNFG_CHG_B.ICHGIN_LIM is interpreted. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2914 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2915 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2916 | ICHIN_LIM_AMP_95MA, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2917 | ICHIN_LIM_AMP_475MA |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2918 | }ichgin_lim_def_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2919 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2920 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2921 | * @brief Set Changes how CNFG_CHG_B.ICHGIN_LIM is interpreted. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2922 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2923 | * @param[in] ichgin_lim_def CNFG_CHG_B.ICHGIN_LIM bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2924 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2925 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2926 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2927 | int SetCHGINInputCurrentLimit(ichgin_lim_def_t ichgin_lim_def); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2928 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2929 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2930 | * @brief Get Changes how CNFG_CHG_B.ICHGIN_LIM is interpreted. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2931 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2932 | * @param[out] ichgin_lim_def CNFG_CHG_B.ICHGIN_LIM bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2933 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2934 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2935 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2936 | int GetCHGINInputCurrentLimit(ichgin_lim_def_t *ichgin_lim_def); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2937 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2938 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2939 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2940 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2941 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2942 | * - Register : CNFG_SBB_TOP (0x2F) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2943 | * - Bit Fields : [1:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2944 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2945 | * - Description : SIMO Buck-Boost (all channels) Drive Strength Trim. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2946 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2947 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2948 | DRV_SBB_FASTEST_TRANSITION_TIME, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2949 | DRV_SBB_A_LITTLE_SLOWER_THAN_0X00, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2950 | DRV_SBB_A_LITTLE_SLOWER_THAN_0X01, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2951 | DRV_SBB_A_LITTLE_SLOWER_THAN_0X02 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2952 | }drv_sbb_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2953 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2954 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2955 | * @brief Set SIMO Buck-Boost (all channels) Drive Strength Trim. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2956 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2957 | * @param[in] drv_sbb SIMO buck-boost drive strength trim field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2958 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2959 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2960 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2961 | int SetSBBDriveStrength(drv_sbb_t drv_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2962 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2963 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2964 | * @brief Get SIMO Buck-Boost (all channels) Drive Strength Trim. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2965 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2966 | * @param[out] drv_sbb SIMO buck-boost drive strength trim field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2967 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2968 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2969 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2970 | int GetSBBDriveStrength(drv_sbb_t *drv_sbb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2971 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2972 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2973 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2974 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2975 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2976 | * - Register : CNFG_LDO0_A (0x38) and CNFG_LDO1_A (0x3A) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2977 | * - Bit Fields : [6:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2978 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2979 | * - Description : LDO Target Output Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2980 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2981 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2982 | TV_LDO_VOLT_0_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2983 | TV_LDO_VOLT_0_825V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2984 | TV_LDO_VOLT_0_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2985 | TV_LDO_VOLT_0_875V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2986 | TV_LDO_VOLT_0_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2987 | TV_LDO_VOLT_0_925V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2988 | TV_LDO_VOLT_0_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2989 | TV_LDO_VOLT_0_975V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2990 | TV_LDO_VOLT_1_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2991 | TV_LDO_VOLT_1_025V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2992 | TV_LDO_VOLT_1_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2993 | TV_LDO_VOLT_1_075V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2994 | TV_LDO_VOLT_1_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2995 | TV_LDO_VOLT_1_125V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2996 | TV_LDO_VOLT_1_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2997 | TV_LDO_VOLT_1_175V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2998 | TV_LDO_VOLT_1_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 2999 | TV_LDO_VOLT_1_225V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3000 | TV_LDO_VOLT_1_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3001 | TV_LDO_VOLT_1_275V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3002 | TV_LDO_VOLT_1_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3003 | TV_LDO_VOLT_1_325V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3004 | TV_LDO_VOLT_1_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3005 | TV_LDO_VOLT_1_375V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3006 | TV_LDO_VOLT_1_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3007 | TV_LDO_VOLT_1_425V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3008 | TV_LDO_VOLT_1_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3009 | TV_LDO_VOLT_1_475V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3010 | TV_LDO_VOLT_1_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3011 | TV_LDO_VOLT_1_525V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3012 | TV_LDO_VOLT_1_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3013 | TV_LDO_VOLT_1_575V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3014 | TV_LDO_VOLT_1_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3015 | TV_LDO_VOLT_1_625V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3016 | TV_LDO_VOLT_1_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3017 | TV_LDO_VOLT_1_675V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3018 | TV_LDO_VOLT_1_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3019 | TV_LDO_VOLT_1_725V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3020 | TV_LDO_VOLT_1_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3021 | TV_LDO_VOLT_1_775V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3022 | TV_LDO_VOLT_1_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3023 | TV_LDO_VOLT_1_825V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3024 | TV_LDO_VOLT_1_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3025 | TV_LDO_VOLT_1_875V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3026 | TV_LDO_VOLT_1_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3027 | TV_LDO_VOLT_1_925V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3028 | TV_LDO_VOLT_1_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3029 | TV_LDO_VOLT_1_975V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3030 | TV_LDO_VOLT_2_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3031 | TV_LDO_VOLT_2_025V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3032 | TV_LDO_VOLT_2_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3033 | TV_LDO_VOLT_2_075V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3034 | TV_LDO_VOLT_2_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3035 | TV_LDO_VOLT_2_125V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3036 | TV_LDO_VOLT_2_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3037 | TV_LDO_VOLT_2_175V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3038 | TV_LDO_VOLT_2_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3039 | TV_LDO_VOLT_2_225V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3040 | TV_LDO_VOLT_2_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3041 | TV_LDO_VOLT_2_275V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3042 | TV_LDO_VOLT_2_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3043 | TV_LDO_VOLT_2_325V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3044 | TV_LDO_VOLT_2_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3045 | TV_LDO_VOLT_2_375V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3046 | TV_LDO_VOLT_2_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3047 | TV_LDO_VOLT_2_425V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3048 | TV_LDO_VOLT_2_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3049 | TV_LDO_VOLT_2_475V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3050 | TV_LDO_VOLT_2_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3051 | TV_LDO_VOLT_2_525V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3052 | TV_LDO_VOLT_2_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3053 | TV_LDO_VOLT_2_575V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3054 | TV_LDO_VOLT_2_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3055 | TV_LDO_VOLT_2_625V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3056 | TV_LDO_VOLT_2_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3057 | TV_LDO_VOLT_2_675V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3058 | TV_LDO_VOLT_2_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3059 | TV_LDO_VOLT_2_725V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3060 | TV_LDO_VOLT_2_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3061 | TV_LDO_VOLT_2_775V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3062 | TV_LDO_VOLT_2_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3063 | TV_LDO_VOLT_2_825V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3064 | TV_LDO_VOLT_2_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3065 | TV_LDO_VOLT_2_875V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3066 | TV_LDO_VOLT_2_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3067 | TV_LDO_VOLT_2_925V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3068 | TV_LDO_VOLT_2_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3069 | TV_LDO_VOLT_2_975V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3070 | TV_LDO_VOLT_3_000V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3071 | TV_LDO_VOLT_3_025V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3072 | TV_LDO_VOLT_3_050V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3073 | TV_LDO_VOLT_3_075V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3074 | TV_LDO_VOLT_3_100V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3075 | TV_LDO_VOLT_3_125V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3076 | TV_LDO_VOLT_3_150V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3077 | TV_LDO_VOLT_3_175V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3078 | TV_LDO_VOLT_3_200V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3079 | TV_LDO_VOLT_3_225V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3080 | TV_LDO_VOLT_3_250V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3081 | TV_LDO_VOLT_3_275V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3082 | TV_LDO_VOLT_3_300V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3083 | TV_LDO_VOLT_3_325V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3084 | TV_LDO_VOLT_3_350V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3085 | TV_LDO_VOLT_3_375V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3086 | TV_LDO_VOLT_3_400V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3087 | TV_LDO_VOLT_3_425V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3088 | TV_LDO_VOLT_3_450V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3089 | TV_LDO_VOLT_3_475V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3090 | TV_LDO_VOLT_3_500V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3091 | TV_LDO_VOLT_3_525V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3092 | TV_LDO_VOLT_3_550V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3093 | TV_LDO_VOLT_3_575V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3094 | TV_LDO_VOLT_3_600V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3095 | TV_LDO_VOLT_3_625V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3096 | TV_LDO_VOLT_3_650V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3097 | TV_LDO_VOLT_3_675V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3098 | TV_LDO_VOLT_3_700V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3099 | TV_LDO_VOLT_3_725V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3100 | TV_LDO_VOLT_3_750V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3101 | TV_LDO_VOLT_3_775V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3102 | TV_LDO_VOLT_3_800V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3103 | TV_LDO_VOLT_3_825V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3104 | TV_LDO_VOLT_3_850V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3105 | TV_LDO_VOLT_3_875V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3106 | TV_LDO_VOLT_3_900V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3107 | TV_LDO_VOLT_3_925V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3108 | TV_LDO_VOLT_3_950V, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3109 | TV_LDO_VOLT_3_975V |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3110 | }tv_ldo_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3111 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3112 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3113 | * @brief Set LDO Target Output Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3114 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3115 | * @param[in] channel Channel number: 0 or 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3116 | * @param[in] tv_ldo LDO target output voltage field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3117 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3118 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3119 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3120 | int SetLDOTargetOutVoltage(uint8_t channel, tv_ldo_t tv_ldo); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3121 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3122 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3123 | * @brief Get LDO Target Output Voltage. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3124 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3125 | * @param[in] channel Channel number: 0 or 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3126 | * @param[out] tv_ldo LDO target output voltage field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3127 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3128 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3129 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3130 | int GetLDOTargetOutVoltage(uint8_t channel, tv_ldo_t *tv_ldo); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3131 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3132 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3133 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3134 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3135 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3136 | * - Register : CNFG_LDO0_B (0x39) and CNFG_LDO1_B (0x3B) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3137 | * - Bit Fields : [4] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3138 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3139 | * - Description : Operation Mode of LDO0 or 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3140 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3141 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3142 | LDO_MD_LDO_MODE, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3143 | LDO_MD_LSW_MODE |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3144 | }ldo_md_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3145 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3146 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3147 | * @brief Set Operation Mode of LDOx. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3148 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3149 | * @param[in] channel Channel number: 0 or 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3150 | * @param[in] ldo_md Operation mode of LDOx bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3151 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3152 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3153 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3154 | int SetLDOMode(uint8_t channel, ldo_md_t ldo_md); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3155 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3156 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3157 | * @brief Get Operation Mode of LDOx. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3158 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3159 | * @param[in] channel Channel number: 0 or 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3160 | * @param[out] ldo_md Operation mode of LDOx bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3161 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3162 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3163 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3164 | int GetLDOMode(uint8_t channel, ldo_md_t *ldo_md); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3165 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3166 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3167 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3168 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3169 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3170 | * - Register : CNFG_LDO0_B (0x39) and CNFG_LDO1_B (0x3B) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3171 | * - Bit Fields : [3] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3172 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3173 | * - Description : LDO0 or 1 Active-Discharge Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3174 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3175 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3176 | ADE_LDO_DISABLED, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3177 | ADE_LDO_ENABLED |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3178 | }ade_ldo_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3179 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3180 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3181 | * @brief Set LDOx Active-Discharge Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3182 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3183 | * @param[in] channel Channel number: 0 or 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3184 | * @param[in] ade_ldo LDOx active-discharge enable bit to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3185 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3186 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3187 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3188 | int SetLDOActiveDischargeEnable(uint8_t channel, ade_ldo_t ade_ldo); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3189 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3190 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3191 | * @brief Get LDOx Active-Discharge Enable. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3192 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3193 | * @param[in] channel Channel number: 0 or 1 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3194 | * @param[out] ade_ldo LDOx active-discharge enable bit to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3195 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3196 | * @return 0 on success, error code on failure. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3197 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3198 | int GetLDOActiveDischargeEnable(uint8_t channel, ade_ldo_t *ade_ldo); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3199 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3200 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3201 | * @brief Register Configuration |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3202 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3203 | * @details |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3204 | * - Register : CNFG_LDO0_B (0x39) and CNFG_LDO1_B (0x3B) |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3205 | * - Bit Fields : [2:0] |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3206 | * - Default : 0x0 |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3207 | * - Description : Enable Control for LDO0 or 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3208 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3209 | typedef enum { |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3210 | EN_LDO_FPS_SLOT_0, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3211 | EN_LDO_FPS_SLOT_1, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3212 | EN_LDO_FPS_SLOT_2, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3213 | EN_LDO_FPS_SLOT_3, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3214 | EN_LDO_OFF, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3215 | EN_LDO_SAME_AS_0X04, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3216 | EN_LDO_ON, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3217 | EN_LDO_SAME_AS_0X06, |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3218 | }en_ldo_t; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3219 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3220 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3221 | * @brief Set Enable Control for LDOx. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3222 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3223 | * @param[in] channel Channel number: 0 or 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3224 | * @param[in] en_ldo Enable control for LDOx field to be written. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3225 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3226 | * @return 0 on success, error code on failure |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3227 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3228 | int SetLDOEnableControl(uint8_t channel, en_ldo_t en_ldo); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3229 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3230 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3231 | * @brief Get Enable Control for LDOx. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3232 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3233 | * @param[in] channel Channel number: 0 or 1. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3234 | * @param[in] en_ldo Enable control for LDOx field to be read. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3235 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3236 | * @return 0 on success, error code on failure |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3237 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3238 | int GetLDOEnableControl(uint8_t channel, en_ldo_t *en_ldo); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3239 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3240 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3241 | * @brief Disable all interrupts |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3242 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3243 | * @return 0 on success, error code on failure |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3244 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3245 | int IRQDisableAll(); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3246 | |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3247 | /** |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3248 | * @brief Set Interrupt Handler for a Specific Interrupt ID. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3249 | * |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3250 | * @param[in] id Interrupt id, one of INTR_ID_*. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3251 | * @param[in] func Interrupt handler function. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3252 | * @param[in] cb Interrupt handler data. |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3253 | */ |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3254 | void SetInterruptHandler(int_glbl_t id, interrupt_handler_function func, void *cb); |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3255 | }; |
metin.ozkan@analog.com | 0:788f63dcf0a0 | 3256 | #endif /*_MAX77654_H_*/ |