17254d92eSHeiko Schocher /* 27254d92eSHeiko Schocher * (C) Copyright 2015 37254d92eSHeiko Schocher * (C) Copyright 2014 47254d92eSHeiko Schocher * Heiko Schocher, DENX Software Engineering, hs@denx.de. 57254d92eSHeiko Schocher * 67254d92eSHeiko Schocher * Based on: 77254d92eSHeiko Schocher * Copyright (C) 2012 Freescale Semiconductor, Inc. 87254d92eSHeiko Schocher * 97254d92eSHeiko Schocher * Configuration settings for the Freescale i.MX6Q SabreSD board. 107254d92eSHeiko Schocher * 117254d92eSHeiko Schocher * SPDX-License-Identifier: GPL-2.0+ 127254d92eSHeiko Schocher */ 137254d92eSHeiko Schocher #ifndef __ARISTAINETOS_COMMON_CONFIG_H 147254d92eSHeiko Schocher #define __ARISTAINETOS_COMMON_CONFIG_H 157254d92eSHeiko Schocher 167254d92eSHeiko Schocher #include "mx6_common.h" 177254d92eSHeiko Schocher 187254d92eSHeiko Schocher #define CONFIG_MACH_TYPE 4501 197254d92eSHeiko Schocher #define CONFIG_MMCROOT "/dev/mmcblk0p1" 207254d92eSHeiko Schocher #define PHYS_SDRAM_SIZE (1u * 1024 * 1024 * 1024) 217254d92eSHeiko Schocher 227254d92eSHeiko Schocher /* Size of malloc() pool */ 237254d92eSHeiko Schocher #define CONFIG_SYS_MALLOC_LEN (64 * SZ_1M) 247254d92eSHeiko Schocher 257254d92eSHeiko Schocher #define CONFIG_BOARD_EARLY_INIT_F 267254d92eSHeiko Schocher 277254d92eSHeiko Schocher #define CONFIG_MXC_UART 287254d92eSHeiko Schocher 297254d92eSHeiko Schocher /* MMC Configs */ 307254d92eSHeiko Schocher #define CONFIG_SYS_FSL_ESDHC_ADDR 0 317254d92eSHeiko Schocher 327254d92eSHeiko Schocher #define CONFIG_CMD_PING 337254d92eSHeiko Schocher #define CONFIG_CMD_DHCP 347254d92eSHeiko Schocher #define CONFIG_CMD_MII 357254d92eSHeiko Schocher #define CONFIG_FEC_MXC 367254d92eSHeiko Schocher #define CONFIG_MII 377254d92eSHeiko Schocher #define IMX_FEC_BASE ENET_BASE_ADDR 387254d92eSHeiko Schocher #define CONFIG_ETHPRIME "FEC" 397254d92eSHeiko Schocher #define CONFIG_FEC_MXC_PHYADDR 0 407254d92eSHeiko Schocher 417254d92eSHeiko Schocher #define CONFIG_PHYLIB 427254d92eSHeiko Schocher #define CONFIG_PHY_MICREL 437254d92eSHeiko Schocher 447254d92eSHeiko Schocher #define CONFIG_CMD_SF 457254d92eSHeiko Schocher #define CONFIG_SPI_FLASH_MTD 467254d92eSHeiko Schocher #define CONFIG_SPI_FLASH_STMICRO 477254d92eSHeiko Schocher #define CONFIG_MXC_SPI 487254d92eSHeiko Schocher #define CONFIG_SF_DEFAULT_SPEED 20000000 497254d92eSHeiko Schocher #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 507254d92eSHeiko Schocher #define CONFIG_SYS_SPI_ST_ENABLE_WP_PIN 517254d92eSHeiko Schocher 527254d92eSHeiko Schocher /* Command definition */ 537254d92eSHeiko Schocher #define CONFIG_CMD_BMODE 547254d92eSHeiko Schocher 557254d92eSHeiko Schocher #define CONFIG_EXTRA_ENV_SETTINGS \ 567254d92eSHeiko Schocher "script=u-boot.scr\0" \ 577254d92eSHeiko Schocher "fit_file=/boot/system.itb\0" \ 587254d92eSHeiko Schocher "loadaddr=0x12000000\0" \ 597254d92eSHeiko Schocher "fit_addr_r=0x14000000\0" \ 607254d92eSHeiko Schocher "uboot=/boot/u-boot.imx\0" \ 617254d92eSHeiko Schocher "uboot_sz=d0000\0" \ 627254d92eSHeiko Schocher "rescue_sys_addr=f0000\0" \ 637254d92eSHeiko Schocher "rescue_sys_length=f10000\0" \ 647254d92eSHeiko Schocher "panel=lb07wv8\0" \ 657254d92eSHeiko Schocher "splashpos=m,m\0" \ 667254d92eSHeiko Schocher "console=" CONFIG_CONSOLE_DEV "\0" \ 677254d92eSHeiko Schocher "fdt_high=0xffffffff\0" \ 687254d92eSHeiko Schocher "initrd_high=0xffffffff\0" \ 697254d92eSHeiko Schocher "addmtd=setenv bootargs ${bootargs} ${mtdparts}\0" \ 707254d92eSHeiko Schocher "set_fit_default=fdt addr ${fit_addr_r};fdt set /configurations " \ 717254d92eSHeiko Schocher "default ${board_type}\0" \ 727254d92eSHeiko Schocher "get_env=mw ${loadaddr} 0 0x20000;" \ 737254d92eSHeiko Schocher "mmc rescan;" \ 747254d92eSHeiko Schocher "ext2load mmc ${mmcdev}:${mmcpart} ${loadaddr} env.txt;" \ 757254d92eSHeiko Schocher "env import -t ${loadaddr}\0" \ 767254d92eSHeiko Schocher "default_env=mw ${loadaddr} 0 0x20000;" \ 777254d92eSHeiko Schocher "env export -t ${loadaddr} serial# ethaddr eth1addr " \ 787254d92eSHeiko Schocher "board_type panel;" \ 797254d92eSHeiko Schocher "env default -a;" \ 807254d92eSHeiko Schocher "env import -t ${loadaddr}\0" \ 817254d92eSHeiko Schocher "loadbootscript=" \ 827254d92eSHeiko Schocher "ext2load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 837254d92eSHeiko Schocher "bootscript=echo Running bootscript from mmc ...; " \ 847254d92eSHeiko Schocher "source\0" \ 857254d92eSHeiko Schocher "mmcpart=1\0" \ 867254d92eSHeiko Schocher "mmcdev=0\0" \ 877254d92eSHeiko Schocher "mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \ 887254d92eSHeiko Schocher "mmcargs=setenv bootargs console=${console},${baudrate} " \ 897254d92eSHeiko Schocher "root=${mmcroot}\0" \ 907254d92eSHeiko Schocher "mmcboot=echo Booting from mmc ...; " \ 917254d92eSHeiko Schocher "run mmcargs addmtd addmisc set_fit_default;" \ 927254d92eSHeiko Schocher "bootm ${fit_addr_r}\0" \ 937254d92eSHeiko Schocher "mmc_load_fit=ext2load mmc ${mmcdev}:${mmcpart} ${fit_addr_r} " \ 947254d92eSHeiko Schocher "${fit_file}\0" \ 957254d92eSHeiko Schocher "mmc_load_uboot=ext2load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \ 967254d92eSHeiko Schocher "${uboot}\0" \ 977254d92eSHeiko Schocher "mmc_upd_uboot=mw.b ${loadaddr} 0xff ${uboot_sz};" \ 987254d92eSHeiko Schocher "setexpr cmp_buf ${loadaddr} + ${uboot_sz};" \ 997254d92eSHeiko Schocher "setexpr uboot_maxsize ${uboot_sz} - 400;" \ 1007254d92eSHeiko Schocher "mw.b ${cmp_buf} 0x00 ${uboot_sz};" \ 1017254d92eSHeiko Schocher "run mmc_load_uboot;sf probe;sf erase 0 ${uboot_sz};" \ 1027254d92eSHeiko Schocher "sf write ${loadaddr} 400 ${filesize};" \ 1037254d92eSHeiko Schocher "sf read ${cmp_buf} 400 ${uboot_sz};" \ 1047254d92eSHeiko Schocher "cmp.b ${loadaddr} ${cmp_buf} ${uboot_maxsize}\0" \ 1057254d92eSHeiko Schocher "ubiboot=echo Booting from ubi ...; " \ 1067254d92eSHeiko Schocher "run ubiargs addmtd addmisc set_fit_default;" \ 1077254d92eSHeiko Schocher "bootm ${fit_addr_r}\0" \ 1087254d92eSHeiko Schocher "rescueargs=setenv bootargs console=${console},${baudrate} " \ 1097254d92eSHeiko Schocher "root=/dev/ram rw\0 " \ 1107254d92eSHeiko Schocher "rescueboot=echo Booting rescue system from NOR ...; " \ 1117254d92eSHeiko Schocher "run rescueargs addmtd addmisc set_fit_default;" \ 1127254d92eSHeiko Schocher "bootm ${fit_addr_r}\0" \ 1137254d92eSHeiko Schocher "rescue_load_fit=sf probe;sf read ${fit_addr_r} ${rescue_sys_addr} " \ 1147254d92eSHeiko Schocher "${rescue_sys_length}; imi ${fit_addr_r}\0" \ 1157254d92eSHeiko Schocher CONFIG_EXTRA_ENV_BOARD_SETTINGS 1167254d92eSHeiko Schocher 1177254d92eSHeiko Schocher #define CONFIG_BOOTCOMMAND \ 1187254d92eSHeiko Schocher "mmc dev ${mmcdev};" \ 1197254d92eSHeiko Schocher "if mmc rescan; then " \ 1207254d92eSHeiko Schocher "if run loadbootscript; then " \ 1217254d92eSHeiko Schocher "run bootscript; " \ 1227254d92eSHeiko Schocher "else " \ 1237254d92eSHeiko Schocher "if run mmc_load_fit; then " \ 1247254d92eSHeiko Schocher "run mmcboot; " \ 1257254d92eSHeiko Schocher "else " \ 1267254d92eSHeiko Schocher "if run ubifs_load_fit; then " \ 1277254d92eSHeiko Schocher "run ubiboot; " \ 1287254d92eSHeiko Schocher "else " \ 1297254d92eSHeiko Schocher "if run rescue_load_fit; then " \ 1307254d92eSHeiko Schocher "run rescueboot; " \ 1317254d92eSHeiko Schocher "else " \ 1327254d92eSHeiko Schocher "echo RESCUE SYSTEM BOOT " \ 1337254d92eSHeiko Schocher "FAILURE;" \ 1347254d92eSHeiko Schocher "fi; " \ 1357254d92eSHeiko Schocher "fi; " \ 1367254d92eSHeiko Schocher "fi; " \ 1377254d92eSHeiko Schocher "fi; " \ 1387254d92eSHeiko Schocher "else " \ 1397254d92eSHeiko Schocher "if run ubifs_load_fit; then " \ 1407254d92eSHeiko Schocher "run ubiboot; " \ 1417254d92eSHeiko Schocher "else " \ 1427254d92eSHeiko Schocher "if run rescue_load_fit; then " \ 1437254d92eSHeiko Schocher "run rescueboot; " \ 1447254d92eSHeiko Schocher "else " \ 1457254d92eSHeiko Schocher "echo RESCUE SYSTEM BOOT FAILURE;" \ 1467254d92eSHeiko Schocher "fi; " \ 1477254d92eSHeiko Schocher "fi; " \ 1487254d92eSHeiko Schocher "fi" 1497254d92eSHeiko Schocher 1507254d92eSHeiko Schocher #define CONFIG_ARP_TIMEOUT 200UL 1517254d92eSHeiko Schocher 1527254d92eSHeiko Schocher /* Print Buffer Size */ 1537254d92eSHeiko Schocher #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 1547254d92eSHeiko Schocher 1557254d92eSHeiko Schocher #define CONFIG_SYS_MEMTEST_START PHYS_SDRAM 1567254d92eSHeiko Schocher #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + 0x100000) 1577254d92eSHeiko Schocher #define CONFIG_SYS_MEMTEST_SCRATCH 0x10800000 1587254d92eSHeiko Schocher 1597254d92eSHeiko Schocher #define CONFIG_STACKSIZE (128 * 1024) 1607254d92eSHeiko Schocher 1617254d92eSHeiko Schocher /* Physical Memory Map */ 1627254d92eSHeiko Schocher #define CONFIG_NR_DRAM_BANKS 1 1637254d92eSHeiko Schocher #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR 1647254d92eSHeiko Schocher 1657254d92eSHeiko Schocher #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 1667254d92eSHeiko Schocher #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 1677254d92eSHeiko Schocher #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE 1687254d92eSHeiko Schocher 1697254d92eSHeiko Schocher #define CONFIG_SYS_INIT_SP_OFFSET \ 1707254d92eSHeiko Schocher (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 1717254d92eSHeiko Schocher #define CONFIG_SYS_INIT_SP_ADDR \ 1727254d92eSHeiko Schocher (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 1737254d92eSHeiko Schocher 174056845c2SPeter Robinson /* Environment organization */ 1757254d92eSHeiko Schocher #define CONFIG_ENV_SIZE (12 * 1024) 1767254d92eSHeiko Schocher #define CONFIG_ENV_IS_IN_SPI_FLASH 1777254d92eSHeiko Schocher #define CONFIG_SYS_REDUNDAND_ENVIRONMENT 1787254d92eSHeiko Schocher #define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS 1797254d92eSHeiko Schocher #define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS 1807254d92eSHeiko Schocher #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED 1817254d92eSHeiko Schocher #define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE 1827254d92eSHeiko Schocher #define CONFIG_ENV_SECT_SIZE (0x010000) 1837254d92eSHeiko Schocher #define CONFIG_ENV_OFFSET (0x0d0000) 1847254d92eSHeiko Schocher #define CONFIG_ENV_OFFSET_REDUND (0x0e0000) 1857254d92eSHeiko Schocher 1867254d92eSHeiko Schocher #define CONFIG_SYS_FSL_USDHC_NUM 2 1877254d92eSHeiko Schocher 1887254d92eSHeiko Schocher /* I2C */ 1897254d92eSHeiko Schocher #define CONFIG_CMD_I2C 1907254d92eSHeiko Schocher #define CONFIG_SYS_I2C 1917254d92eSHeiko Schocher #define CONFIG_SYS_I2C_MXC 192*03544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ 193*03544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ 1947254d92eSHeiko Schocher #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ 1957254d92eSHeiko Schocher #define CONFIG_SYS_I2C_SPEED 100000 1967254d92eSHeiko Schocher #define CONFIG_SYS_I2C_SLAVE 0x7f 1977254d92eSHeiko Schocher #define CONFIG_SYS_I2C_NOPROBES { {0, 0x00} } 1987254d92eSHeiko Schocher 1997254d92eSHeiko Schocher /* NAND stuff */ 2007254d92eSHeiko Schocher #define CONFIG_CMD_NAND 2017254d92eSHeiko Schocher #define CONFIG_CMD_NAND_TRIMFFS 2027254d92eSHeiko Schocher #define CONFIG_NAND_MXS 2037254d92eSHeiko Schocher #define CONFIG_SYS_MAX_NAND_DEVICE 1 2047254d92eSHeiko Schocher #define CONFIG_SYS_NAND_BASE 0x40000000 2057254d92eSHeiko Schocher #define CONFIG_SYS_NAND_5_ADDR_CYCLE 2067254d92eSHeiko Schocher #define CONFIG_SYS_NAND_ONFI_DETECTION 2077254d92eSHeiko Schocher 2087254d92eSHeiko Schocher /* DMA stuff, needed for GPMI/MXS NAND support */ 2097254d92eSHeiko Schocher #define CONFIG_APBH_DMA 2107254d92eSHeiko Schocher #define CONFIG_APBH_DMA_BURST 2117254d92eSHeiko Schocher #define CONFIG_APBH_DMA_BURST8 2127254d92eSHeiko Schocher 2137254d92eSHeiko Schocher /* RTC */ 2147254d92eSHeiko Schocher #define CONFIG_SYS_I2C_RTC_ADDR 0x68 2157254d92eSHeiko Schocher #define CONFIG_SYS_RTC_BUS_NUM 2 2167254d92eSHeiko Schocher #define CONFIG_RTC_M41T11 2177254d92eSHeiko Schocher #define CONFIG_CMD_DATE 2187254d92eSHeiko Schocher 2197254d92eSHeiko Schocher /* USB Configs */ 2207254d92eSHeiko Schocher #define CONFIG_CMD_USB 2217254d92eSHeiko Schocher #define CONFIG_USB_EHCI 2227254d92eSHeiko Schocher #define CONFIG_USB_EHCI_MX6 2237254d92eSHeiko Schocher #define CONFIG_USB_STORAGE 2247254d92eSHeiko Schocher #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 2257254d92eSHeiko Schocher #define CONFIG_EHCI_HCD_INIT_AFTER_RESET /* For OTG port */ 2267254d92eSHeiko Schocher #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) 2277254d92eSHeiko Schocher #define CONFIG_MXC_USB_FLAGS 0 2287254d92eSHeiko Schocher 2297254d92eSHeiko Schocher /* UBI support */ 230a380ce6eSPeter Robinson #define CONFIG_LZO 2317254d92eSHeiko Schocher #define CONFIG_CMD_MTDPARTS 2327254d92eSHeiko Schocher #define CONFIG_MTD_PARTITIONS 2337254d92eSHeiko Schocher #define CONFIG_MTD_DEVICE 2347254d92eSHeiko Schocher #define CONFIG_RBTREE 2357254d92eSHeiko Schocher #define CONFIG_CMD_UBI 2367254d92eSHeiko Schocher #define CONFIG_CMD_UBIFS 2377254d92eSHeiko Schocher 2387254d92eSHeiko Schocher #define CONFIG_MTD_UBI_FASTMAP 2397254d92eSHeiko Schocher #define CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT 1 2407254d92eSHeiko Schocher 2417254d92eSHeiko Schocher #define CONFIG_HW_WATCHDOG 2427254d92eSHeiko Schocher #define CONFIG_IMX_WATCHDOG 2437254d92eSHeiko Schocher 2447254d92eSHeiko Schocher #define CONFIG_FIT 2457254d92eSHeiko Schocher 2467254d92eSHeiko Schocher /* Framebuffer */ 2477254d92eSHeiko Schocher #define CONFIG_VIDEO 2487254d92eSHeiko Schocher #define CONFIG_VIDEO_IPUV3 2497254d92eSHeiko Schocher /* check this console not needed, after test remove it */ 2507254d92eSHeiko Schocher #define CONFIG_CFB_CONSOLE 2517254d92eSHeiko Schocher #define CONFIG_VGA_AS_SINGLE_DEVICE 2527254d92eSHeiko Schocher #define CONFIG_SYS_CONSOLE_IS_IN_ENV 2537254d92eSHeiko Schocher #define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE 2547254d92eSHeiko Schocher #define CONFIG_VIDEO_BMP_RLE8 2557254d92eSHeiko Schocher #define CONFIG_SPLASH_SCREEN 2567254d92eSHeiko Schocher #define CONFIG_SPLASH_SCREEN_ALIGN 2577254d92eSHeiko Schocher #define CONFIG_BMP_16BPP 2587254d92eSHeiko Schocher #define CONFIG_VIDEO_LOGO 2597254d92eSHeiko Schocher #define CONFIG_VIDEO_BMP_LOGO 2607254d92eSHeiko Schocher #define CONFIG_IPUV3_CLK 198000000 2617254d92eSHeiko Schocher #define CONFIG_IMX_VIDEO_SKIP 2627254d92eSHeiko Schocher 2637254d92eSHeiko Schocher #define CONFIG_CMD_BMP 2647254d92eSHeiko Schocher 2657254d92eSHeiko Schocher #define CONFIG_PWM_IMX 2667254d92eSHeiko Schocher #define CONFIG_IMX6_PWM_PER_CLK 66000000 2677254d92eSHeiko Schocher 2687254d92eSHeiko Schocher #endif /* __ARISTAINETOS_COMMON_CONFIG_H */ 269