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.
Solved! Go to Solution.
Please double click mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs and try
Please double click mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs and try
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 ?
In the new kernel 3.10 and later. different board is using a same kernel with different dtb.
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.
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