1 /* 2 * Header file for device driver Hi6421 PMIC 3 * 4 * Copyright (c) <2011-2014> HiSilicon Technologies Co., Ltd. 5 * http://www.hisilicon.com 6 * Copyright (c) <2013-2014> Linaro Ltd. 7 * http://www.linaro.org 8 * 9 * Author: Guodong Xu <guodong.xu@linaro.org> 10 * 11 * This program is free software; you can redistribute it and/or modify 12 * it under the terms of the GNU General Public License version 2 as 13 * published by the Free Software Foundation. 14 */ 15 16 #ifndef __HI6421_PMIC_H 17 #define __HI6421_PMIC_H 18 19 /* Hi6421 registers are mapped to memory bus in 4 bytes stride */ 20 #define HI6421_REG_TO_BUS_ADDR(x) (x << 2) 21 22 /* Hi6421 maximum register number */ 23 #define HI6421_REG_MAX 0xFF 24 25 /* Hi6421 OCP (over current protection) and DEB (debounce) control register */ 26 #define HI6421_OCP_DEB_CTRL_REG HI6421_REG_TO_BUS_ADDR(0x51) 27 #define HI6421_OCP_DEB_SEL_MASK 0x0C 28 #define HI6421_OCP_DEB_SEL_8MS 0x00 29 #define HI6421_OCP_DEB_SEL_16MS 0x04 30 #define HI6421_OCP_DEB_SEL_32MS 0x08 31 #define HI6421_OCP_DEB_SEL_64MS 0x0C 32 #define HI6421_OCP_EN_DEBOUNCE_MASK 0x02 33 #define HI6421_OCP_EN_DEBOUNCE_ENABLE 0x02 34 #define HI6421_OCP_AUTO_STOP_MASK 0x01 35 #define HI6421_OCP_AUTO_STOP_ENABLE 0x01 36 37 struct hi6421_pmic { 38 struct regmap *regmap; 39 }; 40 41 #endif /* __HI6421_PMIC_H */ 42