ssusb_hw_regs.h 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #ifndef _SSUSB_HW_REGS_H_
  2. #define _SSUSB_HW_REGS_H_
  3. /* clock setting
  4. this setting is applied ONLY for DR FPGA
  5. please check integrator for your platform setting
  6. */
  7. /* OSC 125MHz/2 = 62.5MHz, ceil(62.5) = 63 */
  8. #define U3D_MAC_SYS_CK 63
  9. /* OSC 20Mhz/2 = 10MHz */
  10. #define U3D_MAC_REF_CK 10
  11. /* U3D_PHY_REF_CK = U3D_MAC_REF_CK on ASIC */
  12. /* On FPGA, these two clocks are separated */
  13. #define U3D_PHY_REF_CK 48
  14. /**
  15. * @U3D register map
  16. */
  17. /*
  18. * 0x1127_0000 for MAC register
  19. * relative to MAC base address (USB3_BASE defined in mt_reg_base.h)
  20. */
  21. /* 4K for each, offset may differ from project to project. Please check integrator */
  22. /* 0x0-0xFFF is for xhci; */
  23. /* refer to 0x1127_1000 (SSUSB_DEV_BASE) */
  24. #define SSUSB_DEV_BASE (0x0000)
  25. #define SSUSB_EPCTL_CSR_BASE (0x0800)
  26. #define SSUSB_USB3_MAC_CSR_BASE (0x1400)
  27. #define SSUSB_USB3_SYS_CSR_BASE (0x1400)
  28. #define SSUSB_USB2_CSR_BASE (0x2400)
  29. /*
  30. * 0x1128_0000 for sifslv register in Infra
  31. * relative to SIFSLV base address (USB3_SIF_BASE defined in mt_reg_base.h)
  32. */
  33. #define SSUSB_SIFSLV_IPPC_BASE (0x700)
  34. /* #define SSUSB_SIFSLV_U2PHY_COM_BASE (0x800) */
  35. /* #define SSUSB_SIFSLV_U3PHYD_BASE (0x900) */
  36. /* #define SSUSB_SIFSLV_U2FREQ_BASE (0xF00) */
  37. /*
  38. * 0x1129_0000 for sifslv2 register in top_ao
  39. * relative to SIFSLV base address (USB3_SIF2_BASE defined in mt_reg_base.h)
  40. */
  41. #define SSUSB_SIFSLV_U2PHY_COM_BASE (0x10800)
  42. #define SSUSB_SIFSLV_U3PHYD_BASE (0x10900)
  43. #define SSUSB_SIFSLV_U2FREQ_BASE (0x10F00)
  44. #define SSUSB_SIFSLV_U2PHY_COM_SIV_B_BASE (0x10800)
  45. #define SSUSB_USB30_PHYA_SIV_B_BASE (0x10B00)
  46. #define SSUSB_SIFSLV_U3PHYA_DA_BASE (0x10C00)
  47. #define SSUSB_SIFSLV_SPLLC (0x10000)
  48. /*port1 refs. +0x800(refer to port0)*/
  49. #define SSUSB_PORT1_BASE (0x800) /*based on port0 */
  50. #define SSUSB_SIFSLV_U2PHY_COM_1P_BASE (0x11000)
  51. #define SSUSB_SIFSLV_U3PHYD_1P_BASE (0x11100)
  52. #define SSUSB_SIFSLV_U2FREQ_1P_BASE (0x11700)
  53. #define SSUSB_SIFSLV_U2PHY_COM_SIV_B_1P_BASE (0x11100)
  54. #define SSUSB_USB30_PHYA_SIV_B_1P_BASE (0x11300)
  55. #define SSUSB_SIFSLV_U3PHYA_DA_1P_BASE (0x11400)
  56. #include "ssusb_dev_c_header.h"
  57. #include "ssusb_epctl_csr_c_header.h"
  58. /* usb3_mac / usb3_sys do not exist in U2 ONLY IP */
  59. #include "ssusb_usb3_mac_csr_c_header.h"
  60. #include "ssusb_usb3_sys_csr_c_header.h"
  61. #include "ssusb_usb2_csr_c_header.h"
  62. #include "ssusb_sifslv_ippc_c_header.h"
  63. #endif /* USB_HW_H */