embestmx6boards.h 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (C) 2014 Eukréa Electromatique
  4. * Author: Eric Bénard <eric@eukrea.com>
  5. *
  6. * Configuration settings for the Embest RIoTboard
  7. *
  8. * based on mx6*sabre*.h which are :
  9. * Copyright (C) 2012 Freescale Semiconductor, Inc.
  10. */
  11. #ifndef __RIOTBOARD_CONFIG_H
  12. #define __RIOTBOARD_CONFIG_H
  13. #define CONFIG_MXC_UART_BASE UART2_BASE
  14. #define CONSOLE_DEV "ttymxc1"
  15. #define PHYS_SDRAM_SIZE (1u * 1024 * 1024 * 1024)
  16. #define CONFIG_IMX_THERMAL
  17. /* Size of malloc() pool */
  18. #define CONFIG_SYS_MALLOC_LEN (10 * SZ_1M)
  19. #define CONFIG_MXC_UART
  20. /* I2C Configs */
  21. #define CONFIG_SYS_I2C
  22. #define CONFIG_SYS_I2C_MXC
  23. #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */
  24. #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */
  25. #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */
  26. #define CONFIG_SYS_I2C_SPEED 100000
  27. /* USB Configs */
  28. #define CONFIG_USB_MAX_CONTROLLER_COUNT 2
  29. #define CONFIG_EHCI_HCD_INIT_AFTER_RESET /* For OTG port */
  30. #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
  31. #define CONFIG_MXC_USB_FLAGS 0
  32. /* MMC Configs */
  33. #define CONFIG_SYS_FSL_ESDHC_ADDR 0
  34. #define CONFIG_FEC_MXC
  35. #define IMX_FEC_BASE ENET_BASE_ADDR
  36. #define CONFIG_FEC_XCV_TYPE RGMII
  37. #define CONFIG_ETHPRIME "FEC"
  38. #define CONFIG_FEC_MXC_PHYADDR 4
  39. #define CONFIG_PHY_ATHEROS
  40. #ifdef CONFIG_CMD_SF
  41. #define CONFIG_SF_DEFAULT_BUS 0
  42. #define CONFIG_SF_DEFAULT_CS 0
  43. #define CONFIG_SF_DEFAULT_SPEED 20000000
  44. #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0
  45. #endif
  46. #define CONFIG_ARP_TIMEOUT 200UL
  47. #define CONFIG_SYS_MEMTEST_START 0x10000000
  48. #define CONFIG_SYS_MEMTEST_END 0x10010000
  49. #define CONFIG_SYS_MEMTEST_SCRATCH 0x10800000
  50. /* Physical Memory Map */
  51. #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
  52. #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
  53. #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
  54. #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
  55. #define CONFIG_SYS_INIT_SP_OFFSET \
  56. (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
  57. #define CONFIG_SYS_INIT_SP_ADDR \
  58. (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
  59. /* Environment organization */
  60. #define CONFIG_ENV_SIZE (8 * 1024)
  61. #if defined(CONFIG_ENV_IS_IN_MMC)
  62. /* RiOTboard */
  63. #define CONFIG_FDTFILE "imx6dl-riotboard.dtb"
  64. #define CONFIG_SYS_FSL_USDHC_NUM 3
  65. #define CONFIG_SYS_MMC_ENV_DEV 2 /* SDHC4 */
  66. #define CONFIG_ENV_OFFSET (6 * 64 * 1024)
  67. #define CONFIG_SUPPORT_EMMC_BOOT /* eMMC specific */
  68. #elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
  69. /* MarSBoard */
  70. #define CONFIG_FDTFILE "imx6q-marsboard.dtb"
  71. #define CONFIG_SYS_FSL_USDHC_NUM 2
  72. #define CONFIG_ENV_OFFSET (768 * 1024)
  73. #define CONFIG_ENV_SECT_SIZE (8 * 1024)
  74. #define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS
  75. #define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS
  76. #define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE
  77. #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED
  78. #endif
  79. /* Framebuffer */
  80. #define CONFIG_VIDEO_IPUV3
  81. #define CONFIG_VIDEO_BMP_RLE8
  82. #define CONFIG_SPLASH_SCREEN
  83. #define CONFIG_SPLASH_SCREEN_ALIGN
  84. #define CONFIG_BMP_16BPP
  85. #define CONFIG_VIDEO_LOGO
  86. #define CONFIG_VIDEO_BMP_LOGO
  87. #define CONFIG_IMX_HDMI
  88. #define CONFIG_IMX_VIDEO_SKIP
  89. #include "mx6_common.h"
  90. #ifdef CONFIG_SPL
  91. #include "imx6_spl.h"
  92. /* RiOTboard */
  93. #define CONFIG_SYS_SPL_ARGS_ADDR 0x13000000
  94. #define CONFIG_SPL_FS_LOAD_KERNEL_NAME "uImage"
  95. #define CONFIG_SPL_FS_LOAD_ARGS_NAME "imx6dl-riotboard.dtb"
  96. #define CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR 0 /* offset 69KB */
  97. #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR 0 /* offset 69KB */
  98. #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS 0 /* offset 69KB */
  99. #endif
  100. /* 256M RAM (minimum), 32M uncompressed kernel, 16M compressed kernel, 1M fdt,
  101. * 1M script, 1M pxe and the ramdisk at the end */
  102. #define MEM_LAYOUT_ENV_SETTINGS \
  103. "bootm_size=0x10000000\0" \
  104. "kernel_addr_r=0x12000000\0" \
  105. "fdt_addr_r=0x13000000\0" \
  106. "scriptaddr=0x13100000\0" \
  107. "pxefile_addr_r=0x13200000\0" \
  108. "ramdisk_addr_r=0x13300000\0"
  109. #define BOOT_TARGET_DEVICES(func) \
  110. func(MMC, mmc, 0) \
  111. func(MMC, mmc, 1) \
  112. func(MMC, mmc, 2) \
  113. func(USB, usb, 0) \
  114. func(PXE, pxe, na) \
  115. func(DHCP, dhcp, na)
  116. #include <config_distro_bootcmd.h>
  117. #define CONSOLE_STDIN_SETTINGS \
  118. "stdin=serial\0"
  119. #define CONSOLE_STDOUT_SETTINGS \
  120. "stdout=serial\0" \
  121. "stderr=serial\0"
  122. #define CONSOLE_ENV_SETTINGS \
  123. CONSOLE_STDIN_SETTINGS \
  124. CONSOLE_STDOUT_SETTINGS
  125. #define CONFIG_EXTRA_ENV_SETTINGS \
  126. CONSOLE_ENV_SETTINGS \
  127. MEM_LAYOUT_ENV_SETTINGS \
  128. "fdtfile=" CONFIG_FDTFILE "\0" \
  129. "finduuid=part uuid mmc 0:1 uuid\0" \
  130. BOOTENV
  131. #endif /* __RIOTBOARD_CONFIG_H */