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