iMX6 Sabre SD BSP update with MfgTool2

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

iMX6 Sabre SD BSP update with MfgTool2

Jump to solution
1,911 Views
bobelec
Contributor III

Hello,

I want to update the linux version on my iMX6 SoloX Sabre SD evaluation board to be able to use the HDMI output through the HDMI card MCIMXHDMICARD

I'm sing MfgTool2 to boot the board, I have the original SD-Card (with Linux 3.10.53-1.1.0) in slot SD4. The SD-card is not write-protected.

I changed the switch SW11.5 to '0' so the board won't boot from the SD3 flash but from USB.

MfgTool boots successfully from USB but the SD-card is not written, I have the following error:

U-Boot 2014.04 (Mar 21 2015 - 00:01:15)

CPU:   Freescale i.MX6SX rev1.2 at 792 MHz

CPU:   Temperature 49 C, calibration data: 0x5954f769

Reset cause: POR

Board: MX6SX 17x17 ARM2

I2C:   ready

DRAM:  1 GiB

MAX7322 Not found

MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2

MMC: no card present

MMC init failed

Using default environment

In:    serial

Out:   serial

Err:   serial

Found PFUZE100! deviceid 0x11, revid 0x21

MMC: no card present

mmc1(part 0) is current device

Net:   FEC0

Boot from USB for mfgtools

Use default environment for mfgtools

Run bootcmd_mfg: run mfgtool_args;bootz ${loadaddr} ${initrd_addr} ${fdt_addr};

Hit any key to stop autoboot:  0

Kernel image @ 0x80800000 [ 0x000000 - 0x53d910 ]

## Loading init Ramdisk from Legacy Image at 83800000 ...

   Image Name:   fsl-image-mfgtool-initramfs-imx6

   Image Type:   ARM Linux RAMDisk Image (gzip compressed)

   Data Size:    18729449 Bytes = 17.9 MiB

   Load Address: 00000000

   Entry Point:  00000000

   Verifying Checksum ... OK

## Flattened Device Tree blob at 83000000

   Booting using the fdt blob at 0x83000000

   Using Device Tree in place at 83000000, end 8300edbf

switch to ldo_bypass mode!

Starting kernel ...

Booting Linux on physical CPU 0x0

Linux version 3.14.28-1.0.0_ga-mfgtool+g91cf351 (jenkins@scmbl1) (gcc version 4.9.1 (GCC) ) #1 SMP PREEMPT Fri Mar 20 22:38:57 CST 2015

CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c5387d

CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache

Machine model: Freescale i.MX6 SoloX 17x17 ARM2 Board

cma: CMA: reserved 320 MiB at ac000000

Memory policy: Data cache writealloc

PERCPU: Embedded 8 pages/cpu @ab738000 s8896 r8192 d15680 u32768

Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 260096

Kernel command line: console=ttymxc0,115200 rdinit=/linuxrc g_mass_storage.stall=0 g_mass_storage.removable=1 g_mass_storage.idVendor=0x066F g_mass_storage.idProduct=0x37FF g_mass_storage.iSerialNumber=

PID hash table entries: 4096 (order: 2, 16384 bytes)

[...]

mmc1: no vqmmc regulator found

mmc1: no vmmc regulator found

mmc1: SDHCI controller on 2194000.usdhc [2194000.usdhc] using ADMA

mmc2: no vqmmc regulator found

mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA

mmc3: no vqmmc regulator found

mmc3: no vmmc regulator found

mmc3: SDHCI controller on 219c000.usdhc [219c000.usdhc] using ADMA

[...]

mmc1: no vqmmc regulator found

UTP: Waiting for device to appear

UTP: file/device node /dev/utp already exists

cpu_id is 0

g_mass_storage gadget: high-speed config #1: Linux File-Backed Storage

UTP: received command 'send'

UTP: sending Success to kernel for command send.

UTP: received command '$ tar xf $FILE '

UTP: executing "tar xf $FILE "

UTP: sending Success to kernel for command $ tar xf $FILE .

utp_poll: pass returned.

UTP: received command '$ sh mksdcard.sh /dev/mmcblk0'

UTP: executing "sh mksdcard.sh /dev/mmcblk0"

1+0 records in

1+0 records out

1024 bytes (1.0 kB) copied, 0.000405333 s, 2.5 MB/s

sfdisk: Warning: /dev/mmcblk0 is not a block device

sfdisk: Disk /dev/mmcblk0: cannot get geometry

[...]

