Initial snapshot of vm-bms device driver is taken from msm-3.18
kernel version @ commit f8b6819d0432d6 ("msm: ipa: Fix to
handle NULL pointer dereference")
Add vm-bms, batterydata-interface, battery-lib support
Change spmi driver framework to platform driver framework in 4.9
kernel. Add support to access spmi register via regmap.
Change-Id: Ic2133fcf8dc73e6c1327a8583ccdaa2f5695cfbe
Signed-off-by: Arulpandiyan Vadivel <avadiv@codeaurora.org>
Signed-off-by: Sundara Vinayagam <sundvi@codeaurora.org>
35 lines
923 B
C
35 lines
923 B
C
#ifndef __VM_BMS_H__
|
|
#define __VM_BMS_H__
|
|
|
|
#define VM_BMS_DEVICE "/dev/vm_bms"
|
|
#define MAX_FIFO_REGS 8
|
|
|
|
/**
|
|
* struct qpnp_vm_bms_data - vm-bms data (passed to usersapce)
|
|
* @data_type: type of data filled up
|
|
* @num_fifo: count of valid fifo averages
|
|
* @fifo_uv: array of fifo averages in uv
|
|
* @sample_interval sample interval of the fifo data in ms
|
|
* @sample_count total samples in one fifo
|
|
* @acc_uv averaged accumulator value in uv
|
|
* @acc_count num of accumulated samples
|
|
* @seq_num sequence number of the data
|
|
*/
|
|
struct qpnp_vm_bms_data {
|
|
unsigned int num_fifo;
|
|
unsigned int fifo_uv[MAX_FIFO_REGS];
|
|
unsigned int sample_interval_ms;
|
|
unsigned int sample_count;
|
|
unsigned int acc_uv;
|
|
unsigned int acc_count;
|
|
unsigned int seq_num;
|
|
};
|
|
|
|
enum vmbms_power_usecase {
|
|
VMBMS_IGNORE_ALL_BIT = 1,
|
|
VMBMS_VOICE_CALL_BIT = (1 << 4),
|
|
VMBMS_STATIC_DISPLAY_BIT = (1 << 5),
|
|
};
|
|
|
|
#endif /* __VM_BMS_H__ */
|