microblaze-generic.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * (C) Copyright 2007-2010 Michal Simek
  4. *
  5. * Michal SIMEK <monstr@monstr.eu>
  6. */
  7. #ifndef __CONFIG_H
  8. #define __CONFIG_H
  9. /* Microblaze is microblaze_0 */
  10. #define XILINX_FSL_NUMBER 3
  11. /* MicroBlaze CPU */
  12. #define MICROBLAZE_V5 1
  13. #define CONFIG_SYS_BOOTM_LEN (64 * 1024 * 1024)
  14. /* uart */
  15. /* The following table includes the supported baudrates */
  16. # define CONFIG_SYS_BAUDRATE_TABLE \
  17. {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}
  18. /* setting reset address */
  19. /*#define CONFIG_SYS_RESET_ADDRESS CONFIG_SYS_TEXT_BASE*/
  20. #define CONFIG_SYS_MALLOC_LEN 0xC0000
  21. /* Stack location before relocation */
  22. #define CONFIG_SYS_INIT_SP_OFFSET (CONFIG_SYS_TEXT_BASE - \
  23. CONFIG_SYS_MALLOC_F_LEN)
  24. #ifdef CONFIG_CFI_FLASH
  25. /* ?empty sector */
  26. # define CONFIG_SYS_FLASH_EMPTY_INFO 1
  27. /* max number of memory banks */
  28. # define CONFIG_SYS_MAX_FLASH_BANKS 1
  29. /* max number of sectors on one chip */
  30. # define CONFIG_SYS_MAX_FLASH_SECT 2048
  31. #endif
  32. #define CONFIG_ICACHE
  33. #define CONFIG_DCACHE
  34. #ifndef XILINX_DCACHE_BYTE_SIZE
  35. #define XILINX_DCACHE_BYTE_SIZE 32768
  36. #endif
  37. /*
  38. * BOOTP options
  39. */
  40. #define CONFIG_BOOTP_BOOTFILESIZE
  41. /* size of console buffer */
  42. #define CONFIG_SYS_CBSIZE 512
  43. /* max number of command args */
  44. #define CONFIG_SYS_MAXARGS 15
  45. /* default load address */
  46. #define CONFIG_SYS_LOAD_ADDR 0
  47. #define CONFIG_HOSTNAME "microblaze-generic"
  48. /* architecture dependent code */
  49. #define CONFIG_SYS_USR_EXCEP /* user exception */
  50. #if defined(CONFIG_CMD_PXE) && defined(CONFIG_CMD_DHCP)
  51. #define BOOT_TARGET_DEVICES_PXE(func) func(PXE, pxe, na)
  52. #else
  53. #define BOOT_TARGET_DEVICES_PXE(func)
  54. #endif
  55. #if defined(CONFIG_CMD_DHCP)
  56. #define BOOT_TARGET_DEVICES_DHCP(func) func(DHCP, dhcp, na)
  57. #else
  58. #define BOOT_TARGET_DEVICES_DHCP(func)
  59. #endif
  60. #if defined(CONFIG_SPI_FLASH)
  61. # define BOOT_TARGET_DEVICES_QSPI(func) func(QSPI, qspi, na)
  62. #else
  63. # define BOOT_TARGET_DEVICES_QSPI(func)
  64. #endif
  65. #define BOOTENV_DEV_QSPI(devtypeu, devtypel, instance) \
  66. "bootcmd_qspi=sf probe 0 0 0 && " \
  67. "sf read ${scriptaddr} ${script_offset_f} ${script_size_f} && " \
  68. "echo QSPI: Trying to boot script at ${scriptaddr} && " \
  69. "source ${scriptaddr}; echo QSPI: SCRIPT FAILED: continuing...;\0"
  70. #define BOOTENV_DEV_NAME_QSPI(devtypeu, devtypel, instance) \
  71. "qspi "
  72. #define BOOT_TARGET_DEVICES_JTAG(func) func(JTAG, jtag, na)
  73. #define BOOTENV_DEV_JTAG(devtypeu, devtypel, instance) \
  74. "bootcmd_jtag=echo JTAG: Trying to boot script at ${scriptaddr} && " \
  75. "source ${scriptaddr}; echo JTAG: SCRIPT FAILED: continuing...;\0"
  76. #define BOOTENV_DEV_NAME_JTAG(devtypeu, devtypel, instance) \
  77. "jtag "
  78. #define BOOT_TARGET_DEVICES(func) \
  79. BOOT_TARGET_DEVICES_JTAG(func) \
  80. BOOT_TARGET_DEVICES_QSPI(func) \
  81. BOOT_TARGET_DEVICES_DHCP(func) \
  82. BOOT_TARGET_DEVICES_PXE(func)
  83. #include <config_distro_bootcmd.h>
  84. #ifndef CONFIG_EXTRA_ENV_SETTINGS
  85. #define CONFIG_EXTRA_ENV_SETTINGS \
  86. "unlock=yes\0"\
  87. "nor0=flash-0\0"\
  88. "mtdparts=mtdparts=flash-0:"\
  89. "256k(u-boot),256k(env),3m(kernel),"\
  90. "1m(romfs),1m(cramfs),-(jffs2)\0"\
  91. "nc=setenv stdout nc;"\
  92. "setenv stdin nc\0" \
  93. "serial=setenv stdout serial;"\
  94. "setenv stdin serial\0"\
  95. "script_size_f=0x40000\0"\
  96. BOOTENV
  97. #endif
  98. #if defined(CONFIG_XILINX_AXIEMAC)
  99. # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 1
  100. #endif
  101. /* SPL part */
  102. #define CONFIG_SYS_UBOOT_BASE CONFIG_SYS_TEXT_BASE
  103. /* for booting directly linux */
  104. #define CONFIG_SYS_FDT_BASE (CONFIG_SYS_TEXT_BASE + \
  105. 0x40000)
  106. #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_TEXT_BASE + \
  107. 0x1000000)
  108. /* SP location before relocation, must use scratch RAM */
  109. /* BRAM start */
  110. #define CONFIG_SYS_INIT_RAM_ADDR 0x0
  111. /* BRAM size - will be generated */
  112. #define CONFIG_SYS_INIT_RAM_SIZE 0x100000
  113. # define CONFIG_SPL_STACK_ADDR (CONFIG_SYS_INIT_RAM_ADDR + \
  114. CONFIG_SYS_INIT_RAM_SIZE)
  115. /* Just for sure that there is a space for stack */
  116. #define CONFIG_SPL_STACK_SIZE 0x100
  117. #define CONFIG_SPL_MAX_FOOTPRINT (CONFIG_SYS_INIT_RAM_SIZE - \
  118. CONFIG_SYS_INIT_RAM_ADDR - \
  119. CONFIG_SYS_MALLOC_F_LEN - \
  120. CONFIG_SPL_STACK_SIZE)
  121. #endif /* __CONFIG_H */