Welcome! Log In Create A New Profile

Advanced

Does Kernel 3.17 (FDT) and 3.16 (non-FDT) package support MMC?

Posted by A_Mando 
thrown solid days into this; thought it's worth asking.

My Pogo Plug Mobile (single USB) came with a third party image which successfully replaced through uart and tftp, etc to have:

- the latest UBoot and env.
- Debian-3.17.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2 boots off of the USB drive just fine

Debian 3.17 won't boot with the same image in the MMC drive. I get a ramfs saying it can't mount root/ find the rootfs (LABEL route) or /dec/mmc.... the trouble is it doesn't seem to be mounted at all even though mmc is initialized (twice) and the kernel is being read from it. (looking at /dev/ and no mension of mmc or kwsdio 0)

If I put a copy of ALARM on the same MMC drive, it boots fine and no panic there (except that eth0 is down. I hop on one leg when it comes to debian let alone figuring my way through Arch and systemd.

So to summarize, the same uBoot + env settings boots all USB and only Arch MMC but not Debian 3.17 MMC.

Suggestions are very welcome.
Re: Does Kernel 3.17 (FDT) and 3.16 (non-FDT) package support MMC?
January 21, 2015 11:36PM
A_Mando Wrote:
-------------------------------------------------------
> thrown solid days into this; thought it's worth
> asking.
>
> My Pogo Plug Mobile (single USB) came with a third
> party image which successfully replaced through
> uart and tftp, etc to have:
>
> - the latest UBoot and env.
> -
> Debian-3.17.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
> boots off of the USB drive just fine
>
> Debian 3.17 won't boot with the same image in the
> MMC drive. I get a ramfs saying it can't mount
> root/ find the rootfs (LABEL route) or
> /dec/mmc.... the trouble is it doesn't seem to be
> mounted at all even though mmc is initialized
> (twice) and the kernel is being read from it.
> (looking at /dev/ and no mension of mmc or kwsdio
> 0)
>
> If I put a copy of ALARM on the same MMC drive, it
> boots fine and no panic there (except that eth0 is
> down. I hop on one leg when it comes to debian
> let alone figuring my way through Arch and
> systemd.
>
> So to summarize, the same uBoot + env settings
> boots all USB and only Arch MMC but not Debian
> 3.17 MMC.
>
> Suggestions are very welcome.

It you have boot log when it failed, please post here. Also listing of u-boot envs. If you can't, then boot into Arch and get output of:

fw_printenv


Also, in serial console if you have it:

version

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 01/22/2015 12:06AM by bodhi.
Thanks. Here's the boot log with only sd card present:


U-Boot 2014.07-tld-1 (Jul 18 2014 - 00:59:45)
Pogoplug V4

SoC:   Kirkwood 88F6192_A1
DRAM:  128 MiB
WARNING: Caches not enabled
NAND:  128 MiB
MMC:   kwsdio: 0
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
Hit any key to stop autoboot:  3  2  1  0 
(Re)start USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
** Bad device usb 0 **
** Bad device usb 0 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!

MMC rescan: current device # 0 initialized OK
2833841 bytes read in 996 ms (2.7 MiB/s)
6114335 bytes read in 1593 ms (3.7 MiB/s)
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-3.17.0-kirkwood-tld-1
   Created:      2015-01-19  19:51:01 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2833777 Bytes = 2.7 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 01100000 ...
   Image Name:   initramfs-3.17.0-kirkwood-tld-1
   Created:      2015-01-19  19:52:30 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    6114271 Bytes = 5.8 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
Using machid 0xf78 from environment

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.17.0-kirkwood-tld-1 (root@tldDebian) (gcc version 4.6.3 (Debian 4.6.3-14) ) #4 PREEMPT Wed Oct 22 00:55:17 PDT 2014
[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=0005397f
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] Machine model: Seagate GoFlex Net
[    0.000000] Memory policy: Data cache writeback
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p1 rootdelay=10 rootfstype=ext3 mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)
[    0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[    0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Memory: 115484K/131072K available (5553K kernel code, 358K rwdata, 1892K rodata, 262K init, 302K bss, 15588K reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xffe00000   (2048 kB)
[    0.000000]     vmalloc : 0xc8800000 - 0xff000000   ( 872 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)
[    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)
[    0.000000]       .text : 0xc0008000 - 0xc074d83c   (7447 kB)
[    0.000000]       .init : 0xc074e000 - 0xc078f90c   ( 263 kB)
[    0.000000]       .data : 0xc0790000 - 0xc07e998c   ( 359 kB)
[    0.000000]        .bss : 0xc07e998c - 0xc08352dc   ( 303 kB)
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000024] sched_clock: 32 bits at 166MHz, resolution 6ns, wraps every 25769803770ns
[    0.000545] Console: colour dummy device 80x30
[    0.000588] Calibrating delay loop... 795.44 BogoMIPS (lpj=3977216)
[    0.090147] pid_max: default: 32768 minimum: 301
[    0.090326] Security Framework initialized
[    0.090432] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.090464] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.091554] Initializing cgroup subsys devices
[    0.091605] Initializing cgroup subsys freezer
[    0.091642] Initializing cgroup subsys net_cls
[    0.091674] Initializing cgroup subsys blkio
[    0.091818] CPU: Testing write buffer coherency: ok
[    0.092494] Setting up static identity map for 0x542138 - 0x542190
[    0.092940] mvebu-soc-id: MVEBU SoC ID=0x6281, Rev=0x3
[    0.096513] devtmpfs: initialized
[    0.100268] prandom: seed boundary self test passed
[    0.106266] prandom: 100 self tests passed
[    0.106297] pinctrl core: initialized pinctrl subsystem
[    0.107070] regulator-dummy: no parameters
[    0.114095] NET: Registered protocol family 16
[    0.114823] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.116556] cpuidle: using governor ladder
[    0.116595] cpuidle: using governor menu
[    0.117218] Feroceon L2: Enabling L2
[    0.117282] Feroceon L2: Cache support initialised.
[    0.117875] [Firmware Info]: /ocp@f1000000/ethernet-controller@72000/ethernet0-port@0: local-mac-address is not set
[    0.124347] No ATAGs?
[    0.162472] vgaarb: loaded
[    0.163058] usbcore: registered new interface driver usbfs
[    0.163179] usbcore: registered new interface driver hub
[    0.163361] usbcore: registered new device driver usb
[    0.165004] Switched to clocksource orion_clocksource
[    0.221259] NET: Registered protocol family 2
[    0.222667] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.222704] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.222735] TCP: Hash tables configured (established 1024 bind 1024)
[    0.222843] TCP: reno registered
[    0.222863] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.222895] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.223193] NET: Registered protocol family 1
[    0.223677] RPC: Registered named UNIX socket transport module.
[    0.223695] RPC: Registered udp transport module.
[    0.223706] RPC: Registered tcp transport module.
[    0.223717] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.224153] Unpacking initramfs...
[    0.977381] Freeing initrd memory: 5964K (c1101000 - c16d4000)
[    0.977586] NetWinder Floating Point Emulator V0.97 (double precision)
[    0.979517] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.979567] Initialise system trusted keyring
[    0.979769] audit: initializing netlink subsys (disabled)
[    0.979852] audit: type=2000 audit(0.970:1): initialized
[    0.981030] zpool: loaded
[    0.981055] zbud: loaded
[    0.981465] VFS: Disk quotas dquot_6.5.2
[    0.981540] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.982327] NFS: Registering the id_resolver key type
[    0.982396] Key type id_resolver registered
[    0.982410] Key type id_legacy registered
[    0.982451] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.982475] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    0.982730] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    0.983197] msgmni has been set to 237
[    0.983427] Key type big_key registered
[    0.987013] alg: No test for stdrng (krng)
[    0.987180] bounce: pool size: 64 pages
[    0.987270] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    0.987295] io scheduler noop registered
[    0.987314] io scheduler deadline registered
[    0.987367] io scheduler cfq registered (default)
[    0.989250] kirkwood-pinctrl f1010000.pin-controller: registered pinctrl driver
[    0.990180] irq: Cannot allocate irq_descs @ IRQ33, assuming pre-allocated
[    0.990769] irq: Cannot allocate irq_descs @ IRQ65, assuming pre-allocated
[    0.991557] mv_xor f1060800.xor: Marvell shared XOR driver
[    1.025119] mv_xor f1060800.xor: Marvell XOR: ( xor cpy )
[    1.065102] mv_xor f1060800.xor: Marvell XOR: ( xor cpy )
[    1.065378] mv_xor f1060900.xor: Marvell shared XOR driver
[    1.105099] mv_xor f1060900.xor: Marvell XOR: ( xor cpy )
[    1.145097] mv_xor f1060900.xor: Marvell XOR: ( xor cpy )
[    1.145751] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    1.147744] console [ttyS0] disabled
[    1.147833] f1012000.serial: ttyS0 at MMIO 0xf1012000 (irq = 26, base_baud = 10416666) is a 16550A
[    1.737263] console [ttyS0] enabled
[    1.742951] nand: device found, Manufacturer ID: 0xad, Chip ID: 0xf1
[    1.749332] nand: Hynix H27U1G8F2BTR-BC
[    1.753156] nand: 128MiB, SLC, page size: 2048, OOB size: 64
[    1.758825] Scanning device for bad blocks
[    1.854751] Bad eraseblock 816 at 0x000006600000
[    1.882670] 5 cmdlinepart partitions found on MTD device orion_nand
[    1.888939] Creating 5 MTD partitions on "orion_nand":
[    1.894064] 0x000000000000-0x000000200000 : "u-boot"
[    1.899641] 0x000000200000-0x000000500000 : "uImage"
[    1.905169] 0x000000500000-0x000000800000 : "uImage2"
[    1.910731] 0x000000800000-0x000001000000 : "failsafe"
[    1.916443] 0x000001000000-0x000008000000 : "root"
[    1.923259] libphy: Fixed MDIO Bus: probed
[    1.927843] libphy: orion_mdio_bus: probed
[    1.942200] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[    3.023266] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:25:31:05:da:ea
[    3.032333] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    3.038883] ehci-pci: EHCI PCI platform driver
[    3.043408] ehci-orion: EHCI orion driver
[    3.047672] orion-ehci f1050000.ehci: EHCI Host Controller
[    3.053174] orion-ehci f1050000.ehci: new USB bus registered, assigned bus number 1
[    3.061045] orion-ehci f1050000.ehci: irq 29, io mem 0xf1050000
[    3.085057] orion-ehci f1050000.ehci: USB 2.0 started, EHCI 1.00
[    3.091306] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    3.098105] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    3.105325] usb usb1: Product: EHCI Host Controller
[    3.110183] usb usb1: Manufacturer: Linux 3.17.0-kirkwood-tld-1 ehci_hcd
[    3.116884] usb usb1: SerialNumber: f1050000.ehci
[    3.122643] hub 1-0:1.0: USB hub found
[    3.126497] hub 1-0:1.0: 1 port detected
[    3.131699] mousedev: PS/2 mouse device common for all mice
[    4.145244] rtc-mv f1010300.rtc: internal RTC not ticking
[    4.150941] i2c /dev entries driver
[    4.157912] hidraw: raw HID events driver (C) Jiri Kosina
[    4.163833] drop_monitor: Initializing network drop monitor service
[    4.170465] TCP: cubic registered
[    4.173785] NET: Registered protocol family 17
[    4.178445] Key type dns_resolver registered
[    4.183706] Loading compiled-in X.509 certificates
[    4.188571] registered taskstats version 1
[    4.194103] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[    4.203479] Freeing unused kernel memory: 260K (c074e000 - c078f000)
Loading, please wait...
[    4.316289] udevd[55]: starting version 175
[    4.823237] SCSI subsystem initialized
[    4.923512] sata_mv f1080000.sata: slots 32 ports 2
[    4.969038] scsi host0: sata_mv
[    4.985162] scsi host1: sata_mv
[    4.988802] ata1: SATA max UDMA/133 irq 32
[    4.992891] ata2: SATA max UDMA/133 irq 32
[    5.385072] ata1: SATA link down (SStatus 0 SControl F300)
[    5.755066] ata2: SATA link down (SStatus 0 SControl F300)
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Waiting for root file system ... done.
Gave up waiting for root device.  Common problems:
 - Boot args (cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
   - Check root= (did the system wait for the right device?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT!  /dev/mmcblk0p1 does not exist.  Dropping to a shell!
modprobe: module i8042 not found in modules.dep
[   26.256956] uhci_hcd: USB Universal Host Controller Interface driver
[   26.277845] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[   26.299860] usbcore: registered new interface driver usbhid
[   26.305619] usbhid: USB HID core driver


BusyBox v1.20.2 (Debian 1:1.20.0-7) built-in shell (ash)
Enter 'help' for a list of built-in commands.

/bin/sh: can't access tty; job control turned off
(initramfs) [  224.015057] random: nonblocking pool is initialized

The samething happens with LABEL=rootfs for mmc_root instead of /dev/mmcblk0p1

Pogov4> printenv
arcNumber=3960
baudrate=115200
bootcmd=run bootcmd_usb; run bootcmd_mmc; run bootcmd_sata; reset
bootcmd_mmc=run mmc_init; run set_bootargs_mmc; run mmc_boot
bootcmd_sata=run sata_init; run set_bootargs_sata; run sata_boot;
bootcmd_usb=run usb_init; run set_bootargs_usb; run usb_boot;
bootdelay=3
console=ttyS0,115200
device=0:1
ethact=egiga0
ethaddr=00:25:31:05:da:ea
if_netconsole=ping $serverip
ipaddr=192.168.2.201
led_error=orange blinking
led_exit=green off
led_init=green blinking
machid=F78
mainlineLinux=yes
mmc_boot=mw 0x800000 0 1; run mmc_load_uimage; if run mmc_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
mmc_init=mmc rescan
mmc_load_uimage=ext2load mmc $device 0x800000 /boot/uImage
mmc_load_uinitrd=ext2load mmc $device 0x1100000 /boot/uInitrd
mmc_root=/dev/mmcblk0p1
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)
partition=nand0,2
preboot_nc=run if_netconsole start_netconsole
rootdelay=10
rootfstype=ext3
sata_boot=mw 0x800000 0 1; run sata_load_uimage; if run sata_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
sata_init=ide reset
sata_load_uimage=ext2load ide $device 0x800000 /boot/uImage
sata_load_uinitrd=ext2load ide $device 0x1100000 /boot/uInitrd
sata_root=/dev/sda1
serverip=192.168.0.220
set_bootargs_mmc=setenv bootargs console=$console root=$mmc_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
set_bootargs_sata=setenv bootargs console=$console root=$sata_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
set_bootargs_usb=setenv bootargs console=$console root=$usb_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
stderr=serial
stdin=serial
stdout=serial
usb_boot=mw 0x800000 0 1; run usb_load_uimage; if run usb_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
usb_init=usb start
usb_load_uimage=ext2load usb $device 0x800000 /boot/uImage
usb_load_uinitrd=ext2load usb $device 0x1100000 /boot/uInitrd
usb_root=/dev/sda1
usb_rootfstype=ext3


I unpacked the Debian 3.16 image and it worked just fine with the same uBoot and env. For my purposes the older package is fine, though it'd be nice to know what I was doing wrong.

-Armand
Re: Does Kernel 3.17 (FDT) and 3.16 (non-FDT) package support MMC?
January 22, 2015 10:06AM
Probably a wrong step taken somewhere during 3.17 rootfs creation.

With only SD card (with 3.17 kernel) plugged in, power up, interrupt console at count down, excute commands:

printenv
mmc rescan
mmc part


Pls post the ouput here!

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 2 time(s). Last edit at 01/22/2015 11:01AM by bodhi.
Thanks Bodhi,

I used a 3.16 image and I'm up and running. For what I wanted to do (replace my broken airport express airplay) 3.16 is doing just fine. There seemed to be something funny with gethostname() in the dhcp client config and once I hardcoded to the name, it's been great.

I'll post the outputs you asked once I get to hacking up the second pogoplug.

Thanks,

-Armand
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: