[U-Boot] [PATCH v2] README.mx28: add

This is mainline a copy of README.m28 changing the references to the mx28 counterpart but it makes easy for people looking for information about mx28 based boards.
Signed-off-by: Otavio Salvador otavio@ossystems.com.br Cc: Fabio Estevam fabio.estevam@freescale.com --- doc/README.mx28 | 152 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 152 insertions(+), 0 deletions(-) create mode 100644 doc/README.mx28
diff --git a/doc/README.mx28 b/doc/README.mx28 new file mode 100644 index 0000000..a68ad72 --- /dev/null +++ b/doc/README.mx28 @@ -0,0 +1,152 @@ +Freescale MX28EVK +================= + +This document describes the Freescale MX28EVK U-Boot port. This document mostly +covers topics related to making the module/board bootable. + +Terminology +----------- + +The dollar symbol ($) introduces a snipped of shell code. This shall be typed +into the unix command prompt in U-Boot source code root directory. + +The (=>) introduces a snipped of code that should by typed into U-Boot command +prompt. + +Contents +-------- + +0) Files of the MX28EVK port +1) Prerequisites +2) Compiling U-Boot for MX28EVK +3) Installation of U-Boot for MX28EVK to SD card + +0) Files of the MX28EVK port +---------------------------- + +arch/arm/cpu/arm926ejs/mx28/ - The CPU support code for the Freescale i.MX28 +arch/arm/include/asm/arch-mx28/ - Header files for the Freescale i.MX28 +board/denx/mx28evk/ - MX28EVK board specific files +include/configs/mx28evk.h - MX28EVK configuration file + +1) Prerequisites +---------------- + +To make the MX28EVK board bootable, some tools are necessary. The first one is +the "elftosb" tool distributed by Freescale Semiconductor. The other tool is the +"mxsboot" tool found in U-Boot source tree. + +Firstly, obtain the elftosb archive from the following location: + + http://foss.doredevelopment.dk/mirrors/imx/elftosb-10.12.01.tar.gz + +We use a $VER variable here to denote the current version. At the time of +writing of this document, that is "10.12.01". To obtain the file from command +line, use: + + $ VER="10.12.01" + $ wget http://foss.doredevelopment.dk/mirrors/imx/elftosb-$%7BVER%7D.tar.gz + +Extract the file: + + $ tar xzf elftosb-${VER}.tar.gz + +Compile the file. We need to manually tell the linker to use also libm: + + $ cd elftosb-${VER}/ + $ make LIBS="-lstdc++ -lm" elftosb + +Optionally, remove debugging symbols from elftosb: + + $ strip bld/linux/elftosb + +Finally, install the "elftosb" binary. The "install" target is missing, so just +copy the binary by hand: + + $ sudo cp bld/linux/elftosb /usr/local/bin/ + +Make sure the "elftosb" binary can be found in your $PATH, in this case this +means "/usr/local/bin/" has to be in your $PATH. + +2) Compiling U-Boot for MX28 +---------------------------- + +Compiling the U-Boot for MX28 is straightforward and done as compiling U-Boot +for any other ARM device. For cross-compiler setup, please refer to ELDK5.0 +documentation. First, clean up the source code: + + $ make mrproper + +Next, configure U-Boot for MX28EVK: + + $ make mx28evk_config + +Lastly, compile U-Boot and prepare a "BootStream". The "BootStream" is a special +type of file, which the i.MX28 CPU can boot. This is handled by the following +command: + + $ make u-boot.sb + +HINT: To speed-up the build process, you can add -j<N>, where N is number of + compiler instances that'll run in parallel. + +The code produces "u-boot.sb" file. This file needs to be augmented with a +proper header to allow successful boot from SD or NAND. Adding the header is +discussed in the following chapters. + +3) Installation of U-Boot for MX28EVK to SD card +------------------------------------------------ + +To boot an MX28 from SD, set the boot mode DIP switches as: + + * Boot Mode Select: 1 0 0 1 (Boot from SD card Slot 0 - U42) + * JTAG PSWITCH RESET: To the left (reset enabled) + * Battery Source: Down + * Wall 5V: Up + * VDD 5V: To the left (off) + * Hold Button: Down (off) + +Full reference at i.MX28 manual chapter 12.2.1 (Table 12-2). + +An SD card that can be used to boot U-Boot on a i.MX28 CPU must contain a DOS +partition table, which in turn carries a partition of special type and which +contains a special header. The rest of partitions in the DOS partition table can +be used by the user. + +To prepare such partition, use your favourite partitioning tool. The partition +must have the following parameters: + + * Start sector .......... sector 2048 + * Partition size ........ at least 1024 kb + * Partition type ........ 0x53 (sometimes "OnTrack DM6 Aux3") + +For example in Linux fdisk, the sequence for a clear card follows. Be sure to +run fdisk with the option "-u=sectors" to set units to sectors: + + * o ..................... create a clear partition table + * n ..................... create new partition + * p ............. primary partition + * 1 ............. first partition + * 2048 .......... first sector is 2048 + * +1M ........... make the partition 1Mb big + * t 1 ................... change first partition ID + * 53 ............ change the ID to 0x53 (OnTrack DM6 Aux3) + * <create other partitions> + * w ..................... write partition table to disk + +The partition layout is ready, next the special partition must be filled with +proper contents. The contents is generated by running the following command (see +chapter 2)): + + $ ./tools/mxsboot sd u-boot.sb u-boot.sd + +The resulting file, "u-boot.sd", shall then be written to the partition. In this +case, we assume the first partition of the SD card is /dev/mmcblk0p1: + + $ dd if=u-boot.sd of=/dev/mmcblk0p1 + +Last step is to insert the card into MX28EVK and boot. + +NOTE: If the user needs to adjust the start sector, the "mxsboot" tool contains + a "-p" switch for that purpose. The "-p" switch takes the sector number as + an argument.

