max98504a.h 890 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * Platform data for MAX98504
  3. *
  4. * Copyright 2013-2014 Maxim Integrated Products
  5. *
  6. * This program is free software; you can redistribute it and/or modify it
  7. * under the terms of the GNU General Public License as published by the
  8. * Free Software Foundation; either version 2 of the License, or (at your
  9. * option) any later version.
  10. *
  11. */
  12. #ifndef __SOUND_MAX98504_PDATA_H__
  13. #define __SOUND_MAX98504_PDATA_H__
  14. enum max98504_rx_mode {
  15. MODE_RX_PCM,
  16. MODE_RX_AIN,
  17. MODE_RX_PDM0,
  18. MODE_RX_PDM1,
  19. };
  20. enum max98504_tx_mode {
  21. MODE_TX_PCM,
  22. MODE_TX_PDM,
  23. };
  24. struct max98504_cfg_data {
  25. u32 tx_dither_en;
  26. u32 rx_dither_en;
  27. u32 meas_dc_block_en;
  28. u32 rx_flt_mode;
  29. u32 rx_ch_en;
  30. u32 tx_ch_en;
  31. u32 tx_hiz_ch_en;
  32. u32 tx_ch_src;
  33. u32 auth_en;
  34. u32 wdog_time_out;
  35. };
  36. struct max98504_pdata {
  37. int irq;
  38. u32 rx_mode;
  39. u32 tx_mode;
  40. struct max98504_cfg_data cfg_data;
  41. };
  42. #endif