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