memory_map.c 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. /*
  2. * Copyright (c) 2006-2023, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Email: opensource_embedded@phytium.com.cn
  7. *
  8. * Change Logs:
  9. * Date Author Notes
  10. * 2023-04-27 huanghe first version
  11. *
  12. */
  13. #include "rtconfig.h"
  14. #include <board.h>
  15. #include <mmu.h>
  16. /* mmu config */
  17. struct mem_desc platform_mem_desc[] =
  18. {
  19. {
  20. 0x80000000,
  21. 0xFFFFFFFF,
  22. 0x80000000,
  23. DDR_MEM
  24. },
  25. {
  26. 0, //< QSPI
  27. 0x1FFFFFFF,
  28. 0,
  29. DEVICE_MEM
  30. },
  31. {
  32. 0x20000000, //<! LPC
  33. 0x27FFFFFF,
  34. 0x20000000,
  35. DEVICE_MEM
  36. },
  37. {
  38. FT_DEV_BASE_ADDR, //<! Device register
  39. FT_DEV_END_ADDR,
  40. FT_DEV_BASE_ADDR,
  41. DEVICE_MEM
  42. },
  43. {
  44. 0x30000000, //<! debug
  45. 0x39FFFFFF,
  46. 0x30000000,
  47. DEVICE_MEM
  48. },
  49. {
  50. 0x3A000000, //<! Internal register space in the on-chip network
  51. 0x3AFFFFFF,
  52. 0x3A000000,
  53. DEVICE_MEM
  54. },
  55. {
  56. FT_PCI_CONFIG_BASEADDR,
  57. FT_PCI_CONFIG_BASEADDR + FT_PCI_CONFIG_REG_LENGTH,
  58. FT_PCI_CONFIG_BASEADDR,
  59. DEVICE_MEM
  60. },
  61. {
  62. FT_PCI_IO_CONFIG_BASEADDR,
  63. FT_PCI_IO_CONFIG_BASEADDR + FT_PCI_IO_CONFIG_REG_LENGTH,
  64. FT_PCI_IO_CONFIG_BASEADDR,
  65. DEVICE_MEM
  66. },
  67. {
  68. FT_PCI_MEM32_BASEADDR,
  69. FT_PCI_MEM32_BASEADDR + FT_PCI_MEM32_REG_LENGTH,
  70. FT_PCI_MEM32_BASEADDR,
  71. DEVICE_MEM
  72. }
  73. #if defined(TARGET_ARMV8_AARCH64)
  74. {
  75. 0x1000000000,
  76. 0x1000000000 + 0x1000000000,
  77. 0x1000000000,
  78. DEVICE_MEM
  79. },
  80. {
  81. 0x2000000000,
  82. 0x2000000000 + 0x2000000000,
  83. 0x2000000000,
  84. NORMAL_MEM
  85. },
  86. #endif
  87. };
  88. const rt_uint32_t platform_mem_desc_size = sizeof(platform_mem_desc) / sizeof(platform_mem_desc[0]);