the kernel can't patition the mmc flash correctly

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

the kernel can't patition the mmc flash correctly

4,173 Views
ruiguifang
Contributor III

There are log message,  is there anyone get any suggestions,thx 

U-Boot 2009.08 (May 01 2012 - 05:53:45)

CPU:   Freescale i.MX 6 family 0.0V at 792 MHz

Temperature:   28 C, calibration data 0x5674b47d

mx6q pll1: 792MHz

mx6q pll2: 528MHz

mx6q pll3: 480MHz

mx6q pll8: 50MHz

ipg clock     : 66000000Hz

ipg per clock : 66000000Hz

uart clock    : 80000000Hz

cspi clock    : 60000000Hz

ahb clock     : 132000000Hz

axi clock   : 264000000Hz

emi_slow clock: 29333333Hz

ddr clock     : 528000000Hz

usdhc1 clock  : 200000000Hz

usdhc2 clock  : 200000000Hz

usdhc3 clock  : 200000000Hz

usdhc4 clock  : 200000000Hz

nfc clock     : 66666666Hz

Board: MX6Q-SABRELITE:[ POR]

Boot Device: NAND

I2C:   ready

DRAM:   1 GB

MMC:   FSL_USDHC: 0,FSL_USDHC: 1

Using default environment

In:    serial

Out:   serial

Err:   serial

Net:   got MAC address from IIM: 00:00:00:00:00:00

FEC0 [PRIME]

Hit any key to stop autoboot:  0

## Booting kernel from Legacy Image at 10800000 ...

   Image Name:   Linux-3.0.35-ts-armv7l

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    3332560 Bytes =  3.2 MB

   Load Address: 10008000

   Entry Point:  10008000

   Verifying Checksum ... OK

## Loading init Ramdisk from Legacy Image at 10c00000 ...

   Image Name:   uboot initramfs rootfs

   Image Type:   ARM Linux RAMDisk Image (gzip compressed)

   Data Size:    4737382 Bytes =  4.5 MB

   Load Address: 00000000

   Entry Point:  00000000

   Verifying Checksum ... OK

   Loading Kernel Image ... OK

OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

Linux version 3.0.35-ts-armv7l (root@localhost.localdomain) (gcc version 4.6.3 (Timesys 20130107) ) #21 SMP PREEMPT Tue Sep 10 11:39:13 CST 2013

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

CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache

Machine: Freescale i.MX 6Quad Sabre-Lite Board

Memory policy: ECC disabled, Data cache writealloc

CPU identified as i.MX6Q, silicon rev 1.2

PERCPU: Embedded 7 pages/cpu @8c008000 s5184 r8192 d15296 u32768

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

Kernel command line: console=ttymxc1,115200 rdinit=/linuxrc

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

Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)

Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)

Memory: 1024MB = 1024MB total

Memory: 1028224k/1028224k available, 20352k reserved, 0K highmem

Virtual kernel memory layout:

    vector  : 0xffff0000 - 0xffff1000   (   4 kB)

    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)

    DMA     : 0xf4600000 - 0xffe00000   ( 184 MB)

    vmalloc : 0xc0800000 - 0xf2000000   ( 792 MB)

    lowmem  : 0x80000000 - 0xc0000000   (1024 MB)

    pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)

    modules : 0x7f000000 - 0x7fe00000   (  14 MB)

      .init : 0x80008000 - 0x8003c000   ( 208 kB)

      .text : 0x8003c000 - 0x805fb490   (5886 kB)

      .data : 0x805fc000 - 0x80645600   ( 294 kB)

       .bss : 0x80645624 - 0x8066d8d4   ( 161 kB)

SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1

Preemptible hierarchical RCU implementation.

NR_IRQS:496

MXC GPIO hardware

sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms

MXC_Early serial console at MMIO 0x21e8000 (options '115200')

bootconsole [ttymxc1] enabled

Console: colour dummy device 80x30

Calibrating delay loop... 1581.05 BogoMIPS (lpj=7905280)

pid_max: default: 32768 minimum: 301

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available

CPU1: Booted secondary processor

CPU2: Booted secondary processor

CPU3: Booted secondary processor

Brought up 4 CPUs

SMP: Total of 4 processors activated (6324.22 BogoMIPS).

print_constraints: dummy:

NET: Registered protocol family 16

print_constraints: vddpu: 725 <--> 1300 mV at 1150 mV fast normal

print_constraints: vddcore: 725 <--> 1300 mV at 1150 mV fast normal

