dh_imx6.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * DHCOM DH-iMX6 PDK board configuration
  4. *
  5. * Copyright (C) 2017 Marek Vasut <marex@denx.de>
  6. */
  7. #ifndef __DH_IMX6_CONFIG_H
  8. #define __DH_IMX6_CONFIG_H
  9. #include <asm/arch/imx-regs.h>
  10. #include "mx6_common.h"
  11. /*
  12. * SPI NOR layout:
  13. * 0x00_0000-0x00_ffff ... U-Boot SPL
  14. * 0x01_0000-0x0f_ffff ... U-Boot
  15. * 0x10_0000-0x10_ffff ... U-Boot env #1
  16. * 0x11_0000-0x11_ffff ... U-Boot env #2
  17. * 0x12_0000-0x1f_ffff ... UNUSED
  18. */
  19. /* SPL */
  20. #include "imx6_spl.h" /* common IMX6 SPL configuration */
  21. #define CONFIG_SPL_TARGET "u-boot-with-spl.imx"
  22. /* Miscellaneous configurable options */
  23. #define CONFIG_CMDLINE_TAG
  24. #define CONFIG_SETUP_MEMORY_TAGS
  25. #define CONFIG_INITRD_TAG
  26. #define CONFIG_REVISION_TAG
  27. /* Size of malloc() pool */
  28. #define CONFIG_SYS_MALLOC_LEN (4 * SZ_1M)
  29. /* Bootcounter */
  30. #define CONFIG_SYS_BOOTCOUNT_BE
  31. /* FEC ethernet */
  32. #define IMX_FEC_BASE ENET_BASE_ADDR
  33. #define CONFIG_FEC_XCV_TYPE RMII
  34. #define CONFIG_ETHPRIME "FEC"
  35. #define CONFIG_FEC_MXC_PHYADDR 0
  36. #define CONFIG_ARP_TIMEOUT 200UL
  37. /* MMC Configs */
  38. #define CONFIG_SYS_FSL_ESDHC_ADDR 0
  39. #define CONFIG_SYS_FSL_USDHC_NUM 3
  40. /* SATA Configs */
  41. #define CONFIG_LBA48
  42. /* UART */
  43. #define CONFIG_MXC_UART_BASE UART1_BASE
  44. /* USB Configs */
  45. #ifdef CONFIG_CMD_USB
  46. #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
  47. #define CONFIG_USB_HOST_ETHER
  48. #define CONFIG_USB_ETHER_ASIX
  49. #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
  50. #define CONFIG_MXC_USB_FLAGS 0
  51. #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 /* Enabled USB controller number */
  52. /* USB Gadget (DFU, UMS) */
  53. #if defined(CONFIG_CMD_DFU) || defined(CONFIG_CMD_USB_MASS_STORAGE)
  54. #define DFU_DEFAULT_POLL_TIMEOUT 300
  55. /* USB IDs */
  56. #define CONFIG_G_DNL_UMS_VENDOR_NUM 0x0525
  57. #define CONFIG_G_DNL_UMS_PRODUCT_NUM 0xA4A5
  58. #endif
  59. #endif
  60. /* Watchdog */
  61. #if defined(CONFIG_SPL_BUILD)
  62. #undef CONFIG_WDT
  63. #undef CONFIG_WATCHDOG
  64. #define CONFIG_HW_WATCHDOG
  65. #endif
  66. #define CONFIG_LOADADDR 0x12000000
  67. #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
  68. #ifndef CONFIG_SPL_BUILD
  69. #define CONFIG_EXTRA_ENV_SETTINGS \
  70. "console=ttymxc0,115200\0" \
  71. "fdt_addr=0x18000000\0" \
  72. "fdt_high=0xffffffff\0" \
  73. "initrd_high=0xffffffff\0" \
  74. "kernel_addr_r=0x10008000\0" \
  75. "fdt_addr_r=0x13000000\0" \
  76. "ramdisk_addr_r=0x18000000\0" \
  77. "scriptaddr=0x14000000\0" \
  78. "fdtfile=imx6q-dhcom-pdk2.dtb\0"\
  79. BOOTENV
  80. #define CONFIG_BOOTCOMMAND "run distro_bootcmd"
  81. #define BOOT_TARGET_DEVICES(func) \
  82. func(MMC, mmc, 0) \
  83. func(MMC, mmc, 2) \
  84. func(USB, usb, 1) \
  85. func(SATA, sata, 0) \
  86. func(DHCP, dhcp, na)
  87. #include <config_distro_bootcmd.h>
  88. #endif
  89. /* Physical Memory Map */
  90. #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
  91. #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
  92. #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
  93. #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
  94. #define CONFIG_SYS_INIT_SP_OFFSET \
  95. (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
  96. #define CONFIG_SYS_INIT_SP_ADDR \
  97. (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
  98. /* Environment */
  99. #endif /* __DH_IMX6_CONFIG_H */