On Tue, Mar 20, 2012 at 11:10 PM, Otavio Salvador otavio@ossystems.com.br wrote:
This is mainline a copy of README.m28 changing the references to the mx28 counterpart but it makes easy for people looking for information about mx28 based boards.
Signed-off-by: Otavio Salvador otavio@ossystems.com.br Cc: Fabio Estevam fabio.estevam@freescale.com
Acked-by: Fabio Estevam fabio.estevam@freescale.com

On 21/03/2012 03:10, Otavio Salvador wrote:
This is mainline a copy of README.m28 changing the references to the mx28 counterpart but it makes easy for people looking for information about mx28 based boards.
Hi Otavio,
only a couple of small issues. You have already changed inside the file all occurencies of mx28 to mx28evk. You should also rename this file to make sure it is specific to the mx28evk and not, for example, to the m28evk or generally for the SOC. So please rename it to README.mx28evk.
Can you also rename the subject in a form like:
mx28evk: Add README.mx28evk
Fabio has alrady sent his ACK, I will merge this patch in the forthcoming release.
Best regards, Stefano Babic

On Wed, Mar 21, 2012 at 12:03, Stefano Babic sbabic@denx.de wrote:
only a couple of small issues. You have already changed inside the file all occurencies of mx28 to mx28evk. You should also rename this file to make sure it is specific to the mx28evk and not, for example, to the m28evk or generally for the SOC. So please rename it to README.mx28evk.
Will send v3 in a minute. :)

On Tue, Mar 20, 2012 at 11:10 PM, Otavio Salvador otavio@ossystems.com.br wrote:
This is mainline a copy of README.m28 changing the references to the mx28 counterpart but it makes easy for people looking for information about mx28 based boards.
Signed-off-by: Otavio Salvador otavio@ossystems.com.br Cc: Fabio Estevam fabio.estevam@freescale.com
doc/README.mx28 | 152 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 152 insertions(+), 0 deletions(-) create mode 100644 doc/README.mx28
diff --git a/doc/README.mx28 b/doc/README.mx28 new file mode 100644 index 0000000..a68ad72 --- /dev/null +++ b/doc/README.mx28 @@ -0,0 +1,152 @@ +Freescale MX28EVK +=================
+This document describes the Freescale MX28EVK U-Boot port. This document mostly +covers topics related to making the module/board bootable.
As you will have to respin it, please remove "module" and also include "Only the latest revision of MX28EVK has been tested (rev. D)".

Dear Otavio Salvador,
In message 1332295831-19224-1-git-send-email-otavio@ossystems.com.br you wrote:
This is mainline a copy of README.m28 changing the references to the
s/mainline/mainly/ ?
mx28 counterpart but it makes easy for people looking for information about mx28 based boards.
I don't like that we copy all this stuff around for each and every board that uses the i.MX28; there may be a lot of such boards one day, and we will have a maintenenace nightmare because nobody will keep all tehse READMEs in sync.
Can we please split this document in a generic and board specific part? For now, while there are only very few boards, this can probably be done in a single document.
Best regards,
Wolfgang Denk
participants (4)
-
Fabio Estevam
-
Otavio Salvador
-
Stefano Babic
-
Wolfgang Denk