print_constraints: vddsoc: 725 <--> 1300 mV at 1200 mV fast normal

print_constraints: vdd2p5: 2000 <--> 2775 mV at 2400 mV fast normal

print_constraints: vdd1p1: 800 <--> 1400 mV at 1100 mV fast normal

print_constraints: vdd3p0: 2800 <--> 3150 mV at 3000 mV fast normal

hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.

hw-breakpoint: 1 breakpoint(s) reserved for watchpoint single-step.

hw-breakpoint: maximum watchpoint size is 4 bytes.

L310 cache controller enabled

l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL 0x02070000, Cache size: 1048576 B

IMX usb wakeup probe

bio: create slab <bio-0> at 0

print_constraints: vmmc: 3300 mV

SCSI subsystem initialized

spi_imx imx6q-ecspi.0: probed

usbcore: registered new interface driver usbfs

usbcore: registered new interface driver hub

usbcore: registered new device driver usb

imx-ipuv3 imx-ipuv3.0: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)

imx-ipuv3 imx-ipuv3.1: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)

Advanced Linux Sound Architecture Driver Version 1.0.24.

Bluetooth: Core ver 2.16

NET: Registered protocol family 31

Bluetooth: HCI device and connection manager initialized

Bluetooth: HCI socket layer initialized

Bluetooth: L2CAP socket layer initialized

Bluetooth: SCO socket layer initialized

------------[ cut here ]------------

WARNING: at net/wireless/reg.c:387 regulatory_init+0x80/0x120()

db.txt is empty, you should update it...

Modules linked in:

[<80047600>] (unwind_backtrace+0x0/0xf8) from [<80072768>] (warn_slowpath_common+0x4c/0x64)

[<80072768>] (warn_slowpath_common+0x4c/0x64) from [<80072814>] (warn_slowpath_fmt+0x30/0x40)

[<80072814>] (warn_slowpath_fmt+0x30/0x40) from [<80029f78>] (regulatory_init+0x80/0x120)

[<80029f78>] (regulatory_init+0x80/0x120) from [<80029e88>] (cfg80211_init+0x58/0xc8)

[<80029e88>] (cfg80211_init+0x58/0xc8) from [<8003c4ac>] (do_one_initcall+0x34/0x174)

[<8003c4ac>] (do_one_initcall+0x34/0x174) from [<800089e4>] (kernel_init+0x98/0x13c)

[<800089e4>] (kernel_init+0x98/0x13c) from [<80042998>] (kernel_thread_exit+0x0/0x8)

---[ end trace da227214a82491b7 ]---

cfg80211: Calling CRDA to update world regulatory domain

i2c-core: driver [max17135] using legacy suspend method

i2c-core: driver [max17135] using legacy resume method

Switching to clocksource mxc_timer1

Clockevents: could not switch to one-shot mode:

Clockevents: could not switch to one-shot mode:

Clockevents: could not switch to one-shot mode:

Clockevents: could not switch to one-shot mode: dummy_timer is not functional.

dummy_timer is not functional.

dummy_timer is not functional.

Could not switch to high resolution mode on CPU 3

Could not switch to high resolution mode on CPU 1

Could not switch to high resolution mode on CPU 2

dummy_timer is not functional.

Could not switch to high resolution mode on CPU 0

NET: Registered protocol family 2

IP route cache hash table entries: 32768 (order: 5, 131072 bytes)

TCP established hash table entries: 131072 (order: 8, 1048576 bytes)

TCP bind hash table entries: 65536 (order: 7, 786432 bytes)

TCP: Hash tables configured (established 131072 bind 65536)

TCP reno registered

UDP hash table entries: 512 (order: 2, 16384 bytes)

UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)

NET: Registered protocol family 1

RPC: Registered named UNIX socket transport module.

RPC: Registered udp transport module.

RPC: Registered tcp transport module.

RPC: Registered tcp NFSv4.1 backchannel transport module.

Unpacking initramfs...

Freeing initrd memory: 4624K

Static Power Management for Freescale i.MX6

wait mode is enabled for i.MX6

cpaddr = c0880000 suspend_iram_base=c08f6000

PM driver module loaded

i.MXC CPU frequency driver

JFFS2 version 2.2. (NAND) 漏 2001-2006 Red Hat, Inc.

msgmni has been set to 2017

cryptodev: driver loaded.

io scheduler noop registered

io scheduler deadline registered

io scheduler cfq registered (default)

mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver ldb

_regulator_get: get() with no identifier

imx-ipuv3 imx-ipuv3.1: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)

Console: switching to colour frame buffer device 128x48

