imx7-cm.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (C) 2021 Ronetix GmbH
  4. *
  5. * Configuration settings for the Ronetix's iMX7-CM System-on-Module.
  6. */
  7. #ifndef __IMX7_CM_CONFIG_H
  8. #define __IMX7_CM_CONFIG_H
  9. #include "mx7_common.h"
  10. #define CONFIG_MXC_UART_BASE UART1_IPS_BASE_ADDR
  11. /* Size of malloc() pool */
  12. #define CONFIG_SYS_MALLOC_LEN (32 * SZ_1M)
  13. #define CONFIG_ETHPRIME "FEC"
  14. #undef CONFIG_SYS_AUTOLOAD
  15. #undef CONFIG_EXTRA_ENV_SETTINGS
  16. #undef CONFIG_BOOTCOMMAND
  17. /*
  18. * Use:
  19. * boot-mode=mix
  20. * boot-mode=sd
  21. * boot-mode=net
  22. */
  23. #define MY_CONFIG_BOOT_MODE "boot-mode=sd\0"
  24. #define CONFIG_EXTRA_ENV_SETTINGS \
  25. MY_CONFIG_BOOT_MODE \
  26. "image=zImage\0" \
  27. "console=ttymxc0\0" \
  28. "fdt_file=imx7-cm.dtb\0" \
  29. "fdt_addr=0x83000000\0" \
  30. "mmcdev="__stringify(CONFIG_SYS_MMC_ENV_DEV)"\0" \
  31. "mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \
  32. "mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \
  33. "mmcargs=setenv bootargs console=${console},${baudrate} " \
  34. "root=${mmcroot}\0" \
  35. "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
  36. "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
  37. \
  38. "bootsd=" \
  39. "echo Booting from SD card ...; " \
  40. "run mmcargs; " \
  41. "mmc dev ${mmcdev};" \
  42. "run loadimage; " \
  43. "run loadfdt; " \
  44. "bootz ${loadaddr} - ${fdt_addr}; " \
  45. "\0" \
  46. \
  47. "bootmix=" \
  48. "echo Boot Kernel and FDT from TFTP, RootFs from SD card ...; " \
  49. "run mmcargs; " \
  50. "mmc dev ${mmcdev};" \
  51. "tftp ${fdt_addr} ${fdt_file}; " \
  52. "tftp ${image}; " \
  53. "bootz ${loadaddr} - ${fdt_addr}; " \
  54. "\0" \
  55. \
  56. "netargs=setenv bootargs console=${console},${baudrate} " \
  57. "root=/dev/nfs " \
  58. "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp" \
  59. "\0" \
  60. "bootnet=" \
  61. "echo Booting from net ...; " \
  62. "run netargs; " \
  63. "tftp ${image}; " \
  64. "tftp ${fdt_addr} ${fdt_file}; " \
  65. "bootz ${loadaddr} - ${fdt_addr}; " \
  66. "\0"
  67. #define CONFIG_BOOTCOMMAND "run boot${boot-mode}"
  68. #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
  69. #define CONFIG_SYS_HZ 1000
  70. /* Physical Memory Map */
  71. #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
  72. #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
  73. #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
  74. #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
  75. #define CONFIG_SYS_INIT_SP_OFFSET \
  76. (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
  77. #define CONFIG_SYS_INIT_SP_ADDR \
  78. (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
  79. /* MMC Config*/
  80. #define CONFIG_SYS_FSL_ESDHC_ADDR USDHC1_BASE_ADDR
  81. #define CONFIG_SYS_FSL_USDHC_NUM 2
  82. #define CONFIG_SYS_MMC_ENV_DEV 0 /* USDHC1 */
  83. #define CONFIG_SYS_MMC_ENV_PART 0 /* user area */
  84. #define CONFIG_SYS_MMC_IMG_LOAD_PART 1
  85. #define CONFIG_MMCROOT "/dev/mmcblk0p2" /* USDHC1 */
  86. /* USB Configs */
  87. #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
  88. #define CONFIG_USBD_HS
  89. /* SPL */
  90. #include "imx7_spl.h"
  91. #endif /* __CONFIG_H */