1*83605d37SStefano Babic /* 2*83605d37SStefano Babic * Copyright (C) Stefano Babic <sbabic@denx.de> 3*83605d37SStefano Babic * 4*83605d37SStefano Babic * SPDX-License-Identifier: GPL-2.0+ 5*83605d37SStefano Babic */ 6*83605d37SStefano Babic 7*83605d37SStefano Babic 8*83605d37SStefano Babic #ifndef __PCM058_CONFIG_H 9*83605d37SStefano Babic #define __PCM058_CONFIG_H 10*83605d37SStefano Babic 11*83605d37SStefano Babic #include <config_distro_defaults.h> 12*83605d37SStefano Babic 13*83605d37SStefano Babic #ifdef CONFIG_SPL 14*83605d37SStefano Babic #define CONFIG_SPL_SPI_LOAD 15*83605d37SStefano Babic #define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024) 16*83605d37SStefano Babic #include "imx6_spl.h" 17*83605d37SStefano Babic #endif 18*83605d37SStefano Babic 19*83605d37SStefano Babic #include "mx6_common.h" 20*83605d37SStefano Babic 21*83605d37SStefano Babic /* Thermal */ 22*83605d37SStefano Babic #define CONFIG_IMX_THERMAL 23*83605d37SStefano Babic 24*83605d37SStefano Babic /* Serial */ 25*83605d37SStefano Babic #define CONFIG_MXC_UART 26*83605d37SStefano Babic #define CONFIG_MXC_UART_BASE UART4_BASE 27*83605d37SStefano Babic #define CONSOLE_DEV "ttymxc3" 28*83605d37SStefano Babic 29*83605d37SStefano Babic /* Early setup */ 30*83605d37SStefano Babic #define CONFIG_DISPLAY_BOARDINFO_LATE 31*83605d37SStefano Babic 32*83605d37SStefano Babic 33*83605d37SStefano Babic /* Size of malloc() pool */ 34*83605d37SStefano Babic #define CONFIG_SYS_MALLOC_LEN (8 * SZ_1M) 35*83605d37SStefano Babic 36*83605d37SStefano Babic /* Ethernet */ 37*83605d37SStefano Babic #define CONFIG_MII 38*83605d37SStefano Babic #define IMX_FEC_BASE ENET_BASE_ADDR 39*83605d37SStefano Babic #define CONFIG_FEC_XCV_TYPE RGMII 40*83605d37SStefano Babic #define CONFIG_ETHPRIME "FEC" 41*83605d37SStefano Babic #define CONFIG_FEC_MXC_PHYADDR 3 42*83605d37SStefano Babic 43*83605d37SStefano Babic /* SPI Flash */ 44*83605d37SStefano Babic #define CONFIG_MXC_SPI 45*83605d37SStefano Babic #define CONFIG_SF_DEFAULT_BUS 2 46*83605d37SStefano Babic #define CONFIG_SF_DEFAULT_CS 0 47*83605d37SStefano Babic #define CONFIG_SF_DEFAULT_SPEED 20000000 48*83605d37SStefano Babic #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 49*83605d37SStefano Babic 50*83605d37SStefano Babic /* I2C Configs */ 51*83605d37SStefano Babic #define CONFIG_SYS_I2C 52*83605d37SStefano Babic #define CONFIG_SYS_I2C_MXC 53*83605d37SStefano Babic #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 0 */ 54*83605d37SStefano Babic #define CONFIG_SYS_I2C_SPEED 100000 55*83605d37SStefano Babic 56*83605d37SStefano Babic #ifndef CONFIG_SPL_BUILD 57*83605d37SStefano Babic #define CONFIG_CMD_NAND 58*83605d37SStefano Babic /* Enable NAND support */ 59*83605d37SStefano Babic #define CONFIG_CMD_NAND_TRIMFFS 60*83605d37SStefano Babic #define CONFIG_SYS_MAX_NAND_DEVICE 1 61*83605d37SStefano Babic #define CONFIG_SYS_NAND_BASE 0x40000000 62*83605d37SStefano Babic #define CONFIG_SYS_NAND_5_ADDR_CYCLE 63*83605d37SStefano Babic #define CONFIG_SYS_NAND_ONFI_DETECTION 64*83605d37SStefano Babic #endif 65*83605d37SStefano Babic 66*83605d37SStefano Babic /* DMA stuff, needed for GPMI/MXS NAND support */ 67*83605d37SStefano Babic 68*83605d37SStefano Babic /* Filesystem support */ 69*83605d37SStefano Babic 70*83605d37SStefano Babic /* Various command support */ 71*83605d37SStefano Babic 72*83605d37SStefano Babic /* Physical Memory Map */ 73*83605d37SStefano Babic #define CONFIG_NR_DRAM_BANKS 1 74*83605d37SStefano Babic #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR 75*83605d37SStefano Babic 76*83605d37SStefano Babic #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 77*83605d37SStefano Babic #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 78*83605d37SStefano Babic #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE 79*83605d37SStefano Babic 80*83605d37SStefano Babic #define CONFIG_SYS_INIT_SP_OFFSET \ 81*83605d37SStefano Babic (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 82*83605d37SStefano Babic #define CONFIG_SYS_INIT_SP_ADDR \ 83*83605d37SStefano Babic (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 84*83605d37SStefano Babic 85*83605d37SStefano Babic /* MMC Configs */ 86*83605d37SStefano Babic #define CONFIG_SYS_FSL_ESDHC_ADDR 0 87*83605d37SStefano Babic #define CONFIG_SYS_FSL_USDHC_NUM 2 88*83605d37SStefano Babic 89*83605d37SStefano Babic /* Environment organization */ 90*83605d37SStefano Babic #define CONFIG_ENV_IS_IN_SPI_FLASH 91*83605d37SStefano Babic #define CONFIG_ENV_SIZE (16 * 1024) 92*83605d37SStefano Babic #define CONFIG_ENV_OFFSET (1024 * SZ_1K) 93*83605d37SStefano Babic #define CONFIG_ENV_SECT_SIZE (64 * SZ_1K) 94*83605d37SStefano Babic #define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS 95*83605d37SStefano Babic #define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS 96*83605d37SStefano Babic #define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE 97*83605d37SStefano Babic #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED 98*83605d37SStefano Babic #define CONFIG_SYS_REDUNDAND_ENVIRONMENT 99*83605d37SStefano Babic #define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + \ 100*83605d37SStefano Babic CONFIG_ENV_SECT_SIZE) 101*83605d37SStefano Babic #define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE 102*83605d37SStefano Babic 103*83605d37SStefano Babic #ifdef CONFIG_ENV_IS_IN_NAND 104*83605d37SStefano Babic #define CONFIG_ENV_OFFSET (0x1E0000) 105*83605d37SStefano Babic #define CONFIG_ENV_SECT_SIZE (128 * SZ_1K) 106*83605d37SStefano Babic #endif 107*83605d37SStefano Babic 108*83605d37SStefano Babic /* Default environment */ 109*83605d37SStefano Babic #define CONFIG_EXTRA_ENV_SETTINGS \ 110*83605d37SStefano Babic "addcons=setenv bootargs ${bootargs} " \ 111*83605d37SStefano Babic "console=${console},${baudrate}\0" \ 112*83605d37SStefano Babic "addip=setenv bootargs ${bootargs} " \ 113*83605d37SStefano Babic "ip=${ipaddr}:${serverip}:${gatewayip}:" \ 114*83605d37SStefano Babic "${netmask}:${hostname}:${netdev}:off\0" \ 115*83605d37SStefano Babic "addmisc=setenv bootargs ${bootargs} ${miscargs}\0" \ 116*83605d37SStefano Babic "addmtd=run mtdnand;run mtdspi;" \ 117*83605d37SStefano Babic "setenv bootargs ${bootargs} ${mtdparts}\0" \ 118*83605d37SStefano Babic "mtdnand=setenv mtdparts mtdparts=gpmi-nand:" \ 119*83605d37SStefano Babic "40m(Kernels),400m(root),-(nand)\0" \ 120*83605d37SStefano Babic "mtdspi=setenv mtdparts ${mtdparts}" \ 121*83605d37SStefano Babic "';spi2.0:1024k(bootloader)," \ 122*83605d37SStefano Babic "64k(env1),64k(env2),-(rescue)'\0" \ 123*83605d37SStefano Babic "bootcmd=if test -n ${rescue};" \ 124*83605d37SStefano Babic "then run swupdate;fi;run nandboot;run swupdate\0" \ 125*83605d37SStefano Babic "bootfile=uImage\0" \ 126*83605d37SStefano Babic "bootimage=uImage\0" \ 127*83605d37SStefano Babic "console=ttymxc3\0" \ 128*83605d37SStefano Babic "fdt_addr_r=0x18000000\0" \ 129*83605d37SStefano Babic "fdt_file=pfla02.dtb\0" \ 130*83605d37SStefano Babic "fdt_high=0xffffffff\0" \ 131*83605d37SStefano Babic "initrd_high=0xffffffff\0" \ 132*83605d37SStefano Babic "kernel_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \ 133*83605d37SStefano Babic "miscargs=panic=1 quiet\0" \ 134*83605d37SStefano Babic "mmcargs=setenv bootargs root=${mmcroot} rw rootwait\0" \ 135*83605d37SStefano Babic "mmcboot=if run mmcload;then " \ 136*83605d37SStefano Babic "run mmcargs addcons addmisc;" \ 137*83605d37SStefano Babic "bootm;fi\0" \ 138*83605d37SStefano Babic "mmcload=mmc rescan;" \ 139*83605d37SStefano Babic "load mmc 0:${mmcpart} ${kernel_addr_r} boot/fitImage\0"\ 140*83605d37SStefano Babic "mmcpart=1\0" \ 141*83605d37SStefano Babic "mmcroot=/dev/mmcblk0p1\0" \ 142*83605d37SStefano Babic "ubiroot=1\0" \ 143*83605d37SStefano Babic "nandargs=setenv bootargs ubi.mtd=1 " \ 144*83605d37SStefano Babic "root=ubi0:rootfs${ubiroot} rootfstype=ubifs\0" \ 145*83605d37SStefano Babic "nandboot=run mtdnand;ubi part nand0,0;" \ 146*83605d37SStefano Babic "ubi readvol ${kernel_addr_r} kernel${ubiroot};" \ 147*83605d37SStefano Babic "run nandargs addip addcons addmtd addmisc;" \ 148*83605d37SStefano Babic "bootm ${kernel_addr_r}\0" \ 149*83605d37SStefano Babic "net_nfs=tftp ${kernel_addr_r} ${board_name}/${bootfile};" \ 150*83605d37SStefano Babic "tftp ${fdt_addr_r} ${board_name}/${fdt_file};" \ 151*83605d37SStefano Babic "run nfsargs addip addcons addmtd addmisc;" \ 152*83605d37SStefano Babic "bootm ${kernel_addr_r} - ${fdt_addr_r}\0" \ 153*83605d37SStefano Babic "net_nfs_fit=tftp ${kernel_addr_r} ${board_name}/${fitfile};" \ 154*83605d37SStefano Babic "run nfsargs addip addcons addmtd addmisc;" \ 155*83605d37SStefano Babic "bootm ${kernel_addr_r}\0" \ 156*83605d37SStefano Babic "nfsargs=setenv bootargs root=/dev/nfs" \ 157*83605d37SStefano Babic " nfsroot=${serverip}:${nfsroot},v3 panic=1\0" \ 158*83605d37SStefano Babic "swupdate=setenv bootargs root=/dev/ram;" \ 159*83605d37SStefano Babic "run addip addcons addmtd addmisc;" \ 160*83605d37SStefano Babic "sf probe;" \ 161*83605d37SStefano Babic "sf read ${kernel_addr_r} 120000 600000;" \ 162*83605d37SStefano Babic "sf read 14000000 730000 800000;" \ 163*83605d37SStefano Babic "bootm ${kernel_addr_r} 14000000\0" 164*83605d37SStefano Babic 165*83605d37SStefano Babic #endif 166