tas3004.h 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /*
  2. * Header file for the i2c/i2s based TA3004 sound chip used
  3. * on some Apple hardware. Also known as "tumbler".
  4. *
  5. * This file is subject to the terms and conditions of the GNU General Public
  6. * License. See the file COPYING in the main directory of this archive
  7. * for more details.
  8. *
  9. * Written by Christopher C. Chimelis <chris@debian.org>
  10. */
  11. #ifndef _TAS3004_H_
  12. #define _TAS3004_H_
  13. #include <linux/types.h>
  14. #include "tas_common.h"
  15. #include "tas_eq_prefs.h"
  16. /*
  17. * Macros that correspond to the registers that we write to
  18. * when setting the various values.
  19. */
  20. #define TAS3004_VERSION "0.3"
  21. #define TAS3004_DATE "20011214"
  22. #define I2C_DRIVERNAME_TAS3004 "TAS3004 driver V " TAS3004_VERSION
  23. #define I2C_DRIVERID_TAS3004 (I2C_DRIVERID_TAS_BASE+1)
  24. extern struct tas_driver_hooks_t tas3004_hooks;
  25. extern struct tas_gain_t tas3004_gain;
  26. extern struct tas_eq_pref_t *tas3004_eq_prefs[];
  27. enum tas3004_reg_t {
  28. TAS3004_REG_MCR = 0x01,
  29. TAS3004_REG_DRC = 0x02,
  30. TAS3004_REG_VOLUME = 0x04,
  31. TAS3004_REG_TREBLE = 0x05,
  32. TAS3004_REG_BASS = 0x06,
  33. TAS3004_REG_LEFT_MIXER = 0x07,
  34. TAS3004_REG_RIGHT_MIXER = 0x08,
  35. TAS3004_REG_LEFT_BIQUAD0 = 0x0a,
  36. TAS3004_REG_LEFT_BIQUAD1 = 0x0b,
  37. TAS3004_REG_LEFT_BIQUAD2 = 0x0c,
  38. TAS3004_REG_LEFT_BIQUAD3 = 0x0d,
  39. TAS3004_REG_LEFT_BIQUAD4 = 0x0e,
  40. TAS3004_REG_LEFT_BIQUAD5 = 0x0f,
  41. TAS3004_REG_LEFT_BIQUAD6 = 0x10,
  42. TAS3004_REG_RIGHT_BIQUAD0 = 0x13,
  43. TAS3004_REG_RIGHT_BIQUAD1 = 0x14,
  44. TAS3004_REG_RIGHT_BIQUAD2 = 0x15,
  45. TAS3004_REG_RIGHT_BIQUAD3 = 0x16,
  46. TAS3004_REG_RIGHT_BIQUAD4 = 0x17,
  47. TAS3004_REG_RIGHT_BIQUAD5 = 0x18,
  48. TAS3004_REG_RIGHT_BIQUAD6 = 0x19,
  49. TAS3004_REG_LEFT_LOUD_BIQUAD = 0x21,
  50. TAS3004_REG_RIGHT_LOUD_BIQUAD = 0x22,
  51. TAS3004_REG_LEFT_LOUD_BIQUAD_GAIN = 0x23,
  52. TAS3004_REG_RIGHT_LOUD_BIQUAD_GAIN = 0x24,
  53. TAS3004_REG_TEST = 0x29,
  54. TAS3004_REG_ANALOG_CTRL = 0x40,
  55. TAS3004_REG_TEST1 = 0x41,
  56. TAS3004_REG_TEST2 = 0x42,
  57. TAS3004_REG_MCR2 = 0x43,
  58. TAS3004_REG_MAX = 0x44
  59. };
  60. #endif /* _TAS3004_H_ */