Skip to contentSkip to conversation

i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

PATCH Superseded Dirk Behme 6 participants 10 messages Dec 26, 2011 – Jan 20, 2012 Arm i.MX and Layerscape

v3 of 4 Superseded Latest is v4 →

lore
Share & tools
lore

Dirk Behme

author
#0 lore raw

PATCH v3 1/1 i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

From: Jason Liu <[email protected]>

Add the initial support for Freescale i.MX6Q Sabre Lite board

CC Jason Liu <[email protected]>
CC Eric Nelson <[email protected]>

---
V3: Add a readme.
Enable the usboh3 clock: Bits 0 and 1 of CCM_CCGR7 are the usboh3 clock enable bits. Enabling this clock is necessary for the USB download:

-DATA 4 0x020c4080 0x000003FC
+DATA 4 0x020c4080 0x000003FF

V2: change the default script to let linaro image boot, and also
change the default env to dev 0, which is normal SD slot, not the Micro-SD slot

 MAINTAINERS                                   |    1 
 board/freescale/mx6qsabrelite/Makefile        |   42 ++++++
 board/freescale/mx6qsabrelite/imximage.cfg    |  170 ++++++++++++++++++++++++++
 board/freescale/mx6qsabrelite/mx6qsabrelite.c |  150 ++++++++++++++++++++++
 boards.cfg                                    |    1 
 doc/README.mx6qsabrelite                      |   67 ++++++++++
 include/configs/mx6qsabrelite.h               |  162 ++++++++++++++++++++++++
 7 files changed, 593 insertions(+)
 create mode 100644 board/freescale/mx6qsabrelite/Makefile
 create mode 100644 board/freescale/mx6qsabrelite/imximage.cfg
 create mode 100644 board/freescale/mx6qsabrelite/mx6qsabrelite.c
 create mode 100644 include/configs/mx6qsabrelite.h
MAINTAINERS +1 -0
Index: freescale-u-boot-imx.git/MAINTAINERS
===================================================================
@@ -579,6 +579,7 @@ Jason Liu <[email protected]>
 	mx53evk         i.MX53
 	mx53loco        i.MX53
 	mx6qarm2	i.MX6Q
+	mx6qsabrelite   i.MX6Q
 
 Enric Balletbo i Serra <[email protected]>
 
board/freescale/mx6qsabrelite/Makefile new file +42 -0

42 lines not on this page · raw message

board/freescale/mx6qsabrelite/imximage.cfg new file +170 -0

170 lines not on this page · raw message

board/freescale/mx6qsabrelite/mx6qsabrelite.c new file +150 -0

150 lines not on this page · raw message

boards.cfg +1 -0
Index: freescale-u-boot-imx.git/boards.cfg
===================================================================
@@ -193,6 +193,7 @@ mx53loco                     arm
 mx53smd                      arm         armv7       mx53smd             freescale      mx5		mx53smd:IMX_CONFIG=board/freescale/mx53smd/imximage.cfg
 vision2                      arm         armv7       vision2             ttcontrol      mx5		vision2:IMX_CONFIG=board/ttcontrol/vision2/imximage_hynix.cfg
 mx6qarm2                     arm         armv7       mx6qarm2            freescale      mx6		mx6qarm2:IMX_CONFIG=board/freescale/mx6qarm2/imximage.cfg
+mx6qsabrelite                arm         armv7       mx6qsabrelite       freescale      mx6		mx6qsabrelite:IMX_CONFIG=board/freescale/mx6qsabrelite/imximage.cfg
 cm_t35                       arm         armv7       cm_t35              -              omap3
 omap3_overo                  arm         armv7       overo               -              omap3
 omap3_pandora                arm         armv7       pandora             -              omap3
include/configs/mx6qsabrelite.h new file +162 -0

162 lines not on this page · raw message

doc/README.mx6qsabrelite new file +67 -0

67 lines not on this page · raw message

#1 lore raw

PATCH v3 1/1 i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

Quoted 4 lines · Dirk Behme

From: Jason Liu <[email protected]>

Add the initial support for Freescale i.MX6Q Sabre Lite board

Hi Dirk,

MAINTAINERS Jason Liu <[email protected]> · line 582

Quoted 10 lines

Index: freescale-u-boot-imx.git/MAINTAINERS
===================================================================

MAINTAINERS +1 -0
@@ -579,6 +579,7 @@ Jason Liu <[email protected]>
 	mx53evk         i.MX53
 	mx53loco        i.MX53
 	mx6qarm2	i.MX6Q
