u-boot/board/freescale/mx6sabreauto
Fabio Estevam 3f0a1042bb mx6sabreauto: Make Ethernet functional again
Since commit ce412b79e7 ("drivers: net: phy: atheros: add separate
config for AR8031") Ethernet does not work on mx6sabreauto.

This commit correctly assigns ar8031_config() as the configuration
function for AR8031 in the same way as done in the Linux kernel.

However, on mx6sabreauto design we need some additional configurations,
such as enabling the 125 MHz AR8031 output and setting the TX clock
delay that need to be done in the board file.

This is the equivalent fix from commit 4b6035da48 ("mx6sabresd: Make
Ethernet functional again").

Reported-by: Miquel RAYNAL <miquel.raynal@free-electrons.com>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
2017-07-13 15:05:49 +02:00
..
Kconfig mx6sabreauto: Update to SPL only mode 2017-07-12 09:44:22 +02:00
MAINTAINERS mx6sabreauto: Update to SPL only mode 2017-07-12 09:44:22 +02:00
Makefile mx6sabreauto: Update to SPL only mode 2017-07-12 09:44:22 +02:00
mx6sabreauto.c mx6sabreauto: Make Ethernet functional again 2017-07-13 15:05:49 +02:00
README mx6sabreauto: Add Falcon mode support 2017-07-12 10:28:19 +02:00

How to use and build U-Boot on mx6sabreauto
-------------------------------------------

mx6sabreauto_defconfig target supports mx6q/mx6dl/mx6qp sabreauto variants.

In order to build it:

$ make mx6sabreauto_defconfig

$ make

This will generate the SPL and u-boot.img binaries.

- Flash the SPL binary into the SD card:

$ sudo dd if=SPL of=/dev/sdX bs=1K seek=1 && sync

- Flash the u-boot.img binary into the SD card:

$ sudo dd if=u-boot.img of=/dev/sdX bs=1K seek=69 && sync

Booting via Falcon mode
-----------------------

Write in mx6sabreauto_defconfig the following define below:

CONFIG_SPL_OS_BOOT=y

In order to build it:

$ make mx6sabreauto_defconfig

$ make

This will generate the SPL image called SPL and the u-boot.img.

- Flash the SPL image into the SD card:

$ sudo dd if=SPL of=/dev/sdb bs=1K seek=1 && sync

- Flash the u-boot.img image into the SD card:

$ sudo dd if=u-boot.img of=/dev/sdb bs=1K seek=69 && sync

Create a FAT16 boot partition to store uImage and the dtb file, then copy the files there:

$ sudo cp uImage /media/boot

$ sudo cp imx6dl-sabreauto.dtb /media/boot

Create a partition for root file system and extract it there:

$ sudo tar xvf rootfs.tar.gz -C /media/root

The SD card must have enough space for raw "args" and "kernel".
To configure Falcon mode for the first time, on U-Boot do the following commands:

- Load dtb file from boot partition:

# load mmc 0:1 ${fdt_addr} imx6dl-sabreauto.dtb

- Load kernel image from boot partition:

# load mmc 0:1 ${loadaddr} uImage

- Write kernel at 2MB offset:

# mmc write ${loadaddr} 0x1000 0x4000

- Setup kernel bootargs:

# setenv bootargs "console=ttymxc3,115200 root=/dev/mmcblk0p1 rootfstype=ext4 rootwait quiet rw"

- Prepare args:

# spl export fdt ${loadaddr} - ${fdt_addr}

- Write args 1MB data (0x800 sectors) to 1MB offset (0x800 sectors)

# mmc write 18000000 0x800 0x800

- Restart the board and then SPL binary will launch the kernel directly.