1 /* SPDX-License-Identifier: GPL-2.0-only */ 1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 2 /* 3 * linux/sound/wm5100.h -- Platform data for W 3 * linux/sound/wm5100.h -- Platform data for WM5100 4 * 4 * 5 * Copyright 2011 Wolfson Microelectronics. PL 5 * Copyright 2011 Wolfson Microelectronics. PLC. 6 */ 6 */ 7 7 8 #ifndef __LINUX_SND_WM5100_H 8 #ifndef __LINUX_SND_WM5100_H 9 #define __LINUX_SND_WM5100_H 9 #define __LINUX_SND_WM5100_H 10 10 11 enum wm5100_in_mode { 11 enum wm5100_in_mode { 12 WM5100_IN_SE = 0, 12 WM5100_IN_SE = 0, 13 WM5100_IN_DIFF = 1, 13 WM5100_IN_DIFF = 1, 14 WM5100_IN_DMIC = 2, 14 WM5100_IN_DMIC = 2, 15 }; 15 }; 16 16 17 enum wm5100_dmic_sup { 17 enum wm5100_dmic_sup { 18 WM5100_DMIC_SUP_MICVDD = 0, 18 WM5100_DMIC_SUP_MICVDD = 0, 19 WM5100_DMIC_SUP_MICBIAS1 = 1, 19 WM5100_DMIC_SUP_MICBIAS1 = 1, 20 WM5100_DMIC_SUP_MICBIAS2 = 2, 20 WM5100_DMIC_SUP_MICBIAS2 = 2, 21 WM5100_DMIC_SUP_MICBIAS3 = 3, 21 WM5100_DMIC_SUP_MICBIAS3 = 3, 22 }; 22 }; 23 23 24 enum wm5100_micdet_bias { 24 enum wm5100_micdet_bias { 25 WM5100_MICDET_MICBIAS1 = 0, 25 WM5100_MICDET_MICBIAS1 = 0, 26 WM5100_MICDET_MICBIAS2 = 1, 26 WM5100_MICDET_MICBIAS2 = 1, 27 WM5100_MICDET_MICBIAS3 = 2, 27 WM5100_MICDET_MICBIAS3 = 2, 28 }; 28 }; 29 29 30 struct wm5100_jack_mode { 30 struct wm5100_jack_mode { 31 enum wm5100_micdet_bias bias; 31 enum wm5100_micdet_bias bias; 32 int hp_pol; 32 int hp_pol; 33 int micd_src; 33 int micd_src; 34 }; 34 }; 35 35 36 #define WM5100_GPIO_SET 0x10000 36 #define WM5100_GPIO_SET 0x10000 37 37 38 struct wm5100_pdata { 38 struct wm5100_pdata { >> 39 int reset; /** GPIO controlling /RESET, if any */ >> 40 int ldo_ena; /** GPIO controlling LODENA, if any */ >> 41 int hp_pol; /** GPIO controlling headset polarity, if any */ 39 int irq_flags; 42 int irq_flags; >> 43 int gpio_base; 40 44 41 struct wm5100_jack_mode jack_modes[2]; 45 struct wm5100_jack_mode jack_modes[2]; 42 46 43 /* Input pin mode selection */ 47 /* Input pin mode selection */ 44 enum wm5100_in_mode in_mode[4]; 48 enum wm5100_in_mode in_mode[4]; 45 49 46 /* DMIC supply selection */ 50 /* DMIC supply selection */ 47 enum wm5100_dmic_sup dmic_sup[4]; 51 enum wm5100_dmic_sup dmic_sup[4]; 48 52 49 int gpio_defaults[6]; 53 int gpio_defaults[6]; 50 }; 54 }; 51 55 52 #endif 56 #endif 53 57
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.