From mboxrd@z Thu Jan 1 00:00:00 1970 From: sbabic at denx.de Date: Wed, 30 Jan 2019 08:57:25 +0000 (UTC) Subject: [U-Boot] ARM: imx6q_logic: Enable Falcon Mode and fatwrite In-Reply-To: <20181228162415.8842-1-aford173@gmail.com> Message-ID: <20190130085748.7EF1AC21DB5@lists.denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de > This patch enables Falcon Mode by default and updates the README > file to show instructions on how to run from the micro SD card > or eMMC. This patch also enables fatwrite to help assist with > writing the 'args' to the microSD card. > Signed-off-by: Adam Ford > diff --git a/board/logicpd/imx6/README b/board/logicpd/imx6/README > index df43b55d6b..26d053a32c 100644 > --- a/board/logicpd/imx6/README > +++ b/board/logicpd/imx6/README > @@ -22,8 +22,17 @@ To build U-Boot for the Dual and Quad variants: > > Flashing U-Boot into the SD card > -------------------------------- > +U-Boot is now building with SPL enabled which means there are two files to > +load into the SD card. Make sure the card is formatted with at least two > +partitions with the first partition being FAT32. First copy u-boot-dtb.img > +to the first partition then burn SPL to the SD card with dd. > +The SPL portion is programmed into a certain location for use by the internal > +bootROM and it cannot be changed. The following instructions assume the SD > +card is located as /dev/sdb. > + > + cp u-boot-dtb.img /dev/media/logic/boot > + sudo dd if=SPL of=/dev/sdb bs=1k seek=1 oflag=sync status=none && sync > > -See README.imximage for details on booting from SD > > Flashing U-Boot into NAND > ------------------------- > @@ -32,6 +41,43 @@ with: > > kobs-ng init -v -x u-boot-dtb.imx > > + > +Using Falcon Mode > +----------------- > +With Falcon Mode enabled, U-Boot can be bypassed by having SPL directly load > +the kernel. The device tree, Kernel and boot args must first be configured, > +and stored to a file on the micro SD card called 'args' > +The kernel uImage is built with LOAD_ADDR=0x12000000 and the device tree is > +assummed to be imx6q-logicpd.dtb. > + > +By default the mmcroot is set to the baseboard. > + > + # Establish bootargs > + run mmcargs > + > + # Load Linux Kernel uImage > + fatload mmc 1 $loadaddr uImage > + > + # Load Device Tree > + run loadfdt > + > + # Setup the blob that will get passed to the kernel > + spl export fdt ${loadaddr} - ${fdt_addr_r} > + > + # Note the starting and ending address of the updated device tree. > + # for this example: > + # Loading Device Tree to 1ffdf000, end 1fff038b ... OK > + # Notice that 0x1fff038b - 1ffdf000 = 0x1138b > + # now Add 1, so the length is 0x1138c. > + > + fatwrite mmc 1 0x1ffdf000 args 0x1138c > + > + # Reset the board and it will bypass U-Boot and SPL will directly boot > + # the uImage > + > +To interrupt the boot sequence and force U-Boot to load, hold the 'c' button > +while starting. > + > Additional Support Documentation can be found at: > https://support.logicpd.com/ > > diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig > index 3358c08cb6..457366a664 100644 > --- a/configs/imx6q_logic_defconfig > +++ b/configs/imx6q_logic_defconfig > @@ -22,6 +22,7 @@ CONFIG_SPL_SEPARATE_BSS=y > CONFIG_SPL_DMA_SUPPORT=y > CONFIG_SPL_I2C_SUPPORT=y > CONFIG_SPL_NAND_SUPPORT=y > +CONFIG_SPL_OS_BOOT=y > CONFIG_SPL_PAYLOAD="u-boot.img" > CONFIG_SPL_USB_HOST_SUPPORT=y > CONFIG_SPL_USB_GADGET_SUPPORT=y > @@ -77,3 +78,4 @@ CONFIG_USB_GADGET_VENDOR_NUM=0x0525 > CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5 > CONFIG_CI_UDC=y > CONFIG_USB_GADGET_DOWNLOAD=y > +CONFIG_FAT_WRITE=y Applied to u-boot-imx, master, thanks ! Best regards, Stefano Babic -- ===================================================================== DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================