How to Create MicroSd Image for IMX28 (Yocto)

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

How to Create MicroSd Image for IMX28 (Yocto)

2,012 Views
peteewg
Contributor III

Hi,

 

We have some custom hardware which has a 4-bit wide MicroSD card instead of an 8-bit wide SD card. I can build an Imx28-EVK image (core-image-lsb-dev) and have it boot up fine on the imx28-evk hardware.

I'm using the 3.12 kernel provided by linux-fslc

 

When I change to our custom hardware I change the .dts file to reflect the 4-bit interface instead,

 

pinctrl-0 = <&mmc0_4bit_pins_a 

  &mmc0_cd_cfg &mmc0_sck_cfg>;

bus-width = <4>;

 

The hardware is connected correctly for this pinout.

 

Now when I power up the card, u-boot loads fine but it hangs at this point:

 

Waiting for root device /dev/mmcblk0p3...

 

Looking at the partitions from my Ubuntu machine, I can see that the rootfs is indeed located at /dev/mmcblk0p3, but it just doesn't seem to be loading.

 

I found this thread, but it doesn't help me  https://community.freescale.com/thread/306904

 

I'm not experienced with embedded linux systems, or yocto, or u-boot command line so if the answer is "all you need to do is modify u-boot" I'm going to need a little more guidance than that. I've attached the output of the serial console on boot if that helps?

 

Edit: I should also say that I'm not ruling out a hardware issue, it could be that everything is hunky dory (dora) and the sd card is browning out, I will investigate this in the meantime.

 

Pete

Original Attachment has been moved to: boot.txt.zip

0 Kudos
Reply
4 Replies

1,199 Views
MarekVasut
Senior Contributor I

This is a Linux question, it's completely unrelated to U-Boot. The problem here is that your SD card is not detected. Either it's due to pinmux change or the voltage to the card is not supplied or such.

0 Kudos
Reply

1,199 Views
peteewg
Contributor III

Well this is embarrassing,

Turns out the card detect line from the microSD was left unconnected, on the premise that it wasn't needed (i.e. a card would always be there otherwise it wouldn't boot).

Although U-Boot and Kernel seem to load without this, when it gets to rootfs it hangs until the line is pulled low.

Is there a way to change .dts file so it doesn't require the card detect? or will I just use my soldering iron?

Pete

0 Kudos
Reply

1,199 Views
YixingKong
Senior Contributor IV

Peter

Had your issue got resolved? If yes, we are going to close the discussion in 3 days. If you still need help, please feel free to reply with an update to this discussion.

Thanks,

Yixing

0 Kudos
Reply

1,199 Views
MarekVasut
Senior Contributor I

Check the 'non-removable' property in the DT, but this was added only to like 3.12 or so ...

0 Kudos
Reply