Merge tag 'livepatching-for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / include / linux / mfd / lp8788-isink.h
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * TI LP8788 MFD - common definitions for current sinks
4  *
5  * Copyright 2012 Texas Instruments
6  *
7  * Author: Milo(Woogyom) Kim <milo.kim@ti.com>
8  */
9
10 #ifndef __ISINK_LP8788_H__
11 #define __ISINK_LP8788_H__
12
13 /* register address */
14 #define LP8788_ISINK_CTRL               0x99
15 #define LP8788_ISINK12_IOUT             0x9A
16 #define LP8788_ISINK3_IOUT              0x9B
17 #define LP8788_ISINK1_PWM               0x9C
18 #define LP8788_ISINK2_PWM               0x9D
19 #define LP8788_ISINK3_PWM               0x9E
20
21 /* mask bits */
22 #define LP8788_ISINK1_IOUT_M            0x0F    /* Addr 9Ah */
23 #define LP8788_ISINK2_IOUT_M            0xF0
24 #define LP8788_ISINK3_IOUT_M            0x0F    /* Addr 9Bh */
25
26 /* 6 bits used for PWM code : Addr 9C ~ 9Eh */
27 #define LP8788_ISINK_MAX_PWM            63
28 #define LP8788_ISINK_SCALE_OFFSET       3
29
30 static const u8 lp8788_iout_addr[] = {
31         LP8788_ISINK12_IOUT,
32         LP8788_ISINK12_IOUT,
33         LP8788_ISINK3_IOUT,
34 };
35
36 static const u8 lp8788_iout_mask[] = {
37         LP8788_ISINK1_IOUT_M,
38         LP8788_ISINK2_IOUT_M,
39         LP8788_ISINK3_IOUT_M,
40 };
41
42 static const u8 lp8788_pwm_addr[] = {
43         LP8788_ISINK1_PWM,
44         LP8788_ISINK2_PWM,
45         LP8788_ISINK3_PWM,
46 };
47
48 #endif