xref: /openbmc/linux/include/sound/rt5659.h (revision d2912cb1)
1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
2d3cb2de2SBard Liao /*
3d3cb2de2SBard Liao  * linux/sound/rt5659.h -- Platform data for RT5659
4d3cb2de2SBard Liao  *
5d3cb2de2SBard Liao  * Copyright 2013 Realtek Microelectronics
6d3cb2de2SBard Liao  */
7d3cb2de2SBard Liao 
8d3cb2de2SBard Liao #ifndef __LINUX_SND_RT5659_H
9d3cb2de2SBard Liao #define __LINUX_SND_RT5659_H
10d3cb2de2SBard Liao 
11d3cb2de2SBard Liao enum rt5659_dmic1_data_pin {
12d3cb2de2SBard Liao 	RT5659_DMIC1_NULL,
13d3cb2de2SBard Liao 	RT5659_DMIC1_DATA_IN2N,
14d3cb2de2SBard Liao 	RT5659_DMIC1_DATA_GPIO5,
15d3cb2de2SBard Liao 	RT5659_DMIC1_DATA_GPIO9,
16d3cb2de2SBard Liao 	RT5659_DMIC1_DATA_GPIO11,
17d3cb2de2SBard Liao };
18d3cb2de2SBard Liao 
19d3cb2de2SBard Liao enum rt5659_dmic2_data_pin {
20d3cb2de2SBard Liao 	RT5659_DMIC2_NULL,
21d3cb2de2SBard Liao 	RT5659_DMIC2_DATA_IN2P,
22d3cb2de2SBard Liao 	RT5659_DMIC2_DATA_GPIO6,
23d3cb2de2SBard Liao 	RT5659_DMIC2_DATA_GPIO10,
24d3cb2de2SBard Liao 	RT5659_DMIC2_DATA_GPIO12,
25d3cb2de2SBard Liao };
26d3cb2de2SBard Liao 
27d3cb2de2SBard Liao enum rt5659_jd_src {
28d3cb2de2SBard Liao 	RT5659_JD_NULL,
29d3cb2de2SBard Liao 	RT5659_JD3,
30041e74b7Soder_chiou@realtek.com 	RT5659_JD_HDA_HEADER,
31d3cb2de2SBard Liao };
32d3cb2de2SBard Liao 
33d3cb2de2SBard Liao struct rt5659_platform_data {
34d3cb2de2SBard Liao 	bool in1_diff;
35d3cb2de2SBard Liao 	bool in3_diff;
36d3cb2de2SBard Liao 	bool in4_diff;
37d3cb2de2SBard Liao 
38d3cb2de2SBard Liao 	int ldo1_en; /* GPIO for LDO1_EN */
39d3cb2de2SBard Liao 	int reset; /* GPIO for RESET */
40d3cb2de2SBard Liao 
41d3cb2de2SBard Liao 	enum rt5659_dmic1_data_pin dmic1_data_pin;
42d3cb2de2SBard Liao 	enum rt5659_dmic2_data_pin dmic2_data_pin;
43d3cb2de2SBard Liao 	enum rt5659_jd_src jd_src;
44d3cb2de2SBard Liao };
45d3cb2de2SBard Liao 
46d3cb2de2SBard Liao #endif
47d3cb2de2SBard Liao 
48