1f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/****************************************************************************
2f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ****************************************************************************
3f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***
4f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   This header was automatically generated from a Linux kernel header
5f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   of the same name, to make information necessary for userspace to
6f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   call into the kernel available to libc.  It contains only constants,
7f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   structures, and macros generated from the original header, and thus,
8f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   contains no copyrightable information.
9f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***
10f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   To edit the content of this header, modify the corresponding
11f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   source file (e.g. under external/kernel-headers/original/) then
12f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   run bionic/libc/kernel/tools/update_all.py
13f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***
14f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   Any manual change here will be lost the next time this script will
15f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***   be run. You've been warned!
16f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ***
17f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ****************************************************************************
18f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ****************************************************************************/
19f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#ifndef __MFD_TABLA_PDATA_H__
20f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define __MFD_TABLA_PDATA_H__
21f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#include <linux/slimbus/slimbus.h>
22f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define MICBIAS_EXT_BYP_CAP 0x00
23f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define MICBIAS_NO_EXT_BYP_CAP 0x01
25f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define SITAR_LDOH_1P95_V 0x0
26f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define SITAR_LDOH_2P35_V 0x1
27f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define SITAR_LDOH_2P75_V 0x2
28f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define SITAR_LDOH_2P85_V 0x3
30f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define SITAR_CFILT1_SEL 0x0
31f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define SITAR_CFILT2_SEL 0x1
32f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define SITAR_CFILT3_SEL 0x2
33f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_LDOH_1P95_V 0x0
35f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_LDOH_2P35_V 0x1
36f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_LDOH_2P75_V 0x2
37f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_LDOH_2P85_V 0x3
38f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_CFILT1_SEL 0x0
40f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_CFILT2_SEL 0x1
41f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_CFILT3_SEL 0x2
42f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TAIKO_CFILT1_SEL 0x0
43f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TAIKO_CFILT2_SEL 0x1
45f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TAIKO_CFILT3_SEL 0x2
46f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TAIKO_LDOH_1P95_V 0x0
47f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TAIKO_LDOH_2P35_V 0x1
48f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TAIKO_LDOH_2P75_V 0x2
50f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TAIKO_LDOH_2P85_V 0x3
51f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define MAX_AMIC_CHANNEL 7
52f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_OCP_300_MA 0x0
53f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_OCP_350_MA 0x2
55f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_OCP_365_MA 0x3
56f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_OCP_150_MA 0x4
57f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_OCP_190_MA 0x6
58f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_OCP_220_MA 0x7
60f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_255 0x0
61f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_511 0x1
62f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_767 0x2
63f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_1023 0x3
65f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_1279 0x4
66f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_1535 0x5
67f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_1791 0x6
68f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_2047 0x7
70f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_2303 0x8
71f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_2559 0x9
72f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_2815 0xA
73f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_3071 0xB
75f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_3327 0xC
76f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_3583 0xD
77f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_3839 0xE
78f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define TABLA_DCYCLE_4095 0xF
80f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchevstruct wcd9xxx_amic {
81f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 legacy_mode:MAX_AMIC_CHANNEL;
82f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 txfe_enable:MAX_AMIC_CHANNEL;
83f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 txfe_buff:MAX_AMIC_CHANNEL;
85f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 use_pdata:MAX_AMIC_CHANNEL;
86f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev};
87f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchevstruct wcd9xxx_micbias_setting {
88f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 ldoh_v;
90f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u32 cfilt1_mv;
91f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u32 cfilt2_mv;
92f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u32 cfilt3_mv;
93f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 bias1_cfilt_sel;
95f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 bias2_cfilt_sel;
96f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 bias3_cfilt_sel;
97f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 bias4_cfilt_sel;
98f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 bias1_cap_mode;
100f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 bias2_cap_mode;
101f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 bias3_cap_mode;
102f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev u8 bias4_cap_mode;
103f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev};
105f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchevstruct wcd9xxx_ocp_setting {
106f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev unsigned int use_pdata:1;
107f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev unsigned int num_attempts:4;
108f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev unsigned int run_time:4;
110f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev unsigned int wait_time:4;
111f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev unsigned int hph_ocp_limit:3;
112f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev};
113f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define MAX_REGULATOR 7
115f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define WCD9XXX_CDC_VDDA_CP_CUR_MAX 500000
116f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define WCD9XXX_CDC_VDDA_RX_CUR_MAX 20000
117f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define WCD9XXX_CDC_VDDA_TX_CUR_MAX 20000
118f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define WCD9XXX_VDDIO_CDC_CUR_MAX 5000
120f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define WCD9XXX_VDDD_CDC_D_CUR_MAX 5000
121f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define WCD9XXX_VDDD_CDC_A_CUR_MAX 5000
122f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchevstruct wcd9xxx_regulator {
123f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev const char *name;
125f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev int min_uV;
126f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev int max_uV;
127f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev int optimum_uA;
128f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev struct regulator *regulator;
130f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev};
131f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchevstruct wcd9xxx_pdata {
132f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev int irq;
133f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev int irq_base;
135f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev int num_irqs;
136f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev int reset_gpio;
137f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev struct wcd9xxx_amic amic_settings;
138f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev struct slim_device slimbus_slave_device;
140f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev struct wcd9xxx_micbias_setting micbias;
141f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev struct wcd9xxx_ocp_setting ocp;
142f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev struct wcd9xxx_regulator regulator[MAX_REGULATOR];
143f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev};
145f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#endif
146f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev
147