rt5682s.h 954 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * linux/sound/rt5682s.h -- Platform data for RT5682I-VS
  4. *
  5. * Copyright 2021 Realtek Microelectronics
  6. */
  7. #ifndef __LINUX_SND_RT5682S_H
  8. #define __LINUX_SND_RT5682S_H
  9. enum rt5682s_dmic1_data_pin {
  10. RT5682S_DMIC1_DATA_NULL,
  11. RT5682S_DMIC1_DATA_GPIO2,
  12. RT5682S_DMIC1_DATA_GPIO5,
  13. };
  14. enum rt5682s_dmic1_clk_pin {
  15. RT5682S_DMIC1_CLK_NULL,
  16. RT5682S_DMIC1_CLK_GPIO1,
  17. RT5682S_DMIC1_CLK_GPIO3,
  18. };
  19. enum rt5682s_jd_src {
  20. RT5682S_JD_NULL,
  21. RT5682S_JD1,
  22. };
  23. enum rt5682s_dai_clks {
  24. RT5682S_DAI_WCLK_IDX,
  25. RT5682S_DAI_BCLK_IDX,
  26. RT5682S_DAI_NUM_CLKS,
  27. };
  28. struct rt5682s_platform_data {
  29. int ldo1_en; /* GPIO for LDO1_EN */
  30. enum rt5682s_dmic1_data_pin dmic1_data_pin;
  31. enum rt5682s_dmic1_clk_pin dmic1_clk_pin;
  32. enum rt5682s_jd_src jd_src;
  33. unsigned int dmic_clk_rate;
  34. unsigned int dmic_delay;
  35. unsigned int amic_delay;
  36. bool dmic_clk_driving_high;
  37. const char *dai_clk_names[RT5682S_DAI_NUM_CLKS];
  38. };
  39. #endif