ct20k2reg.h 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (C) 2008, Creative Technology Ltd. All Rights Reserved.
  4. */
  5. #ifndef _20K2REGISTERS_H_
  6. #define _20K2REGISTERS_H_
  7. /* Timer Registers */
  8. #define WC 0x1b7000
  9. #define TIMR 0x1b7004
  10. # define TIMR_IE (1<<15)
  11. # define TIMR_IP (1<<14)
  12. #define GIP 0x1b7010
  13. #define GIE 0x1b7014
  14. /* I2C Registers */
  15. #define I2C_IF_ADDRESS 0x1B9000
  16. #define I2C_IF_WDATA 0x1B9004
  17. #define I2C_IF_RDATA 0x1B9008
  18. #define I2C_IF_STATUS 0x1B900C
  19. #define I2C_IF_WLOCK 0x1B9010
  20. /* Global Control Registers */
  21. #define GLOBAL_CNTL_GCTL 0x1B7090
  22. /* PLL Registers */
  23. #define PLL_CTL 0x1B7080
  24. #define PLL_STAT 0x1B7084
  25. #define PLL_ENB 0x1B7088
  26. /* SRC Registers */
  27. #define SRC_CTL 0x1A0000 /* 0x1A0000 + (256 * Chn) */
  28. #define SRC_CCR 0x1A0004 /* 0x1A0004 + (256 * Chn) */
  29. #define SRC_IMAP 0x1A0008 /* 0x1A0008 + (256 * Chn) */
  30. #define SRC_CA 0x1A0010 /* 0x1A0010 + (256 * Chn) */
  31. #define SRC_CF 0x1A0014 /* 0x1A0014 + (256 * Chn) */
  32. #define SRC_SA 0x1A0018 /* 0x1A0018 + (256 * Chn) */
  33. #define SRC_LA 0x1A001C /* 0x1A001C + (256 * Chn) */
  34. #define SRC_CTLSWR 0x1A0020 /* 0x1A0020 + (256 * Chn) */
  35. #define SRC_CD 0x1A0080 /* 0x1A0080 + (256 * Chn) + (4 * Regn) */
  36. #define SRC_MCTL 0x1A012C
  37. #define SRC_IP 0x1A102C /* 0x1A102C + (256 * Regn) */
  38. #define SRC_ENB 0x1A282C /* 0x1A282C + (256 * Regn) */
  39. #define SRC_ENBSTAT 0x1A202C
  40. #define SRC_ENBSA 0x1A232C
  41. #define SRC_DN0Z 0x1A0030
  42. #define SRC_DN1Z 0x1A0040
  43. #define SRC_UPZ 0x1A0060
  44. /* GPIO Registers */
  45. #define GPIO_DATA 0x1B7020
  46. #define GPIO_CTRL 0x1B7024
  47. #define GPIO_EXT_DATA 0x1B70A0
  48. /* Virtual memory registers */
  49. #define VMEM_PTPAL 0x1C6300 /* 0x1C6300 + (16 * Chn) */
  50. #define VMEM_PTPAH 0x1C6304 /* 0x1C6304 + (16 * Chn) */
  51. #define VMEM_CTL 0x1C7000
  52. /* Transport Registers */
  53. #define TRANSPORT_ENB 0x1B6000
  54. #define TRANSPORT_CTL 0x1B6004
  55. #define TRANSPORT_INT 0x1B6008
  56. /* Audio IO */
  57. #define AUDIO_IO_AIM 0x1B5000 /* 0x1B5000 + (0x04 * Chn) */
  58. #define AUDIO_IO_TX_CTL 0x1B5400 /* 0x1B5400 + (0x40 * Chn) */
  59. #define AUDIO_IO_TX_CSTAT_L 0x1B5408 /* 0x1B5408 + (0x40 * Chn) */
  60. #define AUDIO_IO_TX_CSTAT_H 0x1B540C /* 0x1B540C + (0x40 * Chn) */
  61. #define AUDIO_IO_RX_CTL 0x1B5410 /* 0x1B5410 + (0x40 * Chn) */
  62. #define AUDIO_IO_RX_SRT_CTL 0x1B5420 /* 0x1B5420 + (0x40 * Chn) */
  63. #define AUDIO_IO_MCLK 0x1B5600
  64. #define AUDIO_IO_TX_BLRCLK 0x1B5604
  65. #define AUDIO_IO_RX_BLRCLK 0x1B5608
  66. /* Mixer */
  67. #define MIXER_AMOPLO 0x130000 /* 0x130000 + (8 * Chn) [4095 : 0] */
  68. #define MIXER_AMOPHI 0x130004 /* 0x130004 + (8 * Chn) [4095 : 0] */
  69. #define MIXER_PRING_LO_HI 0x188000 /* 0x188000 + (4 * Chn) [4095 : 0] */
  70. #define MIXER_PMOPLO 0x138000 /* 0x138000 + (8 * Chn) [4095 : 0] */
  71. #define MIXER_PMOPHI 0x138004 /* 0x138004 + (8 * Chn) [4095 : 0] */
  72. #define MIXER_AR_ENABLE 0x19000C
  73. #endif