pcm3168a.h 2.7 KB

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