mxc_sdc_fb mxc_sdc_fb.1: register mxc display driver lcd

mxc_sdc_fb mxc_sdc_fb.2: register mxc display driver ldb

mxc_sdc_fb mxc_sdc_fb.3: register mxc display driver ldb

mxc_sdc_fb mxc_sdc_fb.3: ipu1-di1 already in use

mxc_sdc_fb: probe of mxc_sdc_fb.3 failed with error -16

imx-sdma imx-sdma: loaded firmware 1.1

imx-sdma imx-sdma: initialized

Serial: IMX driver

imx-uart.0: ttymxc0 at MMIO劍勀WBCbCS3驜{.⒀宓釐at MMIO 0x21e8000 (irq = 59) is a IMX

console [ttymxc1] enabled, bootconsole disabled

loop: module loaded

m25p80 spi0.0: sst25vf016b (2048 Kbytes)

Creating 2 MTD partitions on "m25p80":

0x000000000000-0x000000100000 : "bootloader"

0x000000100000-0x000000200000 : "kernel"

vcan: Virtual CAN interface driver

FEC Ethernet Driver

fec_enet_mii_bus: probed

Initializing USB Mass Storage driver...

usbcore: registered new interface driver usb-storage

USB Mass Storage support registered.

ARC USBOTG Device Controller driver (1 August 2005)

add wake up source irq 75

g_file_storage gadget: controller 'fsl-usb2-udc' not recognized

check_parameters:UTP settings are in place now, overriding defaults

g_file_storage gadget: No serial-number string provided!

g_file_storage gadget: File-backed Storage Gadget, version: 1 September 2010

g_file_storage gadget: Number of LUNs=1

fsl-usb2-udc: bind to driver g_file_storage

mousedev: PS/2 mouse device common for all mice

egalax_ts 2-0004: egalax_ts: failed to read firmware version

egalax_ts: probe of 2-0004 failed with error -5

snvs_rtc snvs_rtc.0: rtc core: registered snvs_rtc as rtc0

i2c /dev entries driver

Linux video capture interface: v2.00

mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video16

mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video17

mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video18

mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video19

mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video20

imx2-wdt imx2-wdt.0: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=1)

Bluetooth: Virtual HCI driver ver 1.3

Bluetooth: Generic Bluetooth USB driver ver 0.6

usbcore: registered new interface driver btusb

sdhci: Secure Digital Host Controller Interface driver

sdhci: Copyright(c) Pierre Ossman

mmc0: no vmmc regulator found

mmc0: SDHCI controller on platform [sdhci-esdhc-imx.1] using PIO

mmc1: SDHCI controller on platform [sdhci-esdhc-imx.2] using PIO

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

mxc_vdoa mxc_vdoa: i.MX Video Data Order Adapter(VDOA) driver probed

VPU initialized

mxc_asrc registered

usbcore: registered new interface driver usbhid

usbhid: USB HID core driver

Cirrus Logic CS42888 ALSA SoC Codec Driver

i2c-core: driver [cs42888] using legacy suspend method

i2c-core: driver [cs42888] using legacy resume method

imx_3stack asoc driver

ALSA device list:

  No soundcards found.

TCP cubic registered

NET: Registered protocol family 17

can: controller area network core (rev 20090105 abi 8)

NET: Registered protocol family 29

can: raw protocol (rev 20090105)

can: broadcast manager protocol (rev 20090105 t)

Bluetooth: RFCOMM TTY layer initialized

Bluetooth: RFCOMM socket layer initialized

Bluetooth: RFCOMM ver 1.11

Bluetooth: BNEP (Ethernet Emulation) ver 1.3

Bluetooth: BNEP filters: protocol multicast

Bluetooth: HIDP (Human Interface Emulation) ver 1.2

lib80211: common routines for IEEE802.11 drivers

VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4

Bus freq driver module loaded

Bus freq driver Enabled

mxc_dvfs_core_probe

DVFS driver module loaded

regulator_init_complete: vddpu: incomplete constraints, leaving on

snvs_rtc snvs_rtc.0: setting system clock to 1970-01-01 00:00:00 UTC (0)

Freeing init memory: 208K

Starting UTP

ln: /etc/mtab: File exists

disable turn off display

Starting the hotplug events dispatcher udevd

udevd (1960): /proc/1960/oom_adj is deprecated, please use /proc/1960/oom_score_adj instead.

Synthesizing initial hotplug events

g_file_storage gadget: high speed config #1

uuc 0.4 [built May  1 2012 02:47:36]

