cs35l33.h 888 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * linux/sound/cs35l33.h -- Platform data for CS35l33
  4. *
  5. * Copyright (c) 2016 Cirrus Logic Inc.
  6. */
  7. #ifndef __CS35L33_H
  8. #define __CS35L33_H
  9. struct cs35l33_hg {
  10. bool enable_hg_algo;
  11. unsigned int mem_depth;
  12. unsigned int release_rate;
  13. unsigned int hd_rm;
  14. unsigned int ldo_thld;
  15. unsigned int ldo_path_disable;
  16. unsigned int ldo_entry_delay;
  17. bool vp_hg_auto;
  18. unsigned int vp_hg;
  19. unsigned int vp_hg_rate;
  20. unsigned int vp_hg_va;
  21. };
  22. struct cs35l33_pdata {
  23. /* Boost Controller Voltage Setting */
  24. unsigned int boost_ctl;
  25. /* Boost Controller Peak Current */
  26. unsigned int boost_ipk;
  27. /* Amplifier Drive Select */
  28. unsigned int amp_drv_sel;
  29. /* soft volume ramp */
  30. unsigned int ramp_rate;
  31. /* IMON adc scale */
  32. unsigned int imon_adc_scale;
  33. /* H/G algo configuration */
  34. struct cs35l33_hg hg_config;
  35. };
  36. #endif /* __CS35L33_H */