1 //------------------------------------------------------------------------------
2 // Copyright 2012 (c) Silicon Laboratories Inc.
3 //
4 // SPDX-License-Identifier: Zlib
5 //
6 // This siHAL software is provided 'as-is', without any express or implied
7 // warranty. In no event will the authors be held liable for any damages
8 // arising from the use of this software.
9 //
10 // Permission is granted to anyone to use this software for any purpose,
11 // including commercial applications, and to alter it and redistribute it
12 // freely, subject to the following restrictions:
13 //
14 // 1. The origin of this software must not be misrepresented; you must not
15 //    claim that you wrote the original software. If you use this software
16 //    in a product, an acknowledgment in the product documentation would be
17 //    appreciated but is not required.
18 // 2. Altered source versions must be plainly marked as such, and must not be
19 //    misrepresented as being the original software.
20 // 3. This notice may not be removed or altered from any source distribution.
21 //------------------------------------------------------------------------------
22 
23 // Version: 1
24 
25 #ifndef __SI32_EXTVREG_A_SUPPORT_H__
26 #define __SI32_EXTVREG_A_SUPPORT_H__
27 
28 #include <stdint.h>
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
34 //-----------------------------------------------------------------------------
35 // Define Current Limit Minimum Coarse Enum type
36 
37 typedef enum SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_Enum
38 {
39    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_1_UA = 1,
40    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_2_UA = 2,
41    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_3_UA = 3,
42    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_4_UA = 4,
43    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_5_UA = 5,
44    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_6_UA = 6,
45    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_7_UA = 7,
46    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_8_UA = 8
47 } SI32_EXTVREG_A_CURRENT_LIMIT_MIN_COARSE_Enum_Type;
48 
49 //-----------------------------------------------------------------------------
50 // Define Current Limit Minimum Fine Enum type
51 
52 typedef enum SI32_EXTVREG_A_CURRENT_LIMIT_MIN_FINE_Enum
53 {
54    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_FINE_P00_UA = 0,
55    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_FINE_P25_UA = 1,
56    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_FINE_P50_UA = 2,
57    SI32_EXTVREG_A_CURRENT_LIMIT_MIN_FINE_P75_UA = 3
58 } SI32_EXTVREG_A_CURRENT_LIMIT_MIN_FINE_Enum_Type;
59 
60 //-----------------------------------------------------------------------------
61 // Define Foldback Voltage Offset Enum type
62 
63 typedef enum SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_Enum
64 {
65    SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_0P0_V = 0,
66    SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_0P5_V = 1,
67    SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_1P0_V = 2,
68    SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_1P5_V = 3,
69    SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_2P0_V = 4,
70    SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_2P5_V = 5,
71    SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_3P0_V = 6,
72    SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_3P5_V = 7
73 } SI32_EXTVREG_A_FOLDBACK_VOLTAGE_OFFSET_Enum_Type;
74 
75 //-----------------------------------------------------------------------------
76 // Define Current Limit Maximum Enum type
77 
78 typedef enum SI32_EXTVREG_A_CURRENT_LIMIT_MAX_Enum
79 {
80    SI32_EXTVREG_A_CURRENT_LIMIT_MAX_2_UA = 0,
81    SI32_EXTVREG_A_CURRENT_LIMIT_MAX_3_UA = 1,
82    SI32_EXTVREG_A_CURRENT_LIMIT_MAX_4_UA = 2,
83    SI32_EXTVREG_A_CURRENT_LIMIT_MAX_5_UA = 3,
84    SI32_EXTVREG_A_CURRENT_LIMIT_MAX_6_UA = 4,
85    SI32_EXTVREG_A_CURRENT_LIMIT_MAX_7_UA = 5,
86    SI32_EXTVREG_A_CURRENT_LIMIT_MAX_8_UA = 6,
87    SI32_EXTVREG_A_CURRENT_LIMIT_MAX_9_UA = 7,
88 } SI32_EXTVREG_A_CURRENT_LIMIT_MAX_Enum_Type;
89 
90 //-----------------------------------------------------------------------------
91 // Define ADC Current Sense Gain Enum type
92 
93 typedef enum SI32_EXTVREG_A_ADC_CURRENT_SENSE_GAIN_Enum
94 {
95    SI32_EXTVREG_A_ADC_CURRENT_SENSE_GAIN_16X  = 0,
96    SI32_EXTVREG_A_ADC_CURRENT_SENSE_GAIN_8X  = 1,
97    SI32_EXTVREG_A_ADC_CURRENT_SENSE_GAIN_4X  = 2,
98    SI32_EXTVREG_A_ADC_CURRENT_SENSE_GAIN_2X  = 3,
99    SI32_EXTVREG_A_ADC_CURRENT_SENSE_GAIN_11X = 4
100 } SI32_EXTVREG_A_ADC_CURRENT_SENSE_GAIN_Enum_Type;
101 
102 //-----------------------------------------------------------------------------
103 // Define External Regulator Current Sense Gain Enum type
104 
105 typedef enum SI32_EXTVREG_A_REG_CURRENT_SENSE_GAIN_Enum
106 {
107    SI32_EXTVREG_A_REG_CURRENT_SENSE_GAIN_16X  = 0,
108    SI32_EXTVREG_A_REG_CURRENT_SENSE_GAIN_8X  = 1,
109    SI32_EXTVREG_A_REG_CURRENT_SENSE_GAIN_4X  = 2,
110    SI32_EXTVREG_A_REG_CURRENT_SENSE_GAIN_2X  = 3,
111    SI32_EXTVREG_A_REG_CURRENT_SENSE_GAIN_1X = 4
112 } SI32_EXTVREG_A_REG_CURRENT_SENSE_GAIN_Enum_Type;
113 
114 #ifdef __cplusplus
115 }
116 #endif
117 
118 #endif // __SI32_EXTVREG_A_SUPPORT_H__
119 
120 //-eof--------------------------------------------------------------------------
121