UTP: Waiting for device to appear

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

cpu_id is 0

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/mmcblk1'

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

1+0 records in

1+0 records out

1024 bytes (1.0KB) copied, 0.000116 seconds, 8.4MB/s

Warning: /dev/mmcblk1 is not a block device

Disk /dev/mmcblk1: cannot get geometry

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

sfdisk: ERROR: sector 0 does not have an msdos signature

/dev/mmcblk1: unrecognized partition table type

Old situation:

No partitions found

New situation:

Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start   End    MiB    #blocks   Id  System

/dev/mmcblk1p1         7+     7-     0          0   83  Linux

/dev/mmcblk1p2         0      -      0          0    0  Empty

/dev/mmcblk1p3         0      -      0          0    0  Empty

/dev/mmcblk1p4         0      -      0          0    0  Empty

Warning: partition 1 has size 0 but is not marked Empty

Warning: no primary partition is marked bootable (active)

This does not matter for LILO, but the DOS MBR will not boot this disk.

Successfully wrote the new partition table

Re-reading the partition table ...

BLKRRPART: Inappropriate ioctl for device

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).)

mmc0: Timeout waiting for hardware interrupt.

UTP: sending Success to kernel for command $ sh mksdcard.sh /dev/utp_poll: pass returned.

mmcblk1.

UTP: received command '$ echo Update Complete!'

UTP: executing "echo Update Complete!"

Update Complete!

UTP: sending Success to kernel for command $ echo Update Complete!.

utp_poll: pass returned.

mmc0: Timeout waiting for hardware interrupt.

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

mmc0: Timeout waiting for hardware interrupt.

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

no such SD host controller index 1

mmc0: Timeout waiting for hardware interrupt.

mmc0: Timeout waiting for hardware interrupt.

Labels (1)
Tags (3)
0 Kudos
Reply
5 Replies

1,804 Views
raymondwang
Senior Contributor I

Please check by following steps:

1.SDHC port registration sequence.

   Register your mmc flash port as first one (mmc0),For example,in sabresd design:

/* Move sd4 to first because sd4 connect to emmc.

    Mfgtools want emmc is mmcblk0 and other sd card is mmcblk1.

  */

imx6q_add_sdhci_usdhc_imx(3, &mx6q_sabresd_sd4_data); //this will be mmc0

  imx6q_add_sdhci_usdhc_imx(2, &mx6q_sabresd_sd3_data);//mmc1

  imx6q_add_sdhci_usdhc_imx(1, &mx6q_sabresd_sd2_data);//mmc2

2.Be sure that your mmc flash device can be recognized properly.

  If you register your mmc host in expected sequence, there should be new mmc device pop up

  in kernel message like :

<6>mmc0: new high speed MMC card at address 0001

<6>mmcblk0: mmc0:0001 008G92 7.28 GiB

<6>mmcblk0boot0: mmc0:0001 008G92 partition 1 4.00 MiB

<6>mmcblk0boot1: mmc0:0001 008G92 partition 2 4.00 MiB

<6> mmcblk0:

Since I can't see any mmc device message in your kernel init process,I think mmc device not recoginized properly.

3.I don't think /dev/mmcblkX or /dev/mmcblkXp1 is your taken point. Since mmc device is block device.if your linux can

support mmc device partition, linux will create sub block device like /dev/mmcblkXpX. In general linux, this will be done by

udev. In android,this will be done by android init. Note that this is just a node making action,

  Back to FSL partition making script,it can support /dev/mmcblk0 in default. And I don't suggest you change that(mmc init

sequence in step 1).

1,804 Views
GraceH
Senior Contributor II

It seems you miss the command "mknod block,mmcblk1,/dev/mmcblk1,block"

0 Kudos
Reply

1,804 Views
ViktorLinnik
Contributor I

I see that the kernel does not see the card at all:

> Warning: /dev/mmcblk1 is not a block device

Please try to insert some another card. I mean another brand
or another speed for example.

Also please try to format the card on host machine first.
I saw sometimes that the kernel does not see "fresh" card.

0 Kudos
Reply

1,804 Views
LeonardoSandova
Specialist I

I think a '1' is missing, try mmcblk1p1

0 Kudos
Reply

1,804 Views
ruiguifang
Contributor III

I chang the mmc dev from"/dev/mmcblk0" to "/dev/mmcblk1",it doesn't work ,also,I have follow https://community.freescale.com/message/340721#340721  ,it happen to nothing help.it have toke me a week.

regards!

fang

0 Kudos
Reply