Problems with setting up Linux on Marsboard (iMX6)

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

Problems with setting up Linux on Marsboard (iMX6)

Jump to solution
3,345 Views
alex90
Contributor I

Hello,

I am using the Marsboard iMX6Q and want to run the Linux Image from this site: http://www.element14.com/community/docs/DOC-65093?ICID=knode-sabre-space. I use the MFG tool (Version 1.6.2). The flash operation is successful, but Linux does not boot.

By the way, the Android image works fine.

I tried to compile my own Linux image by using the sources, but I only get the u-boot.bin and the kernel image (uImage). I dont know how to create the oneiric.tgz.

The replacement of u-boot.bin and the kernel image has no effect.

It doesn't matter, if I use a SD card or not (in TF slot of the board). I also tried to copy a Linux image file (.img) to a SD card, which was created for the Marsboard - no effect. To copy the .img I did use the dd command under a Linux system.

Does anybody know how to get Linux run on the Marsboard? Is there something special for Linux? (Android works fine)

(Display: HDMI)

Labels (2)
1 Solution
998 Views
alex90
Contributor I

Thank you for your fast answer!

I tried it, but it doesn't work for me.

The good news is, that I fixed the problem. The u-boot parameters for Linux were wrong.

To change them, connect the Marsboard over the debug interface with your PC (Linux: minicom, Windows: Hyperterminal).

The following parameters worked for me:

bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp enable_wait_mode=off

bootcmd_net=dhcp; run bootargs_nfs;bootm

bootargs_mmc0=setenv bootargs ${bootargs} root=/dev/mmcblk0p1 rootwait rw

bootargs_mmc1=setenv bootargs ${bootargs} root=/dev/mmcblk1p1 rootwait rw

bootcmd_mmc0=run bootargs_mmc0;mmc dev 1;mmc read ${loadaddr} 0x800 0x2000;bootm

bootcmd_mmc1=run bootargs_mmc1;mmc dev 1;mmc read ${loadaddr} 0x800 0x2000;bootm

bootcmd=if mmc dev 0; then run bootcmd_mmc1; else run bootcmd_mmc0; fi

clearenv=sf probe 0 && sf erase 0xc0000 0x2000 && echo restored environment to factory default

upgradeu=for disk in 0 1 ; do mmc dev ${disk} ;for fs in fat ext2 ; do ${fs}load mmc ${disk}:1 10008000 /6q_upgrade && source 10008000 ; done ; done

bootfile=_BOOT_FILE_PATH_IN_TFTP_

nfsroot=_ROOTFS_PATH_IN_NFS_

ethact=FEC0

bootargs=console=ttymxc1,115200 video=mxcfb0:dev=hdmi,1280x960M@60,if=RGB24

Remark: Depending on your display, you have to change the resolution under 'bootargs' (1280x960M@60).

View solution in original post

3 Replies
998 Views
justin_jiang
NXP Employee
NXP Employee

would you please try these dd command for u-boot and kernel,

  # u-boot
  sudo dd if=u-boot.bin of=/dev/sdb bs=512 skip=2 seek=2 && sync && sync

  # uImage
  sudo dd if=uImage of=/dev/sdb bs=512 seek=2048 && sync && sync

999 Views
alex90
Contributor I

Thank you for your fast answer!

I tried it, but it doesn't work for me.

The good news is, that I fixed the problem. The u-boot parameters for Linux were wrong.

To change them, connect the Marsboard over the debug interface with your PC (Linux: minicom, Windows: Hyperterminal).

The following parameters worked for me:

bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp enable_wait_mode=off

bootcmd_net=dhcp; run bootargs_nfs;bootm

bootargs_mmc0=setenv bootargs ${bootargs} root=/dev/mmcblk0p1 rootwait rw

bootargs_mmc1=setenv bootargs ${bootargs} root=/dev/mmcblk1p1 rootwait rw

bootcmd_mmc0=run bootargs_mmc0;mmc dev 1;mmc read ${loadaddr} 0x800 0x2000;bootm

bootcmd_mmc1=run bootargs_mmc1;mmc dev 1;mmc read ${loadaddr} 0x800 0x2000;bootm

bootcmd=if mmc dev 0; then run bootcmd_mmc1; else run bootcmd_mmc0; fi

clearenv=sf probe 0 && sf erase 0xc0000 0x2000 && echo restored environment to factory default

upgradeu=for disk in 0 1 ; do mmc dev ${disk} ;for fs in fat ext2 ; do ${fs}load mmc ${disk}:1 10008000 /6q_upgrade && source 10008000 ; done ; done

bootfile=_BOOT_FILE_PATH_IN_TFTP_

nfsroot=_ROOTFS_PATH_IN_NFS_

ethact=FEC0

bootargs=console=ttymxc1,115200 video=mxcfb0:dev=hdmi,1280x960M@60,if=RGB24

Remark: Depending on your display, you have to change the resolution under 'bootargs' (1280x960M@60).

998 Views
fwb
Contributor I

Nice catch. I used the following to mk_mx6_sd

https://community.freescale.com/docs/DOC-93886/version/1

and using OTG(J7) USB what are the boot switch settings? And port for minicom?

# dmesg | tail

[606000.290773] usb 1-2: new high-speed USB device number 32 using ehci-pci

[606000.423602] usb 1-2: New USB device found, idVendor=15a2, idProduct=0054

[606000.423607] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0

[606000.423609] usb 1-2: Product: SE Blank ARIK

[606000.423611] usb 1-2: Manufacturer: Freescale SemiConductor Inc

[606000.425331] hid-generic 0003:15A2:0054.0012: hiddev0,hidraw4: USB HID v1.10 Device [Freescale SemiConductor Inc  SE Blank ARIK] on usb-0000:00:12.2-2/input0

# ll /dev/usb/hiddev0

crw------- 1 root root 180, 0 Jun 17 15:57 /dev/usb/hiddev0

doesn't work

thanks,

Frank

0 Kudos