X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=include%2Fconfigs%2Fcm_fx6.h;h=5bdc76dceb259754f43c9d29bd643aa8ab270c3f;hb=9629ccdde79adb1e471cfb24d9fee9f5c6c94aa6;hp=1f6449505511c1f6001a8d5bbe846e8d827145cc;hpb=0dac731d1932027f4f813ec7aede35d5e30dec0e;p=oweals%2Fu-boot.git diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h index 1f64495055..5bdc76dceb 100644 --- a/include/configs/cm_fx6.h +++ b/include/configs/cm_fx6.h @@ -1,57 +1,22 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * Config file for Compulab CM-FX6 board * * Copyright (C) 2014, Compulab Ltd - http://compulab.co.il/ * * Author: Nikita Kiryanov - * - * SPDX-License-Identifier: GPL-2.0+ */ #ifndef __CONFIG_CM_FX6_H #define __CONFIG_CM_FX6_H -#include -#include #include "mx6_common.h" /* Machine config */ -#define CONFIG_MX6 #define CONFIG_SYS_LITTLE_ENDIAN #define CONFIG_MACH_TYPE 4273 -#ifndef CONFIG_SPL_BUILD -#define CONFIG_DM -#define CONFIG_CMD_DM - -#define CONFIG_DM_GPIO -#define CONFIG_CMD_GPIO - -#define CONFIG_DM_SERIAL -#define CONFIG_SYS_MALLOC_F_LEN (1 << 10) -#endif - -/* Display information on boot */ -#define CONFIG_DISPLAY_CPUINFO -#define CONFIG_DISPLAY_BOARDINFO -#define CONFIG_TIMESTAMP - -/* CMD */ -#include -#define CONFIG_CMD_GREPENV -#undef CONFIG_CMD_FLASH -#undef CONFIG_CMD_LOADB -#undef CONFIG_CMD_LOADS -#undef CONFIG_CMD_XIMG -#undef CONFIG_CMD_FPGA -#undef CONFIG_CMD_IMLS - /* MMC */ -#define CONFIG_MMC -#define CONFIG_CMD_MMC -#define CONFIG_GENERIC_MMC -#define CONFIG_FSL_ESDHC -#define CONFIG_FSL_USDHC #define CONFIG_SYS_FSL_USDHC_NUM 3 #define CONFIG_SYS_FSL_ESDHC_ADDR USDHC2_BASE_ADDR @@ -72,28 +37,22 @@ /* Serial console */ #define CONFIG_MXC_UART #define CONFIG_MXC_UART_BASE UART4_BASE -#define CONFIG_BAUDRATE 115200 #define CONFIG_SYS_BAUDRATE_TABLE {9600, 19200, 38400, 57600, 115200} -/* Shell */ -#define CONFIG_SYS_PROMPT "CM-FX6 # " -#define CONFIG_SYS_CBSIZE 1024 -#define CONFIG_SYS_MAXARGS 16 -#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE -#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ - sizeof(CONFIG_SYS_PROMPT) + 16) - /* SPI flash */ -#define CONFIG_SYS_NO_FLASH -#define CONFIG_CMD_SF #define CONFIG_SF_DEFAULT_BUS 0 #define CONFIG_SF_DEFAULT_CS 0 #define CONFIG_SF_DEFAULT_SPEED 25000000 #define CONFIG_SF_DEFAULT_MODE (SPI_MODE_0) +/* MTD support */ +#ifndef CONFIG_SPL_BUILD +#define CONFIG_MTD_DEVICE +#define CONFIG_MTD_PARTITIONS +#define CONFIG_SPI_FLASH_MTD +#endif + /* Environment */ -#define CONFIG_ENV_OVERWRITE -#define CONFIG_ENV_IS_IN_SPI_FLASH #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED #define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE #define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS @@ -102,42 +61,51 @@ #define CONFIG_ENV_SIZE (8 * 1024) #define CONFIG_ENV_OFFSET (768 * 1024) +#ifndef CONFIG_SPL_BUILD #define CONFIG_EXTRA_ENV_SETTINGS \ + "fdt_high=0xffffffff\0" \ + "initrd_high=0xffffffff\0" \ + "fdt_addr_r=0x18000000\0" \ + "ramdisk_addr_r=0x13000000\0" \ + "kernel_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \ + "pxefile_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \ + "scriptaddr=" __stringify(CONFIG_LOADADDR) "\0" \ + "fdtfile=undefined\0" \ "stdin=serial,usbkbd\0" \ "stdout=serial,vga\0" \ "stderr=serial,vga\0" \ "panel=HDMI\0" \ "autoload=no\0" \ + "uImage=uImage-cm-fx6\0" \ + "zImage=zImage-cm-fx6\0" \ "kernel=uImage-cm-fx6\0" \ - "script=boot.scr\0" \ "dtb=cm-fx6.dtb\0" \ - "bootm_low=18000000\0" \ - "loadaddr=0x10800000\0" \ - "fdtaddr=0x11000000\0" \ "console=ttymxc3,115200\0" \ "ethprime=FEC0\0" \ "video_hdmi=mxcfb0:dev=hdmi,1920x1080M-32@50,if=RGB32\0" \ "video_dvi=mxcfb0:dev=dvi,1280x800M-32@50,if=RGB32\0" \ - "doboot=bootm ${loadaddr}\0" \ + "doboot=bootm ${kernel_addr_r}\0" \ "doloadfdt=false\0" \ - "setboottypez=setenv kernel zImage-cm-fx6;" \ - "setenv doboot bootz ${loadaddr} - ${fdtaddr};" \ + "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ + "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ + "setboottypez=setenv kernel ${zImage};" \ + "setenv doboot bootz ${kernel_addr_r} - ${fdt_addr_r};" \ "setenv doloadfdt true;\0" \ - "setboottypem=setenv kernel uImage-cm-fx6;" \ - "setenv doboot bootm ${loadaddr};" \ + "setboottypem=setenv kernel ${uImage};" \ + "setenv doboot bootm ${kernel_addr_r};" \ "setenv doloadfdt false;\0"\ "mmcroot=/dev/mmcblk0p2 rw rootwait\0" \ "sataroot=/dev/sda2 rw rootwait\0" \ "nandroot=/dev/mtdblock4 rw\0" \ "nandrootfstype=ubifs\0" \ "mmcargs=setenv bootargs console=${console} root=${mmcroot} " \ - "${video}\0" \ + "${video} ${extrabootargs}\0" \ "sataargs=setenv bootargs console=${console} root=${sataroot} " \ - "${video}\0" \ + "${video} ${extrabootargs}\0" \ "nandargs=setenv bootargs console=${console} " \ "root=${nandroot} " \ "rootfstype=${nandrootfstype} " \ - "${video}\0" \ + "${video} ${extrabootargs}\0" \ "nandboot=if run nandloadkernel; then " \ "run nandloadfdt;" \ "run setboottypem;" \ @@ -148,17 +116,13 @@ "run_eboot=echo Starting EBOOT ...; "\ "mmc dev 2 && " \ "mmc rescan && mmc read 10042000 a 400 && go 10042000\0" \ - "loadscript=load ${storagetype} ${storagedev} ${loadaddr} ${script};\0"\ - "loadkernel=load ${storagetype} ${storagedev} ${loadaddr} ${kernel};\0"\ - "loadfdt=load ${storagetype} ${storagedev} ${fdtaddr} ${dtb};\0" \ - "bootscript=echo Running bootscript from ${storagetype} ...;" \ - "source ${loadaddr};\0" \ - "nandloadkernel=nand read ${loadaddr} 0 780000;\0" \ - "nandloadfdt=nand read ${fdtaddr} 780000 80000;\0" \ + "loadkernel=load ${storagetype} ${storagedev} ${kernel_addr_r} ${kernel};\0"\ + "loadfdt=load ${storagetype} ${storagedev} ${fdt_addr_r} ${dtb};\0" \ + "nandloadkernel=nand read ${kernel_addr_r} 0 780000;\0" \ + "nandloadfdt=nand read ${fdt_addr_r} 780000 80000;\0" \ "setupmmcboot=setenv storagetype mmc; setenv storagedev 2;\0" \ "setupsataboot=setenv storagetype sata; setenv storagedev 0;\0" \ "setupnandboot=setenv storagetype nand;\0" \ - "setupusbboot=setenv storagetype usb; setenv storagedev 0;\0" \ "storagebootcmd=echo Booting from ${storagetype} ...;" \ "run ${storagetype}args; run doboot;\0" \ "trybootk=if run loadkernel; then " \ @@ -167,60 +131,49 @@ "fi;" \ "run storagebootcmd;" \ "fi;\0" \ - "trybootsmz=if run loadscript; then " \ - "run bootscript;" \ - "fi;" \ + "trybootsmz=" \ "run setboottypem;" \ "run trybootk;" \ "run setboottypez;" \ - "run trybootk;\0" - -#define CONFIG_BOOTCOMMAND \ - "run setupmmcboot;" \ - "mmc dev ${storagedev};" \ - "if mmc rescan; then " \ - "run trybootsmz;" \ - "fi;" \ - "run setupusbboot;" \ - "if usb start; then "\ - "if run loadscript; then " \ - "run bootscript;" \ + "run trybootk;\0" \ + "legacy_bootcmd=" \ + "run setupmmcboot;" \ + "mmc dev ${storagedev};" \ + "if mmc rescan; then " \ + "run trybootsmz;" \ "fi;" \ - "fi;" \ - "run setupsataboot;" \ - "if sata init; then " \ - "run trybootsmz;" \ - "fi;" \ - "run setupnandboot;" \ - "run nandboot;" - -#define CONFIG_PREBOOT "usb start" - -/* SPI */ -#define CONFIG_SPI -#define CONFIG_MXC_SPI -#define CONFIG_SPI_FLASH -#define CONFIG_SPI_FLASH_ATMEL -#define CONFIG_SPI_FLASH_EON -#define CONFIG_SPI_FLASH_GIGADEVICE -#define CONFIG_SPI_FLASH_MACRONIX -#define CONFIG_SPI_FLASH_SPANSION -#define CONFIG_SPI_FLASH_STMICRO -#define CONFIG_SPI_FLASH_SST -#define CONFIG_SPI_FLASH_WINBOND + "run setupsataboot;" \ + "if sata init; then " \ + "run trybootsmz;" \ + "fi;" \ + "run setupnandboot;" \ + "run nandboot;\0" \ + "findfdt="\ + "if test $board_name = Utilite && test $board_rev = MX6Q ; then " \ + "setenv fdtfile imx6q-utilite-pro.dtb; fi; " \ + "if test $fdtfile = undefined; then " \ + "echo WARNING: Could not determine dtb to use; fi; \0" \ + BOOTENV + +#define CONFIG_PREBOOT "usb start;sf probe" + +#define BOOT_TARGET_DEVICES(func) \ + func(USB, usb, 0) \ + func(MMC, mmc, 2) \ + func(SATA, sata, 0) + +#include +#else +#define CONFIG_EXTRA_ENV_SETTINGS +#endif /* NAND */ #ifndef CONFIG_SPL_BUILD -#define CONFIG_CMD_NAND #define CONFIG_SYS_NAND_BASE 0x40000000 #define CONFIG_SYS_NAND_MAX_CHIPS 1 #define CONFIG_SYS_MAX_NAND_DEVICE 1 -#define CONFIG_NAND_MXS #define CONFIG_SYS_NAND_ONFI_DETECTION /* APBH DMA is required for NAND support */ -#define CONFIG_APBH_DMA -#define CONFIG_APBH_DMA_BURST -#define CONFIG_APBH_DMA_BURST8 #endif /* Ethernet */ @@ -228,7 +181,6 @@ #define CONFIG_FEC_MXC_PHYADDR 0 #define CONFIG_FEC_XCV_TYPE RGMII #define IMX_FEC_BASE ENET_BASE_ADDR -#define CONFIG_PHYLIB #define CONFIG_PHY_ATHEROS #define CONFIG_MII #define CONFIG_ETHPRIME "FEC0" @@ -236,22 +188,17 @@ #define CONFIG_NET_RETRY_COUNT 5 /* USB */ -#define CONFIG_CMD_USB -#define CONFIG_USB_EHCI -#define CONFIG_USB_EHCI_MX6 -#define CONFIG_USB_STORAGE #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) #define CONFIG_MXC_USB_FLAGS 0 #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 #define CONFIG_EHCI_HCD_INIT_AFTER_RESET /* For OTG port */ -#define CONFIG_USB_KEYBOARD -#define CONFIG_SYS_USB_EVENT_POLL_VIA_CONTROL_EP -#define CONFIG_SYS_STDIO_DEREGISTER /* I2C */ -#define CONFIG_CMD_I2C #define CONFIG_SYS_I2C #define CONFIG_SYS_I2C_MXC +#define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ +#define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ +#define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ #define CONFIG_SYS_I2C_SPEED 100000 #define CONFIG_SYS_MXC_I2C3_SPEED 400000 @@ -260,64 +207,39 @@ #define CONFIG_SYS_I2C_EEPROM_BUS 2 /* SATA */ -#define CONFIG_CMD_SATA #define CONFIG_SYS_SATA_MAX_DEVICE 1 -#define CONFIG_LIBATA #define CONFIG_LBA48 -#define CONFIG_DWC_AHSATA #define CONFIG_DWC_AHSATA_PORT_ID 0 #define CONFIG_DWC_AHSATA_BASE_ADDR SATA_ARB_BASE_ADDR -/* GPIO */ -#define CONFIG_MXC_GPIO - /* Boot */ -#define CONFIG_ZERO_BOOTDELAY_CHECK -#define CONFIG_LOADADDR 0x10800000 -#define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR -#define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ #define CONFIG_SYS_BOOTMAPSZ (8 << 20) -#define CONFIG_SETUP_MEMORY_TAGS -#define CONFIG_INITRD_TAG -#define CONFIG_REVISION_TAG #define CONFIG_SERIAL_TAG /* misc */ -#define CONFIG_SYS_GENERIC_BOARD -#define CONFIG_STACKSIZE (128 * 1024) #define CONFIG_SYS_MALLOC_LEN (10 * 1024 * 1024) -#define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 800 /* 400 KB */ -#define CONFIG_OF_BOARD_SETUP +#define CONFIG_MISC_INIT_R /* SPL */ #include "imx6_spl.h" -#define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x80 /* offset 64 kb */ -#define CONFIG_SYS_MONITOR_LEN (CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS / 2 * 1024) -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024) -#define CONFIG_SPL_SPI_LOAD /* Display */ -#define CONFIG_VIDEO #define CONFIG_VIDEO_IPUV3 -#define CONFIG_IPUV3_CLK 260000000 #define CONFIG_IMX_HDMI -#define CONFIG_IMX_VIDEO_SKIP -#define CONFIG_CFB_CONSOLE -#define CONFIG_VGA_AS_SINGLE_DEVICE -#define CONFIG_SYS_CONSOLE_IS_IN_ENV -#define CONFIG_CONSOLE_MUX -#define CONFIG_VIDEO_SW_CURSOR #define CONFIG_SPLASH_SCREEN #define CONFIG_SPLASH_SOURCE -#define CONFIG_CMD_BMP #define CONFIG_VIDEO_BMP_RLE8 #define CONFIG_VIDEO_LOGO #define CONFIG_VIDEO_BMP_LOGO +/* EEPROM */ +#define CONFIG_ENV_EEPROM_IS_ON_I2C +#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 +#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 4 +#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5 +#define CONFIG_SYS_EEPROM_SIZE 256 + #endif /* __CONFIG_CM_FX6_H */