mmc1: no vqmmc regulator found

Disk /dev/mmcblk0: 0 cylinders, 255 heads, 63 sectors/track

sfdisk:  /dev/mmcblk0: unrecognized partition table type

Old situation:

sfdisk: No partitions found

sfdisk: Warning: given size (503) exceeds max allowable size (0)

New situation:

Units: 1MiB = 1024*1024 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start   End    MiB    #blocks   Id  System

/dev/mmcblk0p1         7+   509-   503-    514080    c  W95 FAT32 (LBA)

/dev/mmcblk0p2       596+   596-     0          0   83  Linux

/dev/mmcblk0p3         0      -      0          0    0  Empty

/dev/mmcblk0p4         0      -      0          0    0  Empty

sfdisk: Warning: partition 2 has size 0 but is not marked Empty

sfdisk: Warning: partition 1 extends past end of disk

Successfully wrote the new partition table

sfdisk: If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)

to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1

(See fdisk(8).)

UTP: sending Success to kernel for command $ sh mksdcard.sh /dev/mmcblk0.

utp_poll: pass returned.

UTP: received command 'send'

UTP: sending Success to kernel for command send.

UTP: received command '$ dd if=/dev/zero of=/dev/mmcblk0 bs=1k seek=384 conv=fsync count=129'

UTP: executing "dd if=/dev/zero of=/dev/mmcblk0 bs=1k seek=384 conv=fsync count=129"

129+0 records in

129+0 records out

132096 bytes (132 kB) copied, 0.001343 s, 98.4 MB/s

UTP: sending Success to kernel for command $ dd if=/dev/zero of=/dev/mmcblk0 bs=1k seek=384 conv=fsync count=129.

utp_poll: pass returned.

UTP: received command '$ dd if=$FILE of=/dev/mmcblk0 bs=1k seek=1 conv=fsync'

UTP: executing "dd if=$FILE of=/dev/mmcblk0 bs=1k seek=1 conv=fsync"

271+0 records in

271+0 records out

277504 bytes (278 kB) copied, 0.00345967 s, 80.2 MB/s

UTP: sending Success to kernel for command $ dd if=$FILE of=/dev/mmcblk0 bs=1k seek=1 conv=fsync.

utp_poll: pass returned.

UTP: received command '$ mkfs.vfat /dev/mmcblk0p1'

UTP: executing "mkfs.vfat /dev/mmcblk0p1"

mkfs.vfat 2.11 (12 Mar 2005)

/dev/mmcblk0p1: No such file or directory

UTP: sending Non-success to kernel for command $ mkfs.vfat /dev/mmcblk0p1.

utp_poll: exit with status 256

Thanks to tell me what I'm doing wrong.

Boris.

Labels (1)
0 Kudos
1 Solution
1,000 Views
BiyongSUN
NXP Employee
NXP Employee

Please double click mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs and try

View solution in original post

0 Kudos
5 Replies
1,001 Views
BiyongSUN
NXP Employee
NXP Employee

Please double click mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs and try

0 Kudos
1,000 Views
bobelec
Contributor III

Thank you Biyong, i'm now a step further: the SD4 flash was successfully programmed and I could boot on kernel 3.14.28-1.0.0

Then I changed the U-boot configuration according to MCIMX28LCD on i.MX 6SoloX SABRE board

but I have the following error when booting:

Booting from mmc ...

reading imx6sx-sdb-lcdif1.dtb

** Unable to read file imx6sx-sdb-lcdif1.dtb **

and kernel won't start.

Maybe I didn't put the correct image for my imx6SX board when I double-clicked on mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs

Do you know where I can find a correct image including imx6sx-sdb-lcdif1.dtb ?

0 Kudos
1,000 Views
BiyongSUN
NXP Employee
NXP Employee

In the new kernel 3.10 and later. different board is using a same kernel with different  dtb.

0 Kudos
1,000 Views
bobelec
Contributor III

OK, I copied the .dtb file manually on the SD card and it worked. Do you know where I can find a documentation on these dtb files, I would like to change the resolution of the display. Thanks for your help.

0 Kudos
1,000 Views
BiyongSUN
NXP Employee
NXP Employee

please find the binding guide in the kernel_imx/Documentation/devicetree/bindings/video

for freescale ldb

kernel_imx/Documentation/devicetree/bindings/video/fsl,ldb.txt

linux common display timing is

kernel_imx/Documentation/devicetree/bindings/video/display-timing.txt

0 Kudos