35 lines
1.0 KiB
C
35 lines
1.0 KiB
C
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
||
|
/*
|
||
|
* Functions to access SY3686A power management chip.
|
||
|
*
|
||
|
* Copyright (C) 2021 reMarkable AS - http://www.remarkable.com/
|
||
|
*/
|
||
|
|
||
|
#ifndef __MFD_SY7636A_H
|
||
|
#define __MFD_SY7636A_H
|
||
|
|
||
|
#define SY7636A_REG_OPERATION_MODE_CRL 0x00
|
||
|
/* It is set if a gpio is used to control the regulator */
|
||
|
#define SY7636A_OPERATION_MODE_CRL_VCOMCTL BIT(6)
|
||
|
#define SY7636A_OPERATION_MODE_CRL_ONOFF BIT(7)
|
||
|
#define SY7636A_REG_VCOM_ADJUST_CTRL_L 0x01
|
||
|
#define SY7636A_REG_VCOM_ADJUST_CTRL_H 0x02
|
||
|
#define SY7636A_REG_VCOM_ADJUST_CTRL_MASK 0x01ff
|
||
|
#define SY7636A_REG_VLDO_VOLTAGE_ADJULST_CTRL 0x03
|
||
|
#define SY7636A_REG_POWER_ON_DELAY_TIME 0x06
|
||
|
#define SY7636A_REG_FAULT_FLAG 0x07
|
||
|
#define SY7636A_FAULT_FLAG_PG BIT(0)
|
||
|
#define SY7636A_REG_TERMISTOR_READOUT 0x08
|
||
|
|
||
|
#define SY7636A_REG_MAX 0x08
|
||
|
|
||
|
#define VCOM_ADJUST_CTRL_MASK 0x1ff
|
||
|
// Used to shift the high byte
|
||
|
#define VCOM_ADJUST_CTRL_SHIFT 8
|
||
|
// Used to scale from VCOM_ADJUST_CTRL to mv
|
||
|
#define VCOM_ADJUST_CTRL_SCAL 10000
|
||
|
|
||
|
#define FAULT_FLAG_SHIFT 1
|
||
|
|
||
|
#endif /* __LINUX_MFD_SY7636A_H */
|