1 /* 2 * Copyright (C) 2012 Bluegiga Technologies Oy 3 * 4 * Authors: 5 * Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com> 6 * Lauri Hintsala <lauri.hintsala@bluegiga.com> 7 * 8 * Based on m28evk.h: 9 * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com> 10 * on behalf of DENX Software Engineering GmbH 11 * 12 * SPDX-License-Identifier: GPL-2.0+ 13 */ 14 #ifndef __CONFIGS_APX4DEVKIT_H__ 15 #define __CONFIGS_APX4DEVKIT_H__ 16 17 /* System configurations */ 18 #define CONFIG_MX28 /* i.MX28 SoC */ 19 #define CONFIG_MACH_TYPE MACH_TYPE_APX4DEVKIT 20 21 /* U-Boot Commands */ 22 23 #define CONFIG_CMD_DATE 24 #define CONFIG_CMD_NAND 25 26 /* Memory configuration */ 27 #define CONFIG_NR_DRAM_BANKS 1 /* 1 bank of DRAM */ 28 #define PHYS_SDRAM_1 0x40000000 /* Base address */ 29 #define PHYS_SDRAM_1_SIZE 0x20000000 /* Max 512 MB RAM */ 30 #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 31 32 /* Environment */ 33 #define CONFIG_ENV_OVERWRITE 34 #define CONFIG_ENV_IS_IN_NAND 35 36 /* Environment is in MMC */ 37 #if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC) 38 #define CONFIG_ENV_OFFSET (256 * 1024) 39 #define CONFIG_ENV_SIZE (16 * 1024) 40 #define CONFIG_SYS_MMC_ENV_DEV 0 41 #endif 42 43 /* Environment is in NAND */ 44 #if defined(CONFIG_CMD_NAND) && defined(CONFIG_ENV_IS_IN_NAND) 45 #define CONFIG_ENV_SECT_SIZE (128 * 1024) 46 #define CONFIG_ENV_SIZE (128 * 1024) 47 #define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE 48 #define CONFIG_ENV_RANGE (384 * 1024) 49 #define CONFIG_ENV_OFFSET 0x120000 50 #define CONFIG_ENV_OFFSET_REDUND \ 51 (CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE) 52 #endif 53 54 /* UBI and NAND partitioning */ 55 #ifdef CONFIG_CMD_NAND 56 #define CONFIG_CMD_UBIFS 57 #define CONFIG_CMD_MTDPARTS 58 #define CONFIG_RBTREE 59 #define CONFIG_LZO 60 #define CONFIG_MTD_DEVICE 61 #define CONFIG_MTD_PARTITIONS 62 #define MTDIDS_DEFAULT "nand0=gpmi-nand" 63 #define MTDPARTS_DEFAULT \ 64 "mtdparts=gpmi-nand:128k(bootstrap),1024k(boot),768k(env),-(root)" 65 #else 66 #define MTDPARTS_DEFAULT "" 67 #endif 68 69 /* FEC Ethernet on SoC */ 70 #ifdef CONFIG_CMD_NET 71 #define CONFIG_FEC_MXC 72 #define CONFIG_ETHPRIME "FEC" 73 #define CONFIG_FEC_MXC_PHYADDR 0 74 #define IMX_FEC_BASE MXS_ENET0_BASE 75 #endif 76 77 /* USB */ 78 #ifdef CONFIG_CMD_USB 79 #define CONFIG_EHCI_MXS_PORT1 80 #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 81 #endif 82 83 /* RTC */ 84 #ifdef CONFIG_CMD_DATE 85 #define CONFIG_RTC_PCF8563 86 #define CONFIG_SYS_I2C_RTC_ADDR 0x51 87 #endif 88 89 /* Boot Linux */ 90 #define CONFIG_BOOTFILE "uImage" 91 #define CONFIG_BOOTCOMMAND "run bootcmd_nand" 92 #define CONFIG_LOADADDR 0x41000000 93 #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 94 #define CONFIG_SERIAL_TAG 95 #define CONFIG_REVISION_TAG 96 97 /* Extra Environments */ 98 #define CONFIG_EXTRA_ENV_SETTINGS \ 99 "mtdparts=" MTDPARTS_DEFAULT "\0" \ 100 "verify=no\0" \ 101 "bootcmd=run bootcmd_nand\0" \ 102 "kernelargs=console=tty0 console=ttyAMA0,115200 consoleblank=0\0" \ 103 "bootargs_nand=" \ 104 "setenv bootargs ${kernelargs} ubi.mtd=3,2048 " \ 105 "root=ubi0:rootfs rootfstype=ubifs ${mtdparts} rw\0" \ 106 "bootcmd_nand=" \ 107 "run bootargs_nand && ubi part root 2048 && " \ 108 "ubifsmount ubi:rootfs && ubifsload 41000000 boot/uImage && " \ 109 "bootm 41000000\0" \ 110 "bootargs_mmc=" \ 111 "setenv bootargs ${kernelargs} " \ 112 "root=/dev/mmcblk0p2 rootwait ${mtdparts} rw\0" \ 113 "bootcmd_mmc=" \ 114 "run bootargs_mmc && mmc rescan && " \ 115 "ext2load mmc 0:2 41000000 boot/uImage && bootm 41000000\0" \ 116 "" 117 118 /* The rest of the configuration is shared */ 119 #include <configs/mxs.h> 120 121 #endif /* __CONFIGS_APX4DEVKIT_H__ */ 122