pcm3168a.h 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * PCM3168A codec driver header
  4. *
  5. * Copyright (C) 2015 Imagination Technologies Ltd.
  6. *
  7. * Author: Damien Horsley <[email protected]>
  8. */
  9. #ifndef __PCM3168A_H__
  10. #define __PCM3168A_H__
  11. extern const struct dev_pm_ops pcm3168a_pm_ops;
  12. extern const struct regmap_config pcm3168a_regmap;
  13. extern int pcm3168a_probe(struct device *dev, struct regmap *regmap);
  14. extern void pcm3168a_remove(struct device *dev);
  15. #define PCM3168A_RST_SMODE 0x40
  16. #define PCM3168A_MRST_MASK 0x80
  17. #define PCM3168A_SRST_MASK 0x40
  18. #define PCM3168A_DAC_SRDA_SHIFT 0
  19. #define PCM3168A_DAC_SRDA_MASK 0x3
  20. #define PCM3168A_DAC_PWR_MST_FMT 0x41
  21. #define PCM3168A_DAC_PSMDA_SHIFT 7
  22. #define PCM3168A_DAC_PSMDA_MASK 0x80
  23. #define PCM3168A_DAC_MSDA_SHIFT 4
  24. #define PCM3168A_DAC_MSDA_MASK 0x70
  25. #define PCM3168A_DAC_FMT_SHIFT 0
  26. #define PCM3168A_DAC_FMT_MASK 0xf
  27. #define PCM3168A_DAC_OP_FLT 0x42
  28. #define PCM3168A_DAC_OPEDA_SHIFT 4
  29. #define PCM3168A_DAC_OPEDA_MASK 0xf0
  30. #define PCM3168A_DAC_FLT_SHIFT 0
  31. #define PCM3168A_DAC_FLT_MASK 0xf
  32. #define PCM3168A_DAC_INV 0x43
  33. #define PCM3168A_DAC_MUTE 0x44
  34. #define PCM3168A_DAC_ZERO 0x45
  35. #define PCM3168A_DAC_ATT_DEMP_ZF 0x46
  36. #define PCM3168A_DAC_ATMDDA_MASK 0x80
  37. #define PCM3168A_DAC_ATMDDA_SHIFT 7
  38. #define PCM3168A_DAC_ATSPDA_MASK 0x40
  39. #define PCM3168A_DAC_ATSPDA_SHIFT 6
  40. #define PCM3168A_DAC_DEMP_SHIFT 4
  41. #define PCM3168A_DAC_DEMP_MASK 0x30
  42. #define PCM3168A_DAC_AZRO_SHIFT 1
  43. #define PCM3168A_DAC_AZRO_MASK 0xe
  44. #define PCM3168A_DAC_ZREV_MASK 0x1
  45. #define PCM3168A_DAC_ZREV_SHIFT 0
  46. #define PCM3168A_DAC_VOL_MASTER 0x47
  47. #define PCM3168A_DAC_VOL_CHAN_START 0x48
  48. #define PCM3168A_ADC_SMODE 0x50
  49. #define PCM3168A_ADC_SRAD_SHIFT 0
  50. #define PCM3168A_ADC_SRAD_MASK 0x3
  51. #define PCM3168A_ADC_MST_FMT 0x51
  52. #define PCM3168A_ADC_MSAD_SHIFT 4
  53. #define PCM3168A_ADC_MSAD_MASK 0x70
  54. #define PCM3168A_ADC_FMTAD_SHIFT 0
  55. #define PCM3168A_ADC_FMTAD_MASK 0x7
  56. #define PCM3168A_ADC_PWR_HPFB 0x52
  57. #define PCM3168A_ADC_PSVAD_SHIFT 4
  58. #define PCM3168A_ADC_PSVAD_MASK 0x70
  59. #define PCM3168A_ADC_BYP_SHIFT 0
  60. #define PCM3168A_ADC_BYP_MASK 0x7
  61. #define PCM3168A_ADC_SEAD 0x53
  62. #define PCM3168A_ADC_INV 0x54
  63. #define PCM3168A_ADC_MUTE 0x55
  64. #define PCM3168A_ADC_OV 0x56
  65. #define PCM3168A_ADC_ATT_OVF 0x57
  66. #define PCM3168A_ADC_ATMDAD_MASK 0x80
  67. #define PCM3168A_ADC_ATMDAD_SHIFT 7
  68. #define PCM3168A_ADC_ATSPAD_MASK 0x40
  69. #define PCM3168A_ADC_ATSPAD_SHIFT 6
  70. #define PCM3168A_ADC_OVFP_MASK 0x1
  71. #define PCM3168A_ADC_OVFP_SHIFT 0
  72. #define PCM3168A_ADC_VOL_MASTER 0x58
  73. #define PCM3168A_ADC_VOL_CHAN_START 0x59
  74. #endif