no-OS
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
lt8722.h
Go to the documentation of this file.
1/***************************************************************************/
33#ifndef __LT8722_H__
34#define __LT8722_H__
35
36#include <stdbool.h>
37#include <stdint.h>
38#include <stdio.h>
39#include "no_os_gpio.h"
40#include "no_os_spi.h"
41#include "no_os_units.h"
42#include "no_os_util.h"
43
44#define LT8722_CRC_POLYNOMIAL 0x07
45
46#define LT8722_MAX_REGISTER_SIZE 4
47#define LT8722_NUM_REGISTERS 8
48
49// LT8722 SPI Command
50#define LT8722_STATUS_ACQUISITION_COMMAND 0xF0
51#define LT8722_DATA_WRITE_COMMAND 0xF2
52#define LT8722_DATA_READ_COMMAND 0xF4
53
54// LT8722 SPI Command Size in Bytes
55#define LT8722_STATUS_ACQUISITION_COMMAND_SIZE 4
56#define LT8722_DATA_WRITE_COMMAND_SIZE 8
57#define LT8722_DATA_READ_COMMAND_SIZE 8
58
59// LT8722 SPI Acknowledge
60#define LT8722_ACK_ACKNOWLEDGE 0xA5
61#define LT8722_ACK_NON_ACKNOWLEDGE 0xC3
62#define LT8722_ACK_UNSUPPORTED_ADDRESS 0x0F
63#define LT8722_ACK_STUCK_AT_0 0x00
64#define LT8722_ACK_STUCK_AT_1 0xFF
65
66// LT8722 SPI Register Address
67#define LT8722_SPIS_COMMAND 0x00
68#define LT8722_SPIS_STATUS 0x01
69#define LT8722_SPIS_DAC_ILIMN 0x02
70#define LT8722_SPIS_DAC_ILIMP 0x03
71#define LT8722_SPIS_DAC 0x04
72#define LT8722_SPIS_OV_CLAMP 0x05
73#define LT8722_SPIS_UV_CLAMP 0x06
74#define LT8722_SPIS_AMUX 0x07
75
76// LT8722 SPI Register Size in Bits
77#define LT8722_SPIS_COMMAND_SIZE 22
78#define LT8722_SPIS_STATUS_SIZE 11
79#define LT8722_SPIS_DAC_ILIMN_SIZE 9
80#define LT8722_SPIS_DAC_ILIMP_SIZE 9
81#define LT8722_SPIS_DAC_SIZE 32
82#define LT8722_SPIS_OV_CLAMP_SIZE 4
83#define LT8722_SPIS_UV_CLAMP_SIZE 4
84#define LT8722_SPIS_AMUX_SIZE 7
85
86// LT8722 SPI Register Mask
87#define LT8722_SPIS_COMMAND_MASK NO_OS_GENMASK(21, 0)
88#define LT8722_SPIS_STATUS_MASK NO_OS_GENMASK(10, 0)
89#define LT8722_SPIS_DAC_ILIMN_MASK NO_OS_GENMASK(8, 0)
90#define LT8722_SPIS_DAC_ILIMP_MASK NO_OS_GENMASK(8, 0)
91#define LT8722_SPIS_DAC_MASK NO_OS_GENMASK(31, 0)
92#define LT8722_SPIS_OV_CLAMP_MASK NO_OS_GENMASK(3, 0)
93#define LT8722_SPIS_UV_CLAMP_MASK NO_OS_GENMASK(3, 0)
94#define LT8722_SPIS_AMUX_MASK NO_OS_GENMASK(6, 0)
95
96// LT8722 SPI Register Default Value
97#define LT8722_SPIS_COMMAND_DEFAULT_VALUE 0x08A214
98#define LT8722_SPIS_STATUS_DEFAULT_VALUE 0x0
99#define LT8722_SPIS_DAC_ILIMN_DEFAULT_VALUE 0x1FF
100#define LT8722_SPIS_DAC_ILIMP_DEFAULT_VALUE 0x000
101#define LT8722_SPIS_DAC_DEFAULT_VALUE 0xFF000000
102#define LT8722_SPIS_OV_CLAMP_DEFAULT_VALUE 0xF
103#define LT8722_SPIS_UV_CLAMP_DEFAULT_VALUE 0x0
104#define LT8722_SPIS_AMUX_DEFAULT_VALUE 0x00
105
106// LT8722 SPIS_COMMAND Register
107#define LT8722_ENABLE_REQ_MASK NO_OS_BIT(0)
108#define LT8722_SWEN_REQ_MASK NO_OS_BIT(1)
109#define LT8722_SW_FRQ_SET_MASK NO_OS_GENMASK(4, 2)
110#define LT8722_SW_FRQ_ADJ_MASK NO_OS_GENMASK(6, 5)
111#define LT8722_SYS_DC_MASK NO_OS_GENMASK(8, 7)
112#define LT8722_VCC_VREG_MASK NO_OS_BIT(9)
113#define LT8722_SW_VC_INT_MASK NO_OS_GENMASK(13, 11)
114#define LT8722_SPI_RST_MASK NO_OS_BIT(14)
115#define LT8722_PWR_LIM_POS 15
116#define LT8722_PWR_LIM_MASK NO_OS_GENMASK(18, 15)
117
118// LT8722 SPIS_COMMAND Register SPI_RST
119#define LT8722_SPI_RST_RESET 0b1
120
121// LT8722 SPIS_STATUS Register
122#define LT8722_SWEN_MASK NO_OS_BIT(0)
123#define LT8722_SRVO_ILIM_MASK NO_OS_BIT(1)
124#define LT8722_SRVO_PLIM_MASK NO_OS_BIT(2)
125#define LT8722_MIN_OT_MASK NO_OS_BIT(3)
126#define LT8722_POR_OCC_MASK NO_OS_BIT(4)
127#define LT8722_OVER_CURRENT_MASK NO_OS_BIT(5)
128#define LT8722_TSD_MASK NO_OS_BIT(6)
129#define LT8722_VCC_UVLO_MASK NO_OS_BIT(7)
130#define LT8722_VDDIO_UVLO_MASK NO_OS_BIT(8)
131#define LT8722_CP_UVLO_MASK NO_OS_BIT(9)
132#define LT8722_V2P5_UVLO_MASK NO_OS_BIT(10)
133
134// LT8722 faults mask
135#define LT8722_FAULTS_MASK NO_OS_GENMASK(10, 5)
136
137// LT8722 SPIS_DAC_ILIMN Register
138#define LT8722_SPIS_DAC_ILIMN_MASK NO_OS_GENMASK(8, 0)
139
140// LT8722 SPIS_DAC_ILIMN Register SPIS_DAC_ILIMN
141#define LT8722_SPIS_DAC_ILIMN_MIN 0x030
142#define LT8722_SPIS_DAC_ILIMN_MAX 0x1FF
143
144// LT8722 SPIS_DAC_ILIMP Register
145#define LT8722_SPIS_DAC_ILIMP_MASK NO_OS_GENMASK(8, 0)
146
147// LT8722 SPIS_DAC_ILIMP Register SPIS_DAC_ILIMP
148#define LT8722_SPIS_DAC_ILIMP_MIN 0x000
149#define LT8722_SPIS_DAC_ILIMP_MAX 0x1CE
150
151// LT8722 SPIS_DAC Register
152#define LT8722_SPIS_DAC_MASK NO_OS_GENMASK(31, 0)
153
154// LT8722 SPIS_OV_CLAMP Register
155#define LT8722_SPIS_OV_CLAMP_MASK NO_OS_GENMASK(3, 0)
156
157// LT8722 SPIS_UV_CLAMP Register
158#define LT8722_SPIS_UV_CLAMP_MASK NO_OS_GENMASK(3, 0)
159
160// LT8722 SPIS_AMUX Register
161#define LT8722_AMUX_MASK NO_OS_GENMASK(3, 0)
162#define LT8722_AMUX_TEST_MASK NO_OS_GENMASK(5, 4)
163#define LT8722_AOUT_EN_MASK NO_OS_BIT(6)
164
165#define LT8722_DAC_RESOLUTION 25
166#define LT8722_DAC_OFFSET 1250000000LL // nanovolts
167#define LT8722_DAC_VREF 2500000000LL // nanovolts
168#define LT8722_VOLTAGE_SCALE NANO
169
180
191
214
229
240
263
278
291
314
325
331 uint8_t address;
332 uint32_t default_val;
333 uint8_t size;
334};
335
341 uint8_t byte;
342 uint8_t size;
343};
344
352 uint32_t data;
353 uint8_t crc;
354 uint8_t ack;
355 uint16_t status;
356};
357
368
380
382
384int32_t lt8722_voltage_to_dac(int64_t voltage);
385
387int64_t lt8722_dac_to_voltage(int32_t dac);
388
390int lt8722_transaction(struct lt8722_dev *dev, struct lt8722_packet *packet);
391
393int lt8722_reg_read(struct lt8722_dev *dev, uint8_t address, uint32_t *data);
394
396int lt8722_reg_write(struct lt8722_dev *dev, uint8_t address, uint32_t data);
397
399int lt8722_reg_write_mask(struct lt8722_dev *dev, uint8_t address,
400 uint32_t mask, uint32_t data);
401
403int lt8722_get_status(struct lt8722_dev *dev, uint16_t *status);
404
406int lt8722_clear_faults(struct lt8722_dev *dev);
407
409int lt8722_set_enable_req(struct lt8722_dev *dev, bool value);
410
412int lt8722_get_enable_req(struct lt8722_dev *dev, bool *value);
413
415int lt8722_set_swen_req(struct lt8722_dev *dev, bool value);
416
418int lt8722_get_swen_req(struct lt8722_dev *dev, bool *value);
419
421int lt8722_set_sw_frq_set(struct lt8722_dev *dev, enum lt8722_sw_frq_set value);
422
424int lt8722_get_sw_frq_set(struct lt8722_dev *dev,
425 enum lt8722_sw_frq_set *value);
426
428int lt8722_set_sw_frq_adj(struct lt8722_dev *dev, enum lt8722_sw_frq_adj value);
429
431int lt8722_get_sw_frq_adj(struct lt8722_dev *dev,
432 enum lt8722_sw_frq_adj *value);
433
435int lt8722_set_vcc_vreg(struct lt8722_dev *dev, enum lt8722_vcc_vreg value);
436
438int lt8722_get_vcc_vreg(struct lt8722_dev *dev, enum lt8722_vcc_vreg *value);
439
441int lt8722_set_sw_vc_int(struct lt8722_dev *dev, enum lt8722_sw_vc_int value);
442
444int lt8722_get_sw_vc_int(struct lt8722_dev *dev, enum lt8722_sw_vc_int *value);
445
447int lt8722_set_pwr_lim(struct lt8722_dev *dev, enum lt8722_pwr_lim value);
448
450int lt8722_get_pwr_lim(struct lt8722_dev *dev, enum lt8722_pwr_lim *value);
451
453int lt8722_set_sys_dc(struct lt8722_dev *dev, enum lt8722_sys_dc value);
454
456int lt8722_get_sys_dc(struct lt8722_dev *dev, enum lt8722_sys_dc *value);
457
459int lt8722_set_spis_dac_ilimn(struct lt8722_dev *dev, uint16_t value);
460
462int lt8722_get_spis_dac_ilimn(struct lt8722_dev *dev, uint16_t *value);
463
465int lt8722_set_spis_dac_ilimp(struct lt8722_dev *dev, uint16_t value);
466
468int lt8722_get_spis_dac_ilimp(struct lt8722_dev *dev, uint16_t *value);
469
471int lt8722_set_dac(struct lt8722_dev *dev, uint32_t value);
472
474int lt8722_get_dac(struct lt8722_dev *dev, uint32_t *value);
475
477int lt8722_set_spis_ov_clamp(struct lt8722_dev *dev, uint8_t value);
478
480int lt8722_get_spis_ov_clamp(struct lt8722_dev *dev, uint8_t *value);
481
483int lt8722_set_spis_uv_clamp(struct lt8722_dev *dev, uint8_t value);
484
486int lt8722_get_spis_uv_clamp(struct lt8722_dev *dev, uint8_t *value);
487
489int lt8722_set_aout_en(struct lt8722_dev *dev, bool value);
490
492int lt8722_get_aout_en(struct lt8722_dev *dev, bool *value);
493
495int lt8722_set_amux(struct lt8722_dev *dev, enum lt8722_amux value,
496 uint8_t test);
497
499int lt8722_get_amux(struct lt8722_dev *dev, enum lt8722_amux *value,
500 uint8_t *test);
501
503int lt8722_set_output_voltage(struct lt8722_dev *dev, int64_t value);
504
506int lt8722_get_output_voltage(struct lt8722_dev *dev, int64_t *value);
507
509int lt8722_shutdown(struct lt8722_dev *dev);
510
512int lt8722_reset(struct lt8722_dev *dev);
513
515int lt8722_set_swen_pin(struct lt8722_dev *dev, uint8_t value);
516
518int lt8722_get_swen_pin(struct lt8722_dev *dev, uint8_t *value);
519
521int lt8722_set_en_pin(struct lt8722_dev *dev, uint8_t value);
522
524int lt8722_get_en_pin(struct lt8722_dev *dev, uint8_t *value);
525
527int lt8722_init(struct lt8722_dev **device,
529
531int lt8722_remove(struct lt8722_dev *dev);
532
533#endif
struct ad7616_init_param init_param
Definition ad7616_sdz.c:107
struct lt8722_reg lt8722_regs[LT8722_NUM_REGISTERS]
Definition lt8722.c:45
#define LT8722_NUM_REGISTERS
Definition lt8722.h:47
int lt8722_get_sys_dc(struct lt8722_dev *dev, enum lt8722_sys_dc *value)
Get PWM duty cycle of LT8722 device.
Definition lt8722.c:575
lt8722_sys_dc
PWM duty cycle control bits.
Definition lt8722.h:283
@ LT8722_SYS_DC_20_80_DUTY_CYCLE
Definition lt8722.h:285
@ LT8722_SYS_DC_15_85_DUTY_CYCLE
Definition lt8722.h:287
@ LT8722_SYS_DC_10_90_DUTY_CYCLE
Definition lt8722.h:289
int lt8722_get_sw_frq_adj(struct lt8722_dev *dev, enum lt8722_sw_frq_adj *value)
Get switching frequency adjustment of LT8722 device.
Definition lt8722.c:422
int64_t lt8722_dac_to_voltage(int32_t dac)
Convert DAC code to nanovolts.
Definition lt8722.c:96
int lt8722_reg_write(struct lt8722_dev *dev, uint8_t address, uint32_t data)
Write data to LT8722 device.
Definition lt8722.c:191
int lt8722_get_output_voltage(struct lt8722_dev *dev, int64_t *value)
Get output volatge of LT8722 device.
Definition lt8722.c:912
int lt8722_get_dac(struct lt8722_dev *dev, uint32_t *value)
Get DAC code of LT8722 device.
Definition lt8722.c:701
int lt8722_remove(struct lt8722_dev *dev)
Free the resources allocated by the lt8722_init()
Definition lt8722.c:1148
int lt8722_get_pwr_lim(struct lt8722_dev *dev, enum lt8722_pwr_lim *value)
Get LDR power dissipation limit of LT8722 device.
Definition lt8722.c:537
lt8722_swen_req
PWM switch enable request bit.
Definition lt8722.h:185
@ LT8722_SWEN_REQ_ENABLED
Definition lt8722.h:189
@ LT8722_SWEN_REQ_DISABLED
Definition lt8722.h:187
int lt8722_set_amux(struct lt8722_dev *dev, enum lt8722_amux value, uint8_t test)
Set analot output signal source of LT8722 device.
Definition lt8722.c:839
int lt8722_get_spis_dac_ilimn(struct lt8722_dev *dev, uint16_t *value)
Get negative output current limit of LT8722 device.
Definition lt8722.c:619
lt8722_sw_vc_int
Typical peak inductor current after BST-SW refresh period control bits.
Definition lt8722.h:245
@ LT8722_SW_VC_INT_0_936A
Definition lt8722.h:251
@ LT8722_SW_VC_INT_1_962A
Definition lt8722.h:257
@ LT8722_SW_VC_INT_2_646A
Definition lt8722.h:261
@ LT8722_SW_VC_INT_2_304A
Definition lt8722.h:259
@ LT8722_SW_VC_INT_1_620A
Definition lt8722.h:255
@ LT8722_SW_VC_INT_1_278A
Definition lt8722.h:253
@ LT8722_SW_VC_INT_0_252A
Definition lt8722.h:247
@ LT8722_SW_VC_INT_0_594A
Definition lt8722.h:249
int lt8722_set_swen_pin(struct lt8722_dev *dev, uint8_t value)
Set SWEN pin of LT8722 device.
Definition lt8722.c:970
int lt8722_get_amux(struct lt8722_dev *dev, enum lt8722_amux *value, uint8_t *test)
Get analot output signal source of LT8722 device.
Definition lt8722.c:867
int lt8722_get_status(struct lt8722_dev *dev, uint16_t *status)
Get LT8722 device status.
Definition lt8722.c:242
int lt8722_set_spis_uv_clamp(struct lt8722_dev *dev, uint8_t value)
Set negative output voltage limit of LT8722 device.
Definition lt8722.c:762
lt8722_pwr_lim
Linear power stage MOSFET power limit control bits.
Definition lt8722.h:268
@ LT8722_PWR_LIM_2W
Definition lt8722.h:270
@ LT8722_PWR_LIM_3_5W
Definition lt8722.h:276
@ LT8722_PWR_LIM_3W
Definition lt8722.h:274
@ LT8722_PWR_LIM_NO_LIMIT
Definition lt8722.h:272
int lt8722_reg_write_mask(struct lt8722_dev *dev, uint8_t address, uint32_t mask, uint32_t data)
Write to LT8722 device register with mask.
Definition lt8722.c:217
int lt8722_set_sw_frq_set(struct lt8722_dev *dev, enum lt8722_sw_frq_set value)
Set switching frequency of LT8722 device.
Definition lt8722.c:369
int lt8722_init(struct lt8722_dev **device, struct lt8722_init_param *init_param)
Initialize the LT8722 device.
Definition lt8722.c:1027
int lt8722_set_dac(struct lt8722_dev *dev, uint32_t value)
Set DAC code of LT8722 device.
Definition lt8722.c:686
int lt8722_set_pwr_lim(struct lt8722_dev *dev, enum lt8722_pwr_lim value)
Set LDR power dissipation limit of LT8722 device.
Definition lt8722.c:522
lt8722_enable_req
VCC LDO enable bit and linear power stage enable request bit.
Definition lt8722.h:174
@ LT8722_ENABLE_REQ_ENABLED
Definition lt8722.h:178
@ LT8722_ENABLE_REQ_DISABLED
Definition lt8722.h:176
int lt8722_reset(struct lt8722_dev *dev)
Shutdown the LT8722 device.
Definition lt8722.c:955
int lt8722_get_spis_dac_ilimp(struct lt8722_dev *dev, uint16_t *value)
Get positive output current limit of LT8722 device.
Definition lt8722.c:663
int lt8722_set_en_pin(struct lt8722_dev *dev, uint8_t value)
Set EN pin of LT8722 device.
Definition lt8722.c:998
int lt8722_set_spis_dac_ilimn(struct lt8722_dev *dev, uint16_t value)
Set negative output current limit of LT8722 device.
Definition lt8722.c:598
lt8722_amux
Analog multiplexer control bits.
Definition lt8722.h:296
@ LT8722_AMUX_VDDIO
Definition lt8722.h:308
@ LT8722_AMUX_IOUT
Definition lt8722.h:301
@ LT8722_AMUX_V2P5
Definition lt8722.h:302
@ LT8722_AMUX_V1P25
Definition lt8722.h:303
@ LT8722_AMUX_VSFB_2
Definition lt8722.h:310
@ LT8722_AMUX_VILIMP
Definition lt8722.h:297
@ LT8722_AMUX_V1P65
Definition lt8722.h:304
@ LT8722_AMUX_VSFB
Definition lt8722.h:309
@ LT8722_AMUX_VIN
Definition lt8722.h:306
@ LT8722_AMUX_VSFB_4
Definition lt8722.h:312
@ LT8722_AMUX_VSFB_3
Definition lt8722.h:311
@ LT8722_AMUX_VOUT
Definition lt8722.h:300
@ LT8722_AMUX_VDAC
Definition lt8722.h:299
@ LT8722_AMUX_VILIMN
Definition lt8722.h:298
@ LT8722_AMUX_VTEMP
Definition lt8722.h:305
@ LT8722_AMUX_VCC
Definition lt8722.h:307
int lt8722_get_vcc_vreg(struct lt8722_dev *dev, enum lt8722_vcc_vreg *value)
Get internal circuitry voltage source of LT8722 device.
Definition lt8722.c:460
lt8722_sw_frq_set
PWM switch frequency control bits.
Definition lt8722.h:196
@ LT8722_SW_FRQ_SET_3MHZ_3
Definition lt8722.h:212
@ LT8722_SW_FRQ_SET_1_5MHZ
Definition lt8722.h:202
@ LT8722_SW_FRQ_SET_3MHZ
Definition lt8722.h:208
@ LT8722_SW_FRQ_SET_3MHZ_2
Definition lt8722.h:210
@ LT8722_SW_FRQ_SET_0_5MHZ
Definition lt8722.h:198
@ LT8722_SW_FRQ_SET_2_5MHZ
Definition lt8722.h:206
@ LT8722_SW_FRQ_SET_1MHZ
Definition lt8722.h:200
@ LT8722_SW_FRQ_SET_2MHZ
Definition lt8722.h:204
int32_t lt8722_voltage_to_dac(int64_t voltage)
Convert voltage to DAC code.
Definition lt8722.c:85
int lt8722_get_sw_vc_int(struct lt8722_dev *dev, enum lt8722_sw_vc_int *value)
Get initial peak inductor current of LT8722 device.
Definition lt8722.c:499
int lt8722_clear_faults(struct lt8722_dev *dev)
Clear LT8722 device faults.
Definition lt8722.c:271
int lt8722_transaction(struct lt8722_dev *dev, struct lt8722_packet *packet)
LT8722 device SPI transaction.
Definition lt8722.c:108
int lt8722_reg_read(struct lt8722_dev *dev, uint8_t address, uint32_t *data)
Read data from LT8722 device.
Definition lt8722.c:160
int lt8722_shutdown(struct lt8722_dev *dev)
Reset the LT8722 device.
Definition lt8722.c:936
int lt8722_get_aout_en(struct lt8722_dev *dev, bool *value)
Get analog output buffer status of LT8722 device.
Definition lt8722.c:815
int lt8722_get_swen_pin(struct lt8722_dev *dev, uint8_t *value)
Get SWEN pin of LT8722 device.
Definition lt8722.c:984
int lt8722_set_aout_en(struct lt8722_dev *dev, bool value)
Set analog output buffer status of LT8722 device.
Definition lt8722.c:800
int lt8722_set_spis_dac_ilimp(struct lt8722_dev *dev, uint16_t value)
Set positive output current limit of LT8722 device.
Definition lt8722.c:642
int lt8722_get_sw_frq_set(struct lt8722_dev *dev, enum lt8722_sw_frq_set *value)
Get switching frequency of LT8722 device.
Definition lt8722.c:384
int lt8722_set_sys_dc(struct lt8722_dev *dev, enum lt8722_sys_dc value)
Set PWM duty cycle of LT8722 device.
Definition lt8722.c:560
lt8722_vcc_vreg
VCC LDO regulation control bits.
Definition lt8722.h:234
@ LT8722_VCC_VREG_3_1V
Definition lt8722.h:236
@ LT8722_VCC_VREG_3_4V
Definition lt8722.h:238
int lt8722_set_enable_req(struct lt8722_dev *dev, bool value)
Set ENABLE_REQ field in LT8722 device.
Definition lt8722.c:293
int lt8722_set_output_voltage(struct lt8722_dev *dev, int64_t value)
Set output volatge of LT8722 device.
Definition lt8722.c:892
int lt8722_set_spis_ov_clamp(struct lt8722_dev *dev, uint8_t value)
Set positive output voltage limit of LT8722 device.
Definition lt8722.c:724
int lt8722_set_sw_vc_int(struct lt8722_dev *dev, enum lt8722_sw_vc_int value)
Set initial peak inductor current of LT8722 device.
Definition lt8722.c:483
int lt8722_set_vcc_vreg(struct lt8722_dev *dev, enum lt8722_vcc_vreg value)
Set internal circuitry voltage source of LT8722 device.
Definition lt8722.c:445
int lt8722_get_enable_req(struct lt8722_dev *dev, bool *value)
Get ENABLE_REQ field in LT8722 device.
Definition lt8722.c:308
int lt8722_set_swen_req(struct lt8722_dev *dev, bool value)
Set switching enable of LT8722 device.
Definition lt8722.c:331
int lt8722_get_spis_uv_clamp(struct lt8722_dev *dev, uint8_t *value)
Get negative output voltage limit of LT8722 device.
Definition lt8722.c:777
int lt8722_get_spis_ov_clamp(struct lt8722_dev *dev, uint8_t *value)
Get positive output voltage limit of LT8722 device.
Definition lt8722.c:739
int lt8722_set_sw_frq_adj(struct lt8722_dev *dev, enum lt8722_sw_frq_adj value)
Set switching frequency adjustment of LT8722 device.
Definition lt8722.c:407
lt8722_sw_frq_adj
PWM switch frequency adjustment bits.
Definition lt8722.h:219
@ LT8722_SW_FRQ_ADJ_0_PERCENT
Definition lt8722.h:221
@ LT8722_SW_FRQ_ADJ_NEGATIVE_15_PERCENT
Definition lt8722.h:225
@ LT8722_SW_FRQ_ADJ_0_PERCENT_2
Definition lt8722.h:227
@ LT8722_SW_FRQ_ADJ_POSITIVE_15_PERCENT
Definition lt8722.h:223
int lt8722_get_swen_req(struct lt8722_dev *dev, bool *value)
Get switching enable of LT8722 device.
Definition lt8722.c:346
lt8722_aout_en
Analog output buffer enable control bits.
Definition lt8722.h:319
@ LT8722_AOUT_EN_ENABLED
Definition lt8722.h:323
@ LT8722_AOUT_EN_DISABLED
Definition lt8722.h:321
int lt8722_get_en_pin(struct lt8722_dev *dev, uint8_t *value)
Get EN pin of LT8722 device.
Definition lt8722.c:1012
Header file of GPIO Interface.
Header file of SPI Interface.
Header file of Units.
Header file of utility functions.
Definition ad9361_util.h:63
LT8722 command structure.
Definition lt8722.h:340
uint8_t byte
Definition lt8722.h:341
uint8_t size
Definition lt8722.h:342
Device descriptor for LT8722.
Definition lt8722.h:373
struct no_os_gpio_desc * gpio_swen
Definition lt8722.h:375
struct no_os_gpio_desc * gpio_en
Definition lt8722.h:376
struct no_os_spi_desc * spi
Definition lt8722.h:374
bool start_up_sequence
Definition lt8722.h:377
uint16_t status
Definition lt8722.h:378
Initialization parameter for the LT8722 device.
Definition lt8722.h:362
struct no_os_gpio_init_param * gpio_en
Definition lt8722.h:365
struct no_os_gpio_init_param * gpio_swen
Definition lt8722.h:364
bool start_up_sequence
Definition lt8722.h:366
struct no_os_spi_init_param * spi
Definition lt8722.h:363
LT8722 packet structure.
Definition lt8722.h:349
uint32_t data
Definition lt8722.h:352
uint8_t ack
Definition lt8722.h:354
uint8_t crc
Definition lt8722.h:353
uint16_t status
Definition lt8722.h:355
struct lt8722_command command
Definition lt8722.h:350
struct lt8722_reg reg
Definition lt8722.h:351
LT8722 register structure.
Definition lt8722.h:330
uint8_t size
Definition lt8722.h:333
uint8_t address
Definition lt8722.h:331
uint32_t default_val
Definition lt8722.h:332
Structure holding the GPIO descriptor.
Definition no_os_gpio.h:84
Structure holding the parameters for GPIO initialization.
Definition no_os_gpio.h:67
Structure holding SPI descriptor.
Definition no_os_spi.h:180
Structure holding the parameters for SPI initialization.
Definition no_os_spi.h:128