hsdk.h 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (C) 2017 Synopsys, Inc. All rights reserved.
  4. */
  5. #ifndef _CONFIG_HSDK_H_
  6. #define _CONFIG_HSDK_H_
  7. #include <linux/sizes.h>
  8. /*
  9. * CPU configuration
  10. */
  11. #define NR_CPUS 4
  12. #define ARC_PERIPHERAL_BASE 0xF0000000
  13. #define ARC_DWMMC_BASE (ARC_PERIPHERAL_BASE + 0xA000)
  14. #define ARC_DWGMAC_BASE (ARC_PERIPHERAL_BASE + 0x18000)
  15. /*
  16. * Memory configuration
  17. */
  18. #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
  19. #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000
  20. #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE
  21. #define CONFIG_SYS_SDRAM_SIZE SZ_1G
  22. #define CONFIG_SYS_INIT_SP_ADDR \
  23. (CONFIG_SYS_SDRAM_BASE + 0x1000 - GENERATED_GBL_DATA_SIZE)
  24. #define CONFIG_SYS_MALLOC_LEN SZ_2M
  25. #define CONFIG_SYS_BOOTM_LEN SZ_128M
  26. #define CONFIG_SYS_LOAD_ADDR 0x82000000
  27. /*
  28. * This board might be of different versions so handle it
  29. */
  30. #define CONFIG_BOARD_TYPES
  31. /*
  32. * UART configuration
  33. */
  34. #define CONFIG_DW_SERIAL
  35. #define CONFIG_SYS_NS16550_SERIAL
  36. #define CONFIG_SYS_NS16550_CLK 33330000
  37. #define CONFIG_SYS_NS16550_MEM32
  38. /*
  39. * Ethernet PHY configuration
  40. */
  41. #define CONFIG_MII
  42. /*
  43. * USB 1.1 configuration
  44. */
  45. #define CONFIG_USB_OHCI_NEW
  46. #define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 1
  47. /*
  48. * Environment settings
  49. */
  50. #define CONFIG_ENV_SIZE SZ_16K
  51. #define CONFIG_EXTRA_ENV_SETTINGS \
  52. "core_dccm_0=0x10\0" \
  53. "core_dccm_1=0x6\0" \
  54. "core_dccm_2=0x10\0" \
  55. "core_dccm_3=0x6\0" \
  56. "core_iccm_0=0x10\0" \
  57. "core_iccm_1=0x6\0" \
  58. "core_iccm_2=0x10\0" \
  59. "core_iccm_3=0x6\0" \
  60. "core_mask=0xF\0" \
  61. "dcache_ena=0x1\0" \
  62. "icache_ena=0x1\0" \
  63. "non_volatile_limit=0xE\0" \
  64. "hsdk_hs34=setenv core_mask 0x2; setenv icache_ena 0x0; \
  65. setenv dcache_ena 0x0; setenv core_iccm_1 0x7; \
  66. setenv core_dccm_1 0x8; setenv non_volatile_limit 0x0;\0" \
  67. "hsdk_hs36=setenv core_mask 0x1; setenv icache_ena 0x1; \
  68. setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
  69. setenv core_dccm_0 0x10; setenv non_volatile_limit 0xE;\0" \
  70. "hsdk_hs36_ccm=setenv core_mask 0x2; setenv icache_ena 0x1; \
  71. setenv dcache_ena 0x1; setenv core_iccm_1 0x7; \
  72. setenv core_dccm_1 0x8; setenv non_volatile_limit 0xE;\0" \
  73. "hsdk_hs38=setenv core_mask 0x1; setenv icache_ena 0x1; \
  74. setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
  75. setenv core_dccm_0 0x10; setenv non_volatile_limit 0xE;\0" \
  76. "hsdk_hs38_ccm=setenv core_mask 0x2; setenv icache_ena 0x1; \
  77. setenv dcache_ena 0x1; setenv core_iccm_1 0x7; \
  78. setenv core_dccm_1 0x8; setenv non_volatile_limit 0xE;\0" \
  79. "hsdk_hs38x2=setenv core_mask 0x3; setenv icache_ena 0x1; \
  80. setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
  81. setenv core_dccm_0 0x10; setenv non_volatile_limit 0xE; \
  82. setenv core_iccm_1 0x6; setenv core_dccm_1 0x6;\0" \
  83. "hsdk_hs38x3=setenv core_mask 0x7; setenv icache_ena 0x1; \
  84. setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
  85. setenv core_dccm_0 0x10; setenv non_volatile_limit 0xE; \
  86. setenv core_iccm_1 0x6; setenv core_dccm_1 0x6; \
  87. setenv core_iccm_2 0x10; setenv core_dccm_2 0x10;\0" \
  88. "hsdk_hs38x4=setenv core_mask 0xF; setenv icache_ena 0x1; \
  89. setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
  90. setenv core_dccm_0 0x10; setenv non_volatile_limit 0xE; \
  91. setenv core_iccm_1 0x6; setenv core_dccm_1 0x6; \
  92. setenv core_iccm_2 0x10; setenv core_dccm_2 0x10; \
  93. setenv core_iccm_3 0x6; setenv core_dccm_3 0x6;\0"
  94. /*
  95. * Environment configuration
  96. */
  97. #define CONFIG_BOOTFILE "uImage"
  98. #define CONFIG_LOADADDR CONFIG_SYS_LOAD_ADDR
  99. /*
  100. * Misc utility configuration
  101. */
  102. #define CONFIG_BOUNCE_BUFFER
  103. /* Cli configuration */
  104. #define CONFIG_SYS_CBSIZE SZ_2K
  105. /*
  106. * Callback configuration
  107. */
  108. #define CONFIG_BOARD_LATE_INIT
  109. #endif /* _CONFIG_HSDK_H_ */