+	mx6qsabrelite   i.MX6Q

Can you confirm that Jason is the maintainer of the board ?

Quoted 11 lines
MAINTAINERS +11 -0
+
+#ifdef CONFIG_FSL_ESDHC
+struct fsl_esdhc_cfg usdhc_cfg[2] = {
+       {USDHC3_BASE_ADDR, 1},
+       {USDHC4_BASE_ADDR, 1},
+};
+
+int board_mmc_getcd(u8 *cd, struct mmc *mmc)
+{
+       struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
+

MAINTAINERS Jason Liu <[email protected]>

Quoted 10 lines
MAINTAINERS +10 -0
+       if (cfg->esdhc_base == USDHC3_BASE_ADDR) {
+               gpio_direction_input(192); /*GPIO7_0*/
+               *cd = gpio_get_value(192);
+       } else {
+               gpio_direction_input(38); /*GPIO2_6*/
+               *cd = gpio_get_value(38);
+       }
+
+       return 0;
+}

I have not an evident comment with this code, but there are pending patches to change this behavior:

http://patchwork.ozlabs.org/patch/132398/

The patches already updates other i.MX boards. If, as I presume, this patches goes soon in mainline, board_mmc_getcd() must be updated to be adjusted for the new API. I will wait a while before merging your patch to check the status of the mmc patchset.

Quoted 7 lines
MAINTAINERS +6 -0
@@ -0,0 +1,67 @@
+U-Boot for the Freescale i.MX6q SabreLite board
+
+This file contains information for the port of U-Boot to the Freescale
+i.MX6q SabreLite board.
+
+1. Boot source, boot from SD card

MAINTAINERS line 16

Quoted 10 lines
MAINTAINERS +10 -0
+---------------------------------
+
+The recent mainline U-Boot for the Freescale i.MX6q SabreLite board supports
+boot from SD card only. However, by default, the early version of SabreLite
+boards boot from the SPI NOR flash. These boards need to be reflashed with
+a small SD card loader to support boot from SD card. This small SD card loader
+will be flashed into the SPI NOR. The board will still boot from SPI NOR, but
+the loader will in turn request the BootROM to load the U-Boot from SD card.
+At the moment of writing, please check with Freescale on the availablity of
+this small SD loader binary.

Ok, fine. For my information only, is there a revision version to be checked if the board needs this small loader ?

Best regards,
Stefano Babic

Signature · 5 lines
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de
=====================================================================
author
#2 lore raw

PATCH v3 1/1 i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

Quoted 9 lines · Stefano Babic
Quoted 4 lines · Dirk Behme

From: Jason Liu<[email protected]>

Add the initial support for Freescale i.MX6Q Sabre Lite board

Hi Dirk,

Quoted 1 line
Quoted 11 lines

MAINTAINERS Jason Liu<[email protected]> · line 582

Quoted 9 lines

Index: freescale-u-boot-imx.git/MAINTAINERS
===================================================================

MAINTAINERS +1 -0
@@ -579,6 +579,7 @@ Jason Liu<[email protected]>
  	mx53evk         i.MX53
  	mx53loco        i.MX53
  	mx6qarm2	i.MX6Q
+	mx6qsabrelite   i.MX6Q

Can you confirm that Jason is the maintainer of the board ?

Yes, I think so, it shouldn't have changed since v2

http://lists.denx.de/pipermail/u-boot/2011-December/113142.html

Jason?

Quoted 25 lines
Quoted 11 lines
MAINTAINERS +11 -0
+
+#ifdef CONFIG_FSL_ESDHC
+struct fsl_esdhc_cfg usdhc_cfg[2] = {
+       {USDHC3_BASE_ADDR, 1},
+       {USDHC4_BASE_ADDR, 1},
+};
+
+int board_mmc_getcd(u8 *cd, struct mmc *mmc)
+{
+       struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
+

MAINTAINERS Jason Liu<[email protected]>

Quoted 10 lines
MAINTAINERS +10 -0
+       if (cfg->esdhc_base == USDHC3_BASE_ADDR) {
+               gpio_direction_input(192); /*GPIO7_0*/
+               *cd = gpio_get_value(192);
+       } else {
+               gpio_direction_input(38); /*GPIO2_6*/
+               *cd = gpio_get_value(38);
+       }
+
+       return 0;
+}

I have not an evident comment with this code, but there are pending patches to change this behavior:

Quoted 6 lines

http://patchwork.ozlabs.org/patch/132398/

The patches already updates other i.MX boards. If, as I presume, this patches goes soon in mainline, board_mmc_getcd() must be updated to be adjusted for the new API. I will wait a while before merging your patch to check the status of the mmc patchset.

Ok, good to know. Thanks!

Let us know if you want us to update this patch against

http://patchwork.ozlabs.org/patch/132398/

Quoted 12 lines
Quoted 12 lines
MAINTAINERS +11 -0
@@ -0,0 +1,67 @@
+U-Boot for the Freescale i.MX6q SabreLite board
+
+This file contains information for the port of U-Boot to the Freescale
+i.MX6q SabreLite board.
+
+1. Boot source, boot from SD card
+---------------------------------
+
+The recent mainline U-Boot for the Freescale i.MX6q SabreLite board supports
+boot from SD card only. However, by default, the early version of SabreLite
+boards boot from the SPI NOR flash. These boards need to be reflashed with
Quoted 8 lines

MAINTAINERS line 16

Quoted 5 lines
MAINTAINERS +5 -0
+a small SD card loader to support boot from SD card. This small SD card loader
+will be flashed into the SPI NOR. The board will still boot from SPI NOR, but
+the loader will in turn request the BootROM to load the U-Boot from SD card.
+At the moment of writing, please check with Freescale on the availablity of
+this small SD loader binary.

Ok, fine. For my information only, is there a revision version to be checked if the board needs this small loader ?

Good question ;) There is some discussion if it is possible to make a new version of the board which is configurable to SD boot by HW. But there seem to be some layout issues. So atm I would answer your question with 'no'.

Best regards

Dirk

#3 lore raw

PATCH v3 1/1 i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

Quoted 2 lines

-----Original Message-----

From: [email protected] [mailto:u-boot-bounces at lists.denx.de]

Quoted 31 lines

On Behalf Of Dirk Behme
Sent: Thursday, December 29, 2011 3:10 PM
To: Stefano Babic; Jason Liu
Cc: u-boot at lists.denx.de; Dirk Behme
Subject: Re: [U-Boot] [PATCH v3] i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

Quoted 11 lines · Stefano Babic
Quoted 4 lines · Dirk Behme

From: Jason Liu<[email protected]>

Add the initial support for Freescale i.MX6Q Sabre Lite board

Hi Dirk,

Quoted 3 lines

Index: freescale-u-boot-imx.git/MAINTAINERS

=================================================================
==

Quoted 9 lines

MAINTAINERS Jason Liu<[email protected]> · line 582

Quoted 7 lines
MAINTAINERS +1 -0
@@ -579,6 +579,7 @@ Jason Liu<[email protected]>
  	mx53evk         i.MX53
  	mx53loco        i.MX53
  	mx6qarm2	i.MX6Q
+	mx6qsabrelite   i.MX6Q

Can you confirm that Jason is the maintainer of the board ?

Quoted 5 lines

Yes, I think so, it shouldn't have changed since v2

http://lists.denx.de/pipermail/u-boot/2011-December/113142.html

Jason?

Yes. And please change the tag with me to signed-off since I contribute the patch. Thanks,

Quoted 33 lines
Quoted 26 lines
Quoted 12 lines
MAINTAINERS +11 -0
+
+#ifdef CONFIG_FSL_ESDHC
+struct fsl_esdhc_cfg usdhc_cfg[2] = {
+       {USDHC3_BASE_ADDR, 1},
+       {USDHC4_BASE_ADDR, 1},
+};
+
+int board_mmc_getcd(u8 *cd, struct mmc *mmc) {
+       struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg
+*)mmc->priv;
+

MAINTAINERS Jason Liu<[email protected]>

Quoted 10 lines
MAINTAINERS +10 -0
+       if (cfg->esdhc_base == USDHC3_BASE_ADDR) {
+               gpio_direction_input(192); /*GPIO7_0*/
+               *cd = gpio_get_value(192);
+       } else {
+               gpio_direction_input(38); /*GPIO2_6*/
+               *cd = gpio_get_value(38);
+       }
+
+       return 0;
+}

I have not an evident comment with this code, but there are pending patches to change this behavior:

Quoted 6 lines

http://patchwork.ozlabs.org/patch/132398/

The patches already updates other i.MX boards. If, as I presume, this patches goes soon in mainline, board_mmc_getcd() must be updated to be adjusted for the new API. I will wait a while before merging your patch to check the status of the mmc patchset.

Quoted 5 lines

Ok, good to know. Thanks!

Let us know if you want us to update this patch against

http://patchwork.ozlabs.org/patch/132398/

Yes, after the new MMC CD patch goes mainline, there will be a new version to update with it.

Quoted 23 lines
Quoted 16 lines
Quoted 6 lines
MAINTAINERS +4 -0
@@ -0,0 +1,67 @@
+U-Boot for the Freescale i.MX6q SabreLite board
+
+This file contains information for the port of U-Boot to the
+Freescale i.MX6q SabreLite board.

MAINTAINERS line 14

Quoted 10 lines
MAINTAINERS +10 -0
+
+1. Boot source, boot from SD card
+---------------------------------
+
+The recent mainline U-Boot for the Freescale i.MX6q SabreLite board
+supports boot from SD card only. However, by default, the early
+version of SabreLite boards boot from the SPI NOR flash. These
+boards need to be reflashed with a small SD card loader to support
+boot from SD card. This small SD card loader will be flashed into
+the SPI NOR. The board will still boot from SPI NOR, but the loader will in

turn request the BootROM to load the U-Boot from SD card.

Quoted 5 lines

MAINTAINERS line 16

Quoted 2 lines
MAINTAINERS +2 -0
+At the moment of writing, please check with Freescale on the
+availablity of this small SD loader binary.

Ok, fine. For my information only, is there a revision version to be checked if the board needs this small loader ?

Quoted 3 lines

Good question ;) There is some discussion if it is possible to make a new version of the board which is configurable to SD boot by HW. But there seem to be some layout issues. So atm I would answer your question with 'no'.

+1

Happy New Year!

Quoted 9 lines

Best regards

Dirk

_______________________________________________
U-Boot mailing list
U-Boot at lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

#4 lore raw

PATCH v3 1/1 i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

In reply to Dirk Behme
Quoted 87 lines · Dirk Behme
Quoted 9 lines · Stefano Babic
Quoted 4 lines · Dirk Behme

From: Jason Liu<[email protected]>

Add the initial support for Freescale i.MX6Q Sabre Lite board

Hi Dirk,

Quoted 1 line
Quoted 11 lines
Quoted 9 lines

Index: freescale-u-boot-imx.git/MAINTAINERS
===================================================================

MAINTAINERS +0 -0
@@ -579,6 +579,7 @@ Jason Liu<[email protected]>

mx53evk i.MX53
mx53loco i.MX53
mx6qarm2 i.MX6Q
+ mx6qsabrelite i.MX6Q

Can you confirm that Jason is the maintainer of the board ?

Yes, I think so, it shouldn't have changed since v2

http://lists.denx.de/pipermail/u-boot/2011-December/113142.html

Jason?

Quoted 25 lines
Quoted 11 lines
MAINTAINERS +11 -0
+
+#ifdef CONFIG_FSL_ESDHC
+struct fsl_esdhc_cfg usdhc_cfg[2] = {
+ {USDHC3_BASE_ADDR, 1},
+ {USDHC4_BASE_ADDR, 1},
+};
+
+int board_mmc_getcd(u8 *cd, struct mmc *mmc)
+{
+ struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
+

MAINTAINERS

Quoted 10 lines
MAINTAINERS +10 -0
+ if (cfg->esdhc_base == USDHC3_BASE_ADDR) {
+ gpio_direction_input(192); /*GPIO7_0*/
+ *cd = gpio_get_value(192);
+ } else {
+ gpio_direction_input(38); /*GPIO2_6*/
+ *cd = gpio_get_value(38);
+ }
+
+ return 0;
+}

I have not an evident comment with this code, but there are pending patches to change this behavior:

Quoted 6 lines

http://patchwork.ozlabs.org/patch/132398/

The patches already updates other i.MX boards. If, as I presume, this patches goes soon in mainline, board_mmc_getcd() must be updated to be adjusted for the new API. I will wait a while before merging your patch to check the status of the mmc patchset.

Ok, good to know. Thanks!

Let us know if you want us to update this patch against

http://patchwork.ozlabs.org/patch/132398/

Quoted 12 lines
Quoted 12 lines
MAINTAINERS +11 -0
@@ -0,0 +1,67 @@
+U-Boot for the Freescale i.MX6q SabreLite board
+
+This file contains information for the port of U-Boot to the Freescale
+i.MX6q SabreLite board.
+
+1. Boot source, boot from SD card
+---------------------------------
+
+The recent mainline U-Boot for the Freescale i.MX6q SabreLite board supports
+boot from SD card only. However, by default, the early version of SabreLite
+boards boot from the SPI NOR flash. These boards need to be reflashed with
Quoted 8 lines

MAINTAINERS line 16

Quoted 5 lines
MAINTAINERS +5 -0
+a small SD card loader to support boot from SD card. This small SD card loader
+will be flashed into the SPI NOR. The board will still boot from SPI NOR, but
+the loader will in turn request the BootROM to load the U-Boot from SD card.
+At the moment of writing, please check with Freescale on the availablity of
+this small SD loader binary.

Ok, fine. For my information only, is there a revision version to be checked if the board needs this small loader ?

Quoted 4 lines

Good question ;) There is some discussion if it is possible to make a new version of the board which is configurable to SD boot by HW. But there seem to be some layout issues. So atm I would answer your question with 'no'.

To clarify, all SabreLite boards produced to date have their boot fuses blown to select boot to SPI NOR. In the future, this could be changed to allow boot to SD, but that's a one-time choice.

The layout issues concern the use "Internal Boot Mode", which allows a set of ~32 GPIOs to override the fuse settings, which will require a bunch of pull-up/down resistors.

Quoted 9 lines

Best regards

Dirk

_______________________________________________
U-Boot mailing list
U-Boot at lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

#5 lore raw

PATCH v3 1/1 i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

In reply to Dirk Behme
Quoted 8 lines · Dirk Behme

From: Jason Liu <[email protected]>

Add the initial support for Freescale i.MX6Q Sabre Lite board

CC Jason Liu <[email protected]>
CC Eric Nelson <[email protected]>

---

...

Quoted 48 lines

Index: freescale-u-boot-imx.git/doc/README.mx6qsabrelite
===================================================================

doc/README.mx6qsabrelite new file +43 -0
@@ -0,0 +1,67 @@
+U-Boot for the Freescale i.MX6q SabreLite board
+
+This file contains information for the port of U-Boot to the Freescale
+i.MX6q SabreLite board.
+
+1. Boot source, boot from SD card
+---------------------------------
+
+The recent mainline U-Boot for the Freescale i.MX6q SabreLite board supports
+boot from SD card only. However, by default, the early version of SabreLite
+boards boot from the SPI NOR flash. These boards need to be reflashed with
+a small SD card loader to support boot from SD card. This small SD card loader
+will be flashed into the SPI NOR. The board will still boot from SPI NOR, but
+the loader will in turn request the BootROM to load the U-Boot from SD card.
+At the moment of writing, please check with Freescale on the availablity of
+this small SD loader binary.
+
+To update the SPI-NOR on the SabreLite board without the Freescale
+manufacturing tool use the following procedure:
+
+1. Write this SD card loader onto a large SD card using:
+
+ sudo dd if=MX6_SPI_to_SD_loader.bin of=/dev/sXx
+
+Note: Replace sXx with the device representing the SD card in your system.
+
+Note: This writes SD card loader at address 0
+
+2. Put this SD card into the slot for the large SD card (SD3 on the bottom of
+the board)
+
+3. Power-up the SabreLite, press 'space' to enter command mode in the U-Boot
+(the default one the board is shipped with, starting from the SPI NOR) and
+enter the following commands:
+
+ MX6Q SABRELITE U-Boot > mmc dev 0
+ MX6Q SABRELITE U-Boot > mmc read 0x10800000 0 200
+ MX6Q SABRELITE U-Boot > sf probe 1
+ MX6Q SABRELITE U-Boot > sf erase 0 0x40000
+ MX6Q SABRELITE U-Boot > sf write 0x10800000 0 0x40000
+
+4. done.
+

doc/README.mx6qsabrelite line 53

Quoted 10 lines
doc/README.mx6qsabrelite new file +10 -0
+In case you somehow do not succeed with this procedure you will have to use
+the Freescale manufacturing tool in order to reflash the SPI-NOR.
+
+Note: The board now boots from full size SD3 on the bottom of the board. NOT
+      the micro SD4/BOOT slot on the top of the board. I.e. you have to use
+      full size SD cards.
+
+This information is taken from
+
+https://wiki.linaro.org/Boards/MX6QSabreLite

Where can I find the "SPI_to_SD_loader.bin" image? What means early version of SabreLite boards? How can I select boot from SD-Card on newer versions? And will the u-boot.imx image also boot when loaded to the SPI-NOR fash?

Wolfgang.

#6 lore raw

PATCH v3 1/1 i.mx: i.mx6q: add the initial support for i.mx6q Sabre Lite board

Dear Wolfgang,

Quoted 64 lines · Wolfgang Grandegger
Quoted 8 lines · Dirk Behme

From: Jason Liu <[email protected]>

Add the initial support for Freescale i.MX6Q Sabre Lite board

CC Jason Liu <[email protected]>
CC Eric Nelson <[email protected]>

---

...

Quoted 52 lines

Index: freescale-u-boot-imx.git/doc/README.mx6qsabrelite
===================================================================

doc/README.mx6qsabrelite new file +47 -0
@@ -0,0 +1,67 @@
+U-Boot for the Freescale i.MX6q SabreLite board
+
+This file contains information for the port of U-Boot to the Freescale
+i.MX6q SabreLite board.
+
+1. Boot source, boot from SD card
+---------------------------------
+
+The recent mainline U-Boot for the Freescale i.MX6q SabreLite board supports
+boot from SD card only. However, by default, the early version of SabreLite
+boards boot from the SPI NOR flash. These boards need to be reflashed with
+a small SD card loader to support boot from SD card. This small SD card loader
+will be flashed into the SPI NOR. The board will still boot from SPI NOR, but
+the loader will in turn request the BootROM to load the U-Boot from SD card.
+At the moment of writing, please check with Freescale on the availablity of
+this small SD loader binary.
+
+To update the SPI-NOR on the SabreLite board without the Freescale
+manufacturing tool use the following procedure:
+
+1. Write this SD card loader onto a large SD card using:
+
+ sudo dd if=MX6_SPI_to_SD_loader.bin of=/dev/sXx
+
+Note: Replace sXx with the device representing the SD card in your system.
+
+Note: This writes SD card loader at address 0
+
+2. Put this SD card into the slot for the large SD card (SD3 on the bottom of
+the board)
+
+3. Power-up the SabreLite, press 'space' to enter command mode in the U-Boot
+(the default one the board is shipped with, starting from the SPI NOR) and
+enter the following commands:
+
+ MX6Q SABRELITE U-Boot > mmc dev 0
+ MX6Q SABRELITE U-Boot > mmc read 0x10800000 0 200
+ MX6Q SABRELITE U-Boot > sf probe 1
+ MX6Q SABRELITE U-Boot > sf erase 0 0x40000
+ MX6Q SABRELITE U-Boot > sf write 0x10800000 0 0x40000
+
+4. done.
+
+In case you somehow do not succeed with this procedure you will have to use
+the Freescale manufacturing tool in order to reflash the SPI-NOR.
+
+Note: The board now boots from full size SD3 on the bottom of the board. NOT
Quoted 8 lines

doc/README.mx6qsabrelite line 53

Quoted 6 lines
doc/README.mx6qsabrelite new file +6 -0
+      the micro SD4/BOOT slot on the top of the board. I.e. you have to use
+      full size SD cards.
+
+This information is taken from
+
+https://wiki.linaro.org/Boards/MX6QSabreLite

Where can I find the "SPI_to_SD_loader.bin" image?

Unfortunately, at the moment you have to ask your Freescale contact for this. We ping Freescale since weeks for this. Last time I heard about this Freescale planned to release this binary under a BSD license. They are still "working through the licensing details", though :(

Quoted 2 lines

What means early
version of SabreLite boards?

Most probably Eric will be able to better answer this.

What I understood: Up to now, the boards boot from SPI NOR by default. There was some _discussion_ to change this to SD boot. Most probably "early version" was written while this discussion under the impression that later boards might switch to SD boot. To my understanding the result of this discussion was that this change would be difficult, though.

Quoted 2 lines

How can I select boot from SD-Card on
newer versions?

To my understanding there are no "newer versions" yet.

Quoted 2 lines

And will the u-boot.imx image also boot when loaded to the SPI-NOR fash?

Hmm, I'm not sure about this as I haven't tested this.

Eric?

Please note that Eric is in the process of mainlining the SPI driver for i.MX6, atm.

Best regards

Dirk

#7 lore raw

[U-Boot] mx6qsabrelite U-Boot from SPI-NOR

Hi Wolfgang,

Quoted 11 lines · Dirk Behme

Dear Wolfgang,

Quoted 2 lines · Wolfgang Grandegger

Where can I find the "SPI_to_SD_loader.bin" image?

Unfortunately, at the moment you have to ask your Freescale contact for this. We ping Freescale since weeks for this. Last time I heard about this Freescale planned to release this binary under a BSD license. They are still "working through the licensing details", though :(

Quoted 5 lines
Quoted 2 lines

What means early
version of SabreLite boards?

Most probably Eric will be able to better answer this.

At this point **all** versions of SabreLite are configured to boot to SPI NOR through the fuses.

As Dirk mentioned, we've had some conversations about booting to SD card, but once the fuse is blown, it's blown.

Quoted 6 lines

What I understood: Up to now, the boards boot from SPI NOR by default. There was some _discussion_ to change this to SD boot. Most probably "early version" was written while this discussion under the impression that later boards might switch to SD boot. To my understanding the result of this discussion was that this change would be difficult, though.

We've discussed, but currently have no plans to support a physical switch to control this decision. This would involve using the "Internal" boot mode position of SW1 and then pulling a **bunch** of pins high or low to control the boot flow.

Note that all of the pins are available on connector J12 (BOOT/EIM), so it might be done with a small daughter-board.

Quoted 4 lines
Quoted 1 line

How can I select boot from SD-Card on newer versions?

To my understanding there are no "newer versions" yet.

Right.

Quoted 7 lines
Quoted 2 lines

And will the u-boot.imx image also boot when loaded to the SPI-NOR fash?

Hmm, I'm not sure about this as I haven't tested this.

Eric?

Yes. If you program u-boot.imx to offset 0x400, it will boot.

I just did so as shown below.

I started by placing SW1 in the 01 position (boot to USB), and used imx_usb to dowload u-boot.imx:

MX6QSABRELITE U-Boot > dhcp 10800000 192.168.0.112:u-boot.imx fec_open:Speed=100
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 29.6.1.24
Using FEC device
TFTP from server 192.168.0.112; our IP address is 29.6.1.24; sending through
gateway 29.6.1.1

	Filename 'u-boot.imx'.
	Load address: 0x10800000
	Loading: #########################################
	done
	Bytes transferred = 207112 (32908 hex)
	MX6QSABRELITE U-Boot > sf write 0x10800000 0x400 $filesize

<switched SW1 to BOOT mode 0 and hit the reset button here>

U-Boot 2011.12-00048-g5c30101 (Jan 19 2012 - 17:14:32)
CPU: Freescale i.MX61 family rev1.0 at 792 MHz
Reset cause: POR
Board: MX6Q-Sabre Lite
DRAM: 1 GiB
WARNING: Caches not enabled
MMC: FSL_SDHC: 0, FSL_SDHC: 1
MMC init failed
Using default environment

In: serial
Out: serial
Err: serial
Net: FEC
Hit any key to stop autoboot: 0
MX6QSABRELITE U-Boot >
MX6QSABRELITE U-Boot >

The imx_usb utility is available here:
http://boundarydevices.com/git?p=imx_usb_loader.git

It requires libusb-1.0-0-dev to build, but has few other dependencies.

Usage is simple: hand it the file you want to execute. It will look at the header to find out where to place the image.
~/imx_usb_loader$ sudo sudo ./imx_usb u-boot.imx

Quoted 2 lines

Please note that Eric is in the process of mainlining the SPI driver for i.MX6, atm.

If you use my latest patch set, you can place the environment in SPI-NOR as well by commenting out CONFIG_ENV_IS_IN_MMC, and un-commenting ..._IN_SPI_FLASH in include/configs/mx6qsabrelite.h.

Regards,

Eric

#8 lore raw

[U-Boot] mx6qsabrelite U-Boot from SPI-NOR

Hi Eric,

Quoted 40 lines · Eric Nelson

Hi Wolfgang,

Quoted 14 lines · Dirk Behme

Dear Wolfgang,

Quoted 2 lines · Wolfgang Grandegger

Where can I find the "SPI_to_SD_loader.bin" image?

Unfortunately, at the moment you have to ask your Freescale contact for this. We
ping Freescale since weeks for this. Last time I heard about this Freescale
planned to release this binary under a BSD license. They are still "working
through the licensing details", though :(

Quoted 5 lines
Quoted 2 lines

What means early
version of SabreLite boards?

Most probably Eric will be able to better answer this.

At this point **all** versions of SabreLite are configured to boot to SPI NOR through the fuses.

As Dirk mentioned, we've had some conversations about booting to SD card, but once the fuse is blown, it's blown.

Quoted 10 lines

What I understood: Up to now, the boards boot from SPI NOR by default. There was
some _discussion_ to change this to SD boot. Most probably "early version" was
written while this discussion under the impression that later boards might
switch to SD boot. To my understanding the result of this discussion was that
this change would be difficult, though.

Quoted 7 lines

We've discussed, but currently have no plans to support a physical switch to control this decision. This would involve using the "Internal" boot mode position of SW1 and then pulling a **bunch** of pins high or low to control the boot flow.

Note that all of the pins are available on connector J12 (BOOT/EIM), so it might be done with a small daughter-board.

OK, I see.

Quoted 31 lines
Quoted 5 lines
Quoted 2 lines

How can I select boot from SD-Card on newer versions?

To my understanding there are no "newer versions" yet.

Right.

Quoted 7 lines
Quoted 2 lines

And will the u-boot.imx image also boot when loaded to the SPI-NOR fash?

Hmm, I'm not sure about this as I haven't tested this.

Eric?

Yes. If you program u-boot.imx to offset 0x400, it will boot.

I just did so as shown below.

I started by placing SW1 in the 01 position (boot to USB), and used imx_usb to dowload u-boot.imx:

MX6QSABRELITE U-Boot > dhcp 10800000 192.168.0.112:u-boot.imx fec_open:Speed=100
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 29.6.1.24
Using FEC device
TFTP from server 192.168.0.112; our IP address is 29.6.1.24;
sending through gateway 29.6.1.1

Quoted 6 lines
    Filename 'u-boot.imx'.
    Load address: 0x10800000
    Loading: #########################################
    done
    Bytes transferred = 207112 (32908 hex)
    MX6QSABRELITE U-Boot > sf write 0x10800000 0x400 $filesize

But above you used the network to load u-boot.imx. With imx_usb you loaded and booted an image via USB first, I assume.

Quoted 20 lines

<switched SW1 to BOOT mode 0 and hit the reset button here>

U-Boot 2011.12-00048-g5c30101 (Jan 19 2012 - 17:14:32)
CPU: Freescale i.MX61 family rev1.0 at 792 MHz
Reset cause: POR
Board: MX6Q-Sabre Lite
DRAM: 1 GiB
WARNING: Caches not enabled
MMC: FSL_SDHC: 0, FSL_SDHC: 1
MMC init failed
Using default environment

In: serial
Out: serial
Err: serial
Net: FEC
Hit any key to stop autoboot: 0
MX6QSABRELITE U-Boot >
MX6QSABRELITE U-Boot >

Quoted 8 lines

The imx_usb utility is available here:
http://boundarydevices.com/git?p=imx_usb_loader.git

It requires libusb-1.0-0-dev to build, but has few other dependencies.

Usage is simple: hand it the file you want to execute. It will look at the header to find out where to place the image.
~/imx_usb_loader$ sudo sudo ./imx_usb u-boot.imx

Nice fallback in case the bootloader does not start. I will give it a try a.s.a.p. We actually plan to use a BDI[23]000 for that purpose.

Quoted 7 lines
Quoted 2 lines

Please note that Eric is in the process of mainlining the SPI driver for i.MX6, atm.

If you use my latest patch set, you can place the environment in SPI-NOR as well by commenting out CONFIG_ENV_IS_IN_MMC, and un-commenting ..._IN_SPI_FLASH
in include/configs/mx6qsabrelite.h.

OK, that's already an excellent starting point.

Thanks.

Wolfgang.

#9 lore raw

[U-Boot] mx6qsabrelite U-Boot from SPI-NOR

Quoted 25 lines · Wolfgang Grandegger
Quoted 8 lines · Eric Nelson

Yes. If you program u-boot.imx to offset 0x400, it will boot.

I just did so as shown below.

I started by placing SW1 in the 01 position (boot to USB), and used imx_usb to dowload u-boot.imx:

Quoted 14 lines
     MX6QSABRELITE U-Boot>  dhcp 10800000 192.168.0.112:u-boot.imx
     fec_open:Speed=100
     BOOTP broadcast 1
     BOOTP broadcast 2
     DHCP client bound to address 29.6.1.24
     Using FEC device
     TFTP from server 192.168.0.112; our IP address is 29.6.1.24;
     sending  through gateway 29.6.1.1
     Filename 'u-boot.imx'.
     Load address: 0x10800000
     Loading: #########################################
     done
     Bytes transferred = 207112 (32908 hex)
     MX6QSABRELITE U-Boot>  sf write 0x10800000 0x400 $filesize
Quoted 3 lines

But above you used the network to load u-boot.imx. With imx_usb you loaded and booted an image via USB first, I assume.

Yeah. USB to execute U-Boot, then Ethernet to get a pristine image into RAM for programming.

I'd love to get USB support for MX6Q into U-Boot, but that's another project...