X-Git-Url: https://git.kernelconcepts.de/?p=karo-tx-uboot.git;a=blobdiff_plain;f=include%2Fconfigs%2Ftx6.h;h=adf859eec2c9caf829283175df75703b2ba9e353;hp=c271e543e148ea2750934889e904e175501e8c86;hb=1f2979b99ea4206881f280fe3ed12bc67c36ece7;hpb=2cfbedd368c4ee10261521ba869516864f325580 diff --git a/include/configs/tx6.h b/include/configs/tx6.h index c271e543e1..adf859eec2 100644 --- a/include/configs/tx6.h +++ b/include/configs/tx6.h @@ -14,6 +14,9 @@ /* * Ka-Ro TX6 board - SoC configuration */ +#ifndef CONFIG_TX6_REV +#define CONFIG_TX6_REV 0x1 /* '1' would be converted to 'y' by define2mk.sed */ +#endif #define CONFIG_MX6 #define CONFIG_SYS_MX6_HCLK 24000000 #define CONFIG_SYS_MX6_CLK32 32768 @@ -28,12 +31,10 @@ /* LCD Logo and Splash screen support */ #define CONFIG_LCD #ifdef CONFIG_LCD -#ifndef CONFIG_TX6_V2 #define CONFIG_SPLASH_SCREEN #define CONFIG_SPLASH_SCREEN_ALIGN -#endif #define CONFIG_VIDEO_IPUV3 -#define CONFIG_IPUV3_CLK 266000000 +#define CONFIG_IPUV3_CLK (CONFIG_SYS_SDRAM_CLK * 1000000 / 2) #define CONFIG_LCD_LOGO #define LCD_BPP LCD_COLOR24 #define CONFIG_CMD_BMP @@ -51,8 +52,7 @@ #else #define PHYS_SDRAM_1_WIDTH 64 #endif -#define PHYS_SDRAM_1_SIZE (SZ_512M * (PHYS_SDRAM_1_WIDTH / 32)) - +#define PHYS_SDRAM_1_SIZE (SZ_512M / 32 * PHYS_SDRAM_1_WIDTH) #ifdef CONFIG_MX6Q #define CONFIG_SYS_SDRAM_CLK 528 #else @@ -67,16 +67,20 @@ * U-Boot general configurations */ #define CONFIG_SYS_LONGHELP -#ifdef CONFIG_MX6Q +#if defined(CONFIG_MX6Q) #define CONFIG_SYS_PROMPT "TX6Q U-Boot > " -#else +#elif defined(CONFIG_MX6DL) #define CONFIG_SYS_PROMPT "TX6DL U-Boot > " +#elif defined(CONFIG_MX6S) +#define CONFIG_SYS_PROMPT "TX6S U-Boot > " +#else +#error Unsupported i.MX6 processor variant #endif #define CONFIG_SYS_CBSIZE 2048 /* Console I/O buffer size */ #define CONFIG_SYS_PBSIZE \ (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) /* Print buffer size */ -#define CONFIG_SYS_MAXARGS 64 /* Max number of command args */ +#define CONFIG_SYS_MAXARGS 256 /* Max number of command args */ #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot argument buffer size */ #define CONFIG_VERSION_VARIABLE /* U-BOOT version */ @@ -92,11 +96,10 @@ #ifndef CONFIG_MFG #define CONFIG_OF_LIBFDT #ifdef CONFIG_OF_LIBFDT -#ifndef CONFIG_TX6_V2 +#ifndef CONFIG_NO_NAND #define CONFIG_FDT_FIXUP_PARTITIONS #endif #define CONFIG_OF_BOARD_SETUP -#define CONFIG_SYS_FDT_ADDR (PHYS_SDRAM_1 + SZ_16M) #endif /* CONFIG_OF_LIBFDT */ #endif /* CONFIG_MFG */ @@ -128,9 +131,16 @@ #define CONFIG_DELAY_ENVIRONMENT #endif /* CONFIG_MFG */ #define CONFIG_LOADADDR 18000000 +#define CONFIG_FDTADDR 10001000 #define CONFIG_SYS_LOAD_ADDR _pfx(0x, CONFIG_LOADADDR) +#define CONFIG_SYS_FDT_ADDR _pfx(0x, CONFIG_FDTADDR) #define CONFIG_IMX_WATCHDOG #define CONFIG_WATCHDOG_TIMEOUT_MSECS 3000 +#ifndef CONFIG_SYS_LVDS_IF +#define DEFAULT_VIDEO_MODE "VGA" +#else +#define DEFAULT_VIDEO_MODE "HSD100PXN1" +#endif /* * Extra Environments @@ -141,7 +151,7 @@ "autostart=no\0" \ "autoload=no\0" \ "bootdelay=-1\0" \ - "fdtaddr=11000000\0" \ + "fdtaddr=" xstr(CONFIG_FDTADDR) "\0" \ "mtdids=" MTDIDS_DEFAULT "\0" \ "mtdparts=" MTDPARTS_DEFAULT "\0" #else @@ -151,7 +161,7 @@ "bootargs_jffs2=run default_bootargs;set bootargs ${bootargs}" \ " root=/dev/mtdblock3 rootfstype=jffs2\0" \ "bootargs_mmc=run default_bootargs;set bootargs ${bootargs}" \ - " root=/dev/mmcblk0p2 rootwait\0" \ + MMC_ROOT_STR \ "bootargs_nfs=run default_bootargs;set bootargs ${bootargs}" \ " root=/dev/nfs nfsroot=${nfs_server}:${nfsroot},nolock" \ " ip=dhcp\0" \ @@ -161,35 +171,50 @@ ";nboot linux\0" \ "bootcmd_mmc=set autostart no;run bootargs_mmc" \ ";fatload mmc 0 ${loadaddr} uImage\0" \ - "bootcmd_nand=set autostart no;run bootargs_ubifs" \ - ";nboot linux\0" \ + CONFIG_SYS_BOOT_CMD_NAND \ "bootcmd_net=set autoload y;set autostart n;run bootargs_nfs" \ ";dhcp\0" \ "bootm_cmd=bootm ${loadaddr} - ${fdtaddr}\0" \ - "boot_mode=nand\0" \ + "boot_mode=" CONFIG_SYS_DEFAULT_BOOT_MODE "\0" \ "cpu_clk=800\0" \ "default_bootargs=set bootargs " CONFIG_BOOTARGS \ " ${append_bootargs}\0" \ - "fdtaddr=11000000\0" \ - "fdtsave=nand erase.part dtb" \ - ";nand write ${fdtaddr} dtb ${fdtsize}\0" \ + "fdtaddr=" xstr(CONFIG_FDTADDR) "\0" \ + CONFIG_SYS_FDTSAVE_CMD \ "mtdids=" MTDIDS_DEFAULT "\0" \ "mtdparts=" MTDPARTS_DEFAULT "\0" \ "nfsroot=/tftpboot/rootfs\0" \ "otg_mode=device\0" \ + ROOTPART_UUID_STR \ "touchpanel=tsc2007\0" \ - "video_mode=VGA\0" + "video_mode=" DEFAULT_VIDEO_MODE "\0" #endif /* CONFIG_ENV_IS_NOWHERE */ #endif /* CONFIG_MFG */ -#ifndef CONFIG_TX6_V2 +#ifndef CONFIG_NO_NAND +#define CONFIG_SYS_DEFAULT_BOOT_MODE "nand" +#define CONFIG_SYS_BOOT_CMD_NAND \ + "bootcmd_nand=set autostart no;run bootargs_ubifs;nboot linux\0" +#define CONFIG_SYS_FDTSAVE_CMD \ + "fdtsave=fdt resize;nand erase.part dtb" \ + ";nand write ${fdtaddr} dtb ${fdtsize}\0" #define MTD_NAME "gpmi-nand" #define MTDIDS_DEFAULT "nand0=" MTD_NAME #define CONFIG_SYS_NAND_ONFI_DETECTION +#define MMC_ROOT_STR " root=dev/mmcblk0p2 rootwait\0" +#define ROOTPART_UUID_STR "" #else +#define CONFIG_SYS_DEFAULT_BOOT_MODE "mmc" +#define CONFIG_SYS_BOOT_CMD_NAND "" +#define CONFIG_SYS_FDTSAVE_CMD \ + "fdtsave=mmc open 0 1;mmc write ${fdtaddr} " \ + xstr(CONFIG_SYS_DTB_BLKNO) " 80;mmc close 0 1\0" +#define MMC_ROOT_STR " root=PARTUUID=${rootpart_uuid} rootwait\0" +#define ROOTPART_UUID_STR "rootpart_uuid=0cc66cc0-02\0" #define MTD_NAME "" #define MTDIDS_DEFAULT "" #define CONFIG_SUPPORT_EMMC_BOOT +#define CONFIG_MMC_BOOT_DEV 0 #endif /* @@ -198,15 +223,12 @@ #include #define CONFIG_CMD_CACHE #define CONFIG_CMD_MMC -#ifndef CONFIG_TX6_V2 +#ifndef CONFIG_NO_NAND #define CONFIG_CMD_NAND #define CONFIG_CMD_MTDPARTS -#else -#define CONFIG_PARTITION_UUIDS -#define CONFIG_EFI_PARTITION -#define CONFIG_CMD_GPT #endif #define CONFIG_CMD_BOOTCE +#define CONFIG_CMD_BOOTZ #define CONFIG_CMD_TIME #define CONFIG_CMD_I2C #define CONFIG_CMD_MEMTEST @@ -259,10 +281,17 @@ #define CONFIG_SYS_I2C_BASE I2C1_BASE_ADDR #define CONFIG_SYS_I2C_MX6_PORT1 #define CONFIG_SYS_I2C_SPEED 400000 -#ifndef CONFIG_TX6_V2 +#if CONFIG_TX6_REV == 0x1 #define CONFIG_SYS_I2C_SLAVE 0x3c -#else +#define CONFIG_LTC3676 +#elif CONFIG_TX6_REV == 0x2 #define CONFIG_SYS_I2C_SLAVE 0x32 +#define CONFIG_RN5T618 +#elif CONFIG_TX6_REV == 0x3 +#define CONFIG_SYS_I2C_SLAVE 0x33 +#define CONFIG_RN5T567 +#else +#error Unsupported TX6 module revision #endif #endif @@ -278,7 +307,7 @@ /* * NAND flash driver */ -#ifdef CONFIG_CMD_NAND +#ifndef CONFIG_NO_NAND #define CONFIG_MTD_DEVICE #if 0 #define CONFIG_MTD_DEBUG @@ -298,13 +327,14 @@ #define CONFIG_SYS_NAND_USE_FLASH_BBT #define CONFIG_SYS_NAND_BASE 0x00000000 #define CONFIG_CMD_ROMUPDATE -#else -#undef CONFIG_ENV_IS_IN_NAND -#endif /* CONFIG_CMD_NAND */ #define CONFIG_ENV_OFFSET (CONFIG_U_BOOT_IMG_SIZE + CONFIG_SYS_NAND_U_BOOT_OFFS) #define CONFIG_ENV_SIZE SZ_128K #define CONFIG_ENV_RANGE (3 * CONFIG_SYS_NAND_BLOCK_SIZE) +#else +#undef CONFIG_ENV_IS_IN_NAND +#endif /* CONFIG_NO_NAND */ + #ifdef CONFIG_ENV_OFFSET_REDUND #define CONFIG_SYS_ENV_PART_STR xstr(CONFIG_SYS_ENV_PART_SIZE) \ "(env)," \ @@ -329,6 +359,7 @@ #define CONFIG_DOS_PARTITION #define CONFIG_CMD_FAT +#define CONFIG_FAT_WRITE #define CONFIG_CMD_EXT2 /* @@ -336,10 +367,7 @@ */ #ifdef CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 0 -#undef CONFIG_ENV_OFFSET -#undef CONFIG_ENV_SIZE -#define CONFIG_ENV_OFFSET (CONFIG_U_BOOT_IMG_SIZE + CONFIG_SYS_NAND_U_BOOT_OFFS) -#define CONFIG_ENV_SIZE SZ_128K +#define CONFIG_SYS_MMC_ENV_PART 1 #define CONFIG_DYNAMIC_MMC_DEVNO #endif /* CONFIG_ENV_IS_IN_MMC */ #else @@ -351,15 +379,15 @@ #define CONFIG_ENV_SIZE SZ_4K #endif -#ifndef CONFIG_TX6_V2 +#ifndef CONFIG_NO_NAND #define MTDPARTS_DEFAULT "mtdparts=" MTD_NAME ":" \ xstr(CONFIG_SYS_U_BOOT_PART_SIZE) \ "@" xstr(CONFIG_SYS_NAND_U_BOOT_OFFS) \ "(u-boot)," \ CONFIG_SYS_ENV_PART_STR \ - "4m(linux),32m(rootfs)," CONFIG_SYS_USERFS_PART_STR "," \ + "6m(linux),32m(rootfs)," CONFIG_SYS_USERFS_PART_STR "," \ xstr(CONFIG_SYS_DTB_PART_SIZE) \ - "(dtb)," \ + "@" xstr(CONFIG_SYS_NAND_DTB_OFFSET) "(dtb)," \ xstr(CONFIG_SYS_NAND_BBT_SIZE) \ "@" xstr(CONFIG_SYS_NAND_BBT_OFFSET) "(bbt)ro" #else