Kernel panic - not syncing: VFS: Unable to mount root fs

This forum is for users of Microchip MPUs and who are interested in using Linux OS.

Moderator: nferre

avula
Posts: 13
Joined: Wed May 27, 2015 9:22 pm

Kernel panic - not syncing: VFS: Unable to mount root fs

Mon Aug 17, 2015 9:11 pm

Hi,
I used u-boot- 3.7.2 and Linux version 3.6.9, and I'm using the at91sam9m10g45eksd_linux_image_defconfig with following CONFIG_LINUX_KERNEL_ARG_STRING:

default "mem=256M memmap=exactmap memmap=0x08000000@0x20000000 memmap=0x08000000@0x70000000 init=/sbin/init console=ttyS0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait=30 tmt_nand.bch=1" if CONFIG_AT91SAM9M10G45EK && CONFIG_SDCARD

With these boot arguments, I get following error upon boot. Can anyone, please help on this.


“Cannot open root device "mmcblk0p0" or unknown-block(0,0): error -6”

More Information:
Using 4GB micro SD card with two (2 GB for root file system and remaining for BOOT and Image) partitions.
Tried by mounting same SD card it on a PC and verified that the rootfs is in usable state.



Here is the complete boot log:

AT91Bootstrap 3.7.2 (Mon Aug 17 13:54:27 CDT 2015)
SD/MMC: Image: Read file Image.bin to 0x72000000
SD: Card Capacity: Standard
SD: Specification Version 3.0X
try zImage magic: 0x2e332d78 is found
try uImage magic: 0x27051956 is found

Booting uImage ......
Relocating kernel image, dest: 0x70008000, src: 0x72000040
 ...... 0x29b138 bytes data transferred

Starting linux kernel ..., machid: 0x726

Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0
Initializing cgroup subsys cpu
Linux version 3.6.9+ (Linux@tBuild-Linux) (gcc version 4.8.3 20140320 (prerelease) (Sourcery CodeBench Lite 2014.05-29) ) #75 Wed Jul 22 17:21:47 CDT 2015
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Atmel AT91SAM9M10G45-EK
Memory policy: ECC disabled, Data cache writeback
AT91: Detected soc type: at91sam9g45
AT91: Detected soc subtype: Unknown
AT91: sram at 0x300000 of 0x10000 mapped at 0xfef68000
Clocks: CPU 400 MHz, master 133 MHz, main 12.000 MHz
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
Kernel command line: mem=256M memmap=exactmap memmap=0x08000000@0x20000000 memmap=0x08000000@0x70000000 init=/sbin/init console=ttyS0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait=60 tmt_nand.bch=1
PID hash table entries: 1024 (order: 0, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 256MB = 256MB total
Memory: 254372k/254372k available, 7772k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    vmalloc : 0xd0800000 - 0xff000000   ( 744 MB)
    lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .text : 0xc0008000 - 0xc04d5f18   (4920 kB)
      .init : 0xc04d6000 - 0xc050022c   ( 169 kB)
      .data : 0xc0502000 - 0xc05345a0   ( 202 kB)
       .bss : 0xc05345c4 - 0xc055711c   ( 139 kB)
NR_IRQS:16 nr_irqs:16 16
AT91: 160 gpio irqs in 5 banks
sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
Console: colour dummy device 80x30
Calibrating delay loop... 199.06 BogoMIPS (lpj=995328)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
Initializing cgroup subsys debug
Initializing cgroup subsys cpuacct
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x703982b8 - 0x70398310
devtmpfs: initialized
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
AT91: Power Management (with slow clock mode)
AT91: Starting after power-restored wakeup
bio: create slab <bio-0> at 0
at_hdmac at91sam9g45_dma: Atmel AHB DMA Controller ( cpy slave ), 8 channels
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
i2c-gpio i2c-gpio.0: using pins 20 (SDA) and 21 (SCL)
i2c-gpio i2c-gpio.1: using pins 42 (SDA) and 43 (SCL)
Linux video capture interface: v2.00
Advanced Linux Sound Architecture Driver Version 1.0.25.
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource tcb_clksrc
NET: Registered protocol family 2
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP: reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 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.
jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
msgmni has been set to 496
io scheduler noop registered (default)
atmel_lcdfb atmel_lcdfb.0: backlight control is not available
atmel_lcdfb atmel_lcdfb.0: 600KiB frame buffer at 7fa00000 (mapped at d0897000)
fb: Atmel LCDC pixeloff =0 (var->xoffset 0), var->bits_per_pixel=32 var->xres_virtual320
  * programming CLKVAL = 0x00000011
  updated pixclk:     7407 KHz
  * LCDCON2 = 000096c2
  * LCDTIM1 = 01001204
  * LCDTIM2 = 02600043
  * LCDFRMCFG = 27e000ef
fb: Atmel LCDC pixeloff =0 (var->xoffset 0), var->bits_per_pixel=32 var->xres_virtual320
atmel_lcdfb atmel_lcdfb.0: fb0: Atmel LCDC at 0x00500000 (mapped at d092e000), irq 39
at91sam9260-usart.0: ttyS0 at MMIO 0xffffee00 (irq = 17) is a ATMEL_SERIAL
console [ttyS0] enabled
at91sam9260-usart.1: ttyS1 at MMIO 0xfff8c000 (irq = 23) is a ATMEL_SERIAL
at91sam9260-usart.2: ttyS2 at MMIO 0xfff90000 (irq = 24) is a ATMEL_SERIAL
at91sam9260-usart.3: ttyS3 at MMIO 0xfff94000 (irq = 25) is a ATMEL_SERIAL
at91sam9260-usart.4: ttyS4 at MMIO 0xfff98000 (irq = 26) is a ATMEL_SERIAL
brd: module loaded
loop: module loaded
atmel_nand: Use On Flash BBT
atmel_nand atmel_nand: Using dma0chan0 for DMA transfers.
ONFI param page 0 valid
ONFI flash detected
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xaa (Micron MT29F2G08ABBEAHC), page size: 2048, OOB size: 64
Bad block table found at page 131008, version 0x01
Bad block table found at page 130944, version 0x01
Creating 3 MTD partitions on "atmel_nand":
0x000000000000-0x000004000000 : "BOOT"
0x000004000000-0x00000c000000 : "ROOTFS"
0x00000c000000-0x000010000000 : "DATA"
macb macb: (unregistered net_device): invalid hw address, using random
libphy: MACB_mii_bus: probed
macb macb: eth0: Cadence MACB at 0xfffbc000 irq 41 (fe:60:8b:67:38:25)
macb macb: eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=macb-ffffffff:00, irq=149)
usbcore: registered new interface driver qmi_wwan
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
atmel-ehci atmel-ehci: Atmel EHCI UHP HS
atmel-ehci atmel-ehci: new USB bus registered, assigned bus number 1
atmel-ehci atmel-ehci: irq 38, io mem 0x00800000
atmel-ehci atmel-ehci: USB 2.0 started, EHCI 1.00
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: Atmel EHCI UHP HS
usb usb1: Manufacturer: Linux 3.6.9+ ehci_hcd
usb usb1: SerialNumber: atmel-ehci
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
at91_ohci at91_ohci: AT91 OHCI
at91_ohci at91_ohci: new USB bus registered, assigned bus number 2
at91_ohci at91_ohci: irq 38, io mem 0x00700000
usb usb2: New USB device found, idVendor=1d6b, idProduct=0001
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: AT91 OHCI
usb usb2: Manufacturer: Linux 3.6.9+ ohci_hcd
usb usb2: SerialNumber: at91
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
usbcore: registered new interface driver cdc_wdm
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
usbcore: registered new interface driver usbserial_generic
USB Serial support registered for generic
usbserial: USB Serial Driver core
usbcore: registered new interface driver usb_debug
USB Serial support registered for debug
usbcore: registered new interface driver ftdi_sio
USB Serial support registered for FTDI USB Serial Device
ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
usbcore: registered new interface driver qcaux
USB Serial support registered for qcaux
usbcore: registered new interface driver qcserial
USB Serial support registered for Qualcomm USB modem
usbcore: registered new interface driver sierra
USB Serial support registered for Sierra USB modem
mousedev: PS/2 mouse device common for all mice
at91_rtc at91_rtc: rtc core: registered at91_rtc as rtc0
AT91 Real Time Clock driver.
i2c /dev entries driver
soc-camera-pdrv soc-camera-pdrv.1: Probing soc-camera-pdrv.1
usb 2-1: new full-speed USB device number 2 using at91_ohci
ov7690 1-0021: Product ID error fa:fa
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
atmel_ac97c atmel_ac97c.0: Atmel AC97 controller at 0xd0990000, irq = 40
TCP: cubic registered
NET: Registered protocol family 10
sit: IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
lib80211: common routines for IEEE802.11 drivers
at91_rtc at91_rtc: setting system clock to 2007-01-01 00:00:12 UTC (1167609612)
atmel_mci atmel_mci.0: version: 0x410
atmel_mci atmel_mci.0: using dma0chan1 for DMA transfers
usb 2-1: New USB device found, idVendor=0403, idProduct=6001
usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-1: Product: FT232R USB UART
usb 2-1: Manufacturer: FTDI
usb 2-1: SerialNumber: A501DRIQ
ftdi_sio 2-1:1.0: FTDI USB Serial Device converter detected
usb 2-1: Detected FT232RL
usb 2-1: Number of endpoints 2
usb 2-1: Endpoint 1 MaxPacketSize 64
usb 2-1: Endpoint 2 MaxPacketSize 64
usb 2-1: Setting MaxPacketSize 64
atmel_mci atmel_mci.0: Atmel MCI controller at 0xfff80000 irq 27, 1 slots
atmel_mci atmel_mci.1: version: 0x410
atmel_mci atmel_mci.1: using dma0chan2 for DMA transfers
usb 2-1: FTDI USB Serial Device converter now attached to ttyUSB0
atmel_mci atmel_mci.1: Atmel MCI controller at 0xfffd0000 irq 45, 1 slots
ALSA device list:
  #0: Atmel AC97 controller
VFS: Cannot open root device "mmcblk0p0" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
1f00           65536 mtdblock0  (driver?)
1f01          131072 mtdblock1  (driver?)
1f02           65536 mtdblock2  (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[<c000d468>] (unwind_backtrace+0x0/0xe0) from [<c0393bac>] (panic+0x78/0x1bc)
[<c0393bac>] (panic+0x78/0x1bc) from [<c04d6d0c>] (mount_block_root+0x1c8/0x208)
[<c04d6d0c>] (mount_block_root+0x1c8/0x208) from [<c04d6f20>] (mount_root+0xdc/0x104)
[<c04d6f20>] (mount_root+0xdc/0x104) from [<c04d70a0>] (prepare_namespace+0x158/0x1b8)
[<c04d70a0>] (prepare_namespace+0x158/0x1b8) from [<c04d697c>] (kernel_init+0x170/0x1ac)
[<c04d697c>] (kernel_init+0x170/0x1ac) from [<c0009be8>] (kernel_thread_exit+0x0/0x8)

Thanks,
blue_z
Location: USA
Posts: 1549
Joined: Thu Apr 19, 2007 10:15 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Tue Aug 18, 2015 8:38 pm

avula wrote:I used u-boot- 3.7.2 and Linux version 3.6.9, ...
Do you have difficulty distinguishing U-Boot and AT91Bootstrap, or are you still writing sloppy posts?.

I have no idea why the kernel would report about p0 when the p2 is specified in the kernel command line. However I have other suspicions about your system.

The memory report by the kernel looks suspect.
For two disjoint memory banks, instead of what is in your boot log:

Code: Select all

 Memory: 256MB = 256MB total
I would expect to see

Code: Select all

Memory: 128MB 128MB = 256MB total
Several parameters in the kernel command line are suspect.
Note that the command line you claim you used is not identical to what is in the actual boot log.

Code: Select all

mem=256M
is (probably) superfluous. I've seen boards with two memory-banks boot without this parameter.

Code: Select all

memmap=exactmap
is meaningless for ARM, as this is a parameter only for x86. Review the Linux kernel documentation.

Code: Select all

rootwait=60
is syntactically incorrect. The rootwait parameter does not take an argument/assignment. Review the Linux kernel documentation.

As in your other thread, you have omitted salient details.
Have you ever successfully booted a kernel on this (custom?) board with two memory-banks?
Have you tried a simpler boot. e.g. with an initramfs, for the two memory-banks?
Have you tried a SDcard boot with just one memory-bank?
Have you made any corrections for ATAGs generation when using two memory-banks?

Regards
avula
Posts: 13
Joined: Wed May 27, 2015 9:22 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Tue Aug 18, 2015 10:13 pm

Sorry somehow mistakenly I claimed as uboot instead of AT91BootStrap. Thanks for correcting.
I am new to Linux kernel programming, learning…sorry for confusion statements.
Have you ever successfully booted a kernel on this (custom?) board with two memory-banks?
No, when I entered mem=256M as kernel argument, my board shown as 256MB and booted successfully when I gave free or top commands. With this thought my board is working with 256 MB.

Have you tried a SDcard boot with just one memory-bank?
Yes, tested EBI0 and EBI1 banks individually by changing in kernel makefile.boot by changing as follows and working without any issues.

For EBI0 Memory Bank:

Code: Select all

ifeq ($(CONFIG_ARCH_AT91SAM9G45),y)
   zreladdr-y	+= 0x70008000
params_phys-y	:= 0x70000100
initrd_phys-y	:= 0x70410000
else
   zreladdr-y	+= 0x20008000
params_phys-y	:= 0x20000100
initrd_phys-y	:= 0x20410000
endif

For EBI1 Memory Bank:

Code: Select all

ifeq ($(CONFIG_ARCH_AT91SAM9G45),y)
   zreladdr-y	+= 0x20008000
params_phys-y	:= 0x20000100
initrd_phys-y	:= 0x20410000
else
   zreladdr-y	+= 0x70008000
params_phys-y	:= 0x70000100
initrd_phys-y	:= 0x70410000
endif
Have you tried a simpler boot. e.g. with an initramfs, for the two memory-banks?
No, will try it.
Have you made any corrections for ATAGs generation when using two memory-banks?
No, can you please let me know where these changes needs to make.

I just tried with following command arguments:

Code: Select all

Kernel command line: memmap=0x08000000@0x20000000 memmap=0x08000000@0x70000000
 init=/sbin/init console=ttyS0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 tmt_na
nd.bch=1
with these, I am seeing by default kernel booting with

Code: Select all

Kernel command line: memmap=0x08000000@0x20000000 memmap=0x08000000@0x70000000 init=/sbin/init console=ttyS0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 tmt_nand.bch=1
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 64MB = 64MB total
Memory: 59448k/59448k available, 6088k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    vmalloc : 0xc4800000 - 0xff000000   ( 936 MB)
    lowmem  : 0xc0000000 - 0xc4000000   (  64 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .text : 0xc0008000 - 0xc04d5f18   (4920 kB)
      .init : 0xc04d6000 - 0xc050022c   ( 169 kB)
      .data : 0xc0502000 - 0xc05345a0   ( 202 kB)
       .bss : 0xc05345c4 - 0xc055711c   ( 139 kB)

Thanks,
avula
Posts: 13
Joined: Wed May 27, 2015 9:22 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Wed Aug 19, 2015 12:59 am

I am able to make little progress by changing boot args:

Kernel Arguments provided in AT91BootStrap defconfig file:

Code: Select all

Kernel command line: mem=128M@0x20000000 mem=128M@0x70000000 console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootdelay=2 rootwait=1
Changed in kernel Makefile.boot:

Code: Select all

ifeq ($(CONFIG_ARCH_AT91SAM9G45),y)
   zreladdr-y   += 0x20008000
params_phys-y   := 0x20000100
initrd_phys-y   := 0x20410000
else
   zreladdr-y   += 0x70008000
params_phys-y   := 0x70000100
initrd_phys-y   := 0x70410000
endif
With these changes, my board is booting with lower memory bank and higher address memory bank ignoring:

Code: Select all

Ignoring RAM at 70000000-77ffffff (vmalloc region overlap).
Is I am correctly telling to Kernel to use both Memory banks with these boot arguments?

Is there any other changes required in Kernel other than following changes:
http://blog.linuxconsulting.ro/2010/05/ ... -with.html



Here is the Boot Log:

# RomBOOT
ba_offset = 0x19 ...
ba_offset = 0x19 ...
EBI0------------------------------------
AT91C_BASE_DDRSDRC_EBI0: 0xffffe600
AT91C_DDRAM_BASE_ADDR_EBI0: 0x70000000
MPDDR Controller Registers configurations:
Base Address: 0xffffe600
MPDDRC_MDR: 0x16
MPDDRC_READ_DATA_PATH: 0x0
MPDDRC_IO_CALIBR: 0x0
MPDDRC_TPR0: 0x21128226
MPDDRC_TPR1: 0x2c8100e
MPDDRC_TPR2: 0x1072
MPDDRC_RTR: 0x3a5
MPDDRC_CR: 0x1003d

EBI1------------------------------------
AT91C_BASE_DDRSDRC_EBI1: 0xffffe400
AT91C_DDRAM_BASE_ADDR_EBI1: 0x20000000
MPDDR Controller Registers configurations:
Base Address: 0xffffe400
MPDDRC_MDR: 0x16
MPDDRC_READ_DATA_PATH: 0x0
MPDDRC_IO_CALIBR: 0x0
MPDDRC_TPR0: 0x21128226
MPDDRC_TPR1: 0x2c8100e
MPDDRC_TPR2: 0x1072
MPDDRC_RTR: 0x3a5
MPDDRC_CR: 0x1003d


AT91Bootstrap 3.7.2- (Tue Aug 18 17:03:13 CDT 2015)

SD/MMC: Image: Read file Image.bin to 0x22000000
SD: Card Capacity: Standard
SD: Specification Version 3.0X
try zImage magic: 0x16f2818 is found

Booting zImage ......

Starting linux kernel ..., machid: 0x726

Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0
Initializing cgroup subsys cpu
Linux version 3.6.9+ (Linux@Development) (gcc version 4.8.3 20140320 (prerelease) (Sourcery CodeBench Lite 2014.05-29) ) #78 Tue Aug 18 15:32:17 CDT 2015
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Atmel AT91SAM9M10G45-EK
Ignoring RAM at 70000000-77ffffff (vmalloc region overlap).
Memory policy: ECC disabled, Data cache writeback
AT91: Detected soc type: at91sam9g45
AT91: Detected soc subtype: Unknown
AT91: sram at 0x300000 of 0x10000 mapped at 0xfef68000
Clocks: CPU 400 MHz, master 133 MHz, main 12.000 MHz
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
Kernel command line: mem=128M@0x20000000 mem=128M@0x70000000 console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootdelay=2 rootwait=1
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 124424k/124424k available, 6648k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xc8800000 - 0xff000000 ( 872 MB)
lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
modules : 0xbf000000 - 0xc0000000 ( 16 MB)
.text : 0xc0008000 - 0xc04d5f18 (4920 kB)
.init : 0xc04d6000 - 0xc050022c ( 169 kB)
.data : 0xc0502000 - 0xc05345a0 ( 202 kB)
.bss : 0xc05345c4 - 0xc055711c ( 139 kB)
NR_IRQS:16 nr_irqs:16 16
AT91: 160 gpio irqs in 5 banks
sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
Console: colour dummy device 80x30
Calibrating delay loop... 199.06 BogoMIPS (lpj=995328)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
Initializing cgroup subsys debug
Initializing cgroup subsys cpuacct
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x203982b8 - 0x20398310
devtmpfs: initialized
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
AT91: Power Management (with slow clock mode)
AT91: Starting after power-restored wakeup
bio: create slab <bio-0> at 0
at_hdmac at91sam9g45_dma: Atmel AHB DMA Controller ( cpy slave ), 8 channels
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
i2c-gpio i2c-gpio.0: using pins 20 (SDA) and 21 (SCL)
i2c-gpio i2c-gpio.1: using pins 42 (SDA) and 43 (SCL)
Linux video capture interface: v2.00
Advanced Linux Sound Architecture Driver Version 1.0.25.
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource tcb_clksrc
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP: reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 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.
jffs2: version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
msgmni has been set to 243
io scheduler noop registered (default)
atmel_lcdfb atmel_lcdfb.0: backlight control is not available
atmel_lcdfb atmel_lcdfb.0: 600KiB frame buffer at 27a00000 (mapped at c8897000)
fb: Atmel LCDC pixeloff =0 (var->xoffset 0), var->bits_per_pixel=32 var->xres_virtual320
* programming CLKVAL = 0x00000011
updated pixclk: 7407 KHz
* LCDCON2 = 000096c2
* LCDTIM1 = 01001204
* LCDTIM2 = 02600043
* LCDFRMCFG = 27e000ef
fb: Atmel LCDC pixeloff =0 (var->xoffset 0), var->bits_per_pixel=32 var->xres_virtual320
atmel_lcdfb atmel_lcdfb.0: fb0: Atmel LCDC at 0x00500000 (mapped at c892e000), irq 39
at91sam9260-usart.0: ttyS0 at MMIO 0xffffee00 (irq = 17) is a ATMEL_SERIAL
console [ttyS0] enabled
at91sam9260-usart.1: ttyS1 at MMIO 0xfff8c000 (irq = 23) is a ATMEL_SERIAL
at91sam9260-usart.2: ttyS2 at MMIO 0xfff90000 (irq = 24) is a ATMEL_SERIAL
at91sam9260-usart.3: ttyS3 at MMIO 0xfff94000 (irq = 25) is a ATMEL_SERIAL
at91sam9260-usart.4: ttyS4 at MMIO 0xfff98000 (irq = 26) is a ATMEL_SERIAL
brd: module loaded
loop: module loaded
atmel_nand: Use On Flash BBT
atmel_nand atmel_nand: Using dma0chan0 for DMA transfers.
ONFI param page 0 valid
ONFI flash detected
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xaa (Micron MT29F2G08ABBEAHC), page size: 2048, OOB size: 64
Bad block table found at page 131008, version 0x01
Bad block table found at page 130944, version 0x01
Creating 3 MTD partitions on "atmel_nand":
0x000000000000-0x000004000000 : "BOOT"
0x000004000000-0x00000c000000 : "ROOTFS"
0x00000c000000-0x000010000000 : "DATA"
macb macb: (unregistered net_device): invalid hw address, using random
libphy: MACB_mii_bus: probed
macb macb: eth0: Cadence MACB at 0xfffbc000 irq 41 (5a:f4:1f:a0:ae:62)
macb macb: eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=macb-ffffffff:00, irq=149)
usbcore: registered new interface driver qmi_wwan
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
atmel-ehci atmel-ehci: Atmel EHCI UHP HS
atmel-ehci atmel-ehci: new USB bus registered, assigned bus number 1
atmel-ehci atmel-ehci: irq 38, io mem 0x00800000
atmel-ehci atmel-ehci: USB 2.0 started, EHCI 1.00

Thanks,
blue_z
Location: USA
Posts: 1549
Joined: Thu Apr 19, 2007 10:15 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Wed Aug 19, 2015 2:30 am

avula wrote:
Have you ever successfully booted a kernel on this (custom?) board with two memory-banks?
No, when I entered mem=256M as kernel argument, my board shown as 256MB and booted successfully when I gave free or top commands. With this thought my board is working with 256 MB.
Your response makes no sense, since it contradicts itself.
First you respond with a "No" to my question.
Then you contradict that with the claim that the board has booted successfully with two memory-banks, but mention no details such as what rootfs.
It is not a trick or difficult question!
avula wrote:No, can you please let me know where these changes needs to make.
As I previously posted in your other thread, AT91Bootstrap only supports and uses one memory bank.
So besides HW initialization of the second memory controller, your boot configuration (ATAGs instead of Device Tree, and AT91Bootstrap instead of U-Boot) also requires additional AT91Bootstrap edits.
You need to add conditional code for the specific situation of SoC is SAM9G45 and two memory banks (e.g. memory size > 128MB), then two correct ATAG_MEM entries need to be generated. Review procedure setup_boot_params() in module driver/load_kernel.c.

You should study the old version of Booting ARM Linux by Vincent Sanders, which describes the ATAGs.
avula wrote:I am able to make little progress by changing boot args:

Kernel Arguments provided in AT91BootStrap defconfig file:

Code: Select all

Kernel command line: mem=128M@0x20000000 mem=128M@0x70000000 console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootdelay=2 rootwait=1

Code: Select all

rootdelay=2 rootwait=1
If you reviewed the kernel documentation, you would know not to use incorrect parameters.

avula wrote:Is I am correctly telling to Kernel to use both Memory banks with these boot arguments?
Although that is similar to what I have used and what I've seen others have used, the kernel is reporting that you have 128MB, not 256MB, of memory.
avula wrote:Is there any other changes required in Kernel other than following changes:
The changes for correct ATAGs should be made in AT91Bootstrap, although I have no idea what happens when there's a discrepancy with the kernel command line and/or the ATAG_MEM has incorrect information (i.e. 256MB in one bank that can only address 128MB).
You also need to be consistent as to where the ATAGs are stored with respect to the kernel image (e.g. they should all be in the same memory bank, preferably the bank with the lowest base physical memory address).

Regards
avula
Posts: 13
Joined: Wed May 27, 2015 9:22 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Wed Aug 19, 2015 11:25 pm

Thank you very much for your kind information.
With your directions, I just added code ATAG_MEM entries for both banks in setup_boot_params(). For making sure, prited these entries in load_kernel() function call by using dbg_very_loud(" ") to the boot log.

ATAG_NONE, ATAG_MEM, ATAG_MEM, ATAG_CMDLINE are stored in 0x20000100.

With these changes still I am able to read 128 MB. Here is the boot log.

Along with AT91Bootloader, do I need to do any changes in Kernel input command line reading area?
Thank you a lot for your kind support.


Code: Select all

Boot Log:

RomBOOT
 ba_offset = 0x19 ...
 ba_offset = 0x19 ...

EBI0------------------------------------
AT91C_BASE_DDRSDRC_EBI0: 0xffffe600
AT91C_DDRAM_BASE_ADDR_EBI0: 0x70000000
MPDDR Controller Registers configurations:
Base Address: 0xffffe600
MPDDRC_MDR: 0x16
MPDDRC_READ_DATA_PATH: 0x0
MPDDRC_IO_CALIBR: 0x0
MPDDRC_TPR0: 0x21128226
MPDDRC_TPR1: 0x2c8100e
MPDDRC_TPR2: 0x1072
MPDDRC_RTR: 0x3a5
MPDDRC_CR: 0x1003d

EBI1------------------------------------
AT91C_BASE_DDRSDRC_EBI1: 0xffffe400
AT91C_DDRAM_BASE_ADDR_EBI1: 0x20000000
MPDDR Controller Registers configurations:
Base Address: 0xffffe400
MPDDRC_MDR: 0x16
MPDDRC_READ_DATA_PATH: 0x0
MPDDRC_IO_CALIBR: 0x0
MPDDRC_TPR0: 0x21128226
MPDDRC_TPR1: 0x2c8100e
MPDDRC_TPR2: 0x1072
MPDDRC_RTR: 0x3a5
MPDDRC_CR: 0x1003d


AT91Bootstrap 3.7.2 (Wed Aug 19 15:51:26 CDT 2015)

SD/MMC: Image: Read file Image.bin to 0x22000000
SD: Card Capacity: Standard
SD: Specification Version 3.0X
try zImage magic: 0x16f2818 is found

Booting zImage ......
coreparam->header.tag=0x54410001,coreparam->header.size=0x5
memparam->header.tag=0x54410002,memparam->header.size=0x4
memparam->start=0x20000000,memparam->size=0x8000000
memparam1->header.tag=0x54410002,memparam1->header.size=0x4
memparam1->start=0x70000000,memparam1->size=0x8000000
cmdparam->header.size=0x1d, cmdparam->cmdline=mem=128M@0x20000000 mem=128M@0x70000000 console=ttyS0,115200 root=/dev/mmcblk0p2


Starting linux kernel ..., machid: 0x726

Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0
Initializing cgroup subsys cpu
Linux version 3.6.9+ (Linuc@development) (gcc version 4.8.3 20140320 (prerelease) (Sourcery CodeBench Lite 2014.05-29) ) #78 Tue Aug 18 15:32:17 CDT 2015
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Atmel AT91SAM9M10G45-EK
[color=#FF0000]Ignoring RAM at 70000000-77ffffff (vmalloc region overlap).[/color]
Memory policy: ECC disabled, Data cache writeback
AT91: Detected soc type: at91sam9g45
AT91: Detected soc subtype: Unknown
AT91: sram at 0x300000 of 0x10000 mapped at 0xfef68000
Clocks: CPU 400 MHz, master 133 MHz, main 12.000 MHz
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
Kernel command line: mem=128M@0x20000000 mem=128M@0x70000000 console=ttyS0,115200 root=/dev/mmcblk0p2
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[color=#BF0040]Memory: 128MB = 128MB total
Memory: 124424k/124424k available, 6648k reserved, 0K highmem[/color]
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    vmalloc : 0xc8800000 - 0xff000000   ( 872 MB)
    lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .text : 0xc0008000 - 0xc04d5f18   (4920 kB)
      .init : 0xc04d6000 - 0xc050022c   ( 169 kB)
      .data : 0xc0502000 - 0xc05345a0   ( 202 kB)
       .bss : 0xc05345c4 - 0xc055711c   ( 139 kB)
NR_IRQS:16 nr_irqs:16 16
AT91: 160 gpio irqs in 5 banks
sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
Console: colour dummy device 80x30
Calibrating delay loop... 199.06 BogoMIPS (lpj=995328)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
Initializing cgroup subsys debug
Initializing cgroup subsys cpuacct
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x203982b8 - 0x20398310
devtmpfs: initialized
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
AT91: Power Management (with slow clock mode)
AT91: Starting after power-restored wakeup
bio: create slab <bio-0> at 0
at_hdmac at91sam9g45_dma: Atmel AHB DMA Controller ( cpy slave ), 8 channels
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
i2c-gpio i2c-gpio.0: using pins 20 (SDA) and 21 (SCL)
i2c-gpio i2c-gpio.1: using pins 42 (SDA) and 43 (SCL)
Linux video capture interface: v2.00
Advanced Linux Sound Architecture Driver Version 1.0.25.
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource tcb_clksrc
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP: reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 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.
jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
msgmni has been set to 243
io scheduler noop registered (default)
atmel_lcdfb atmel_lcdfb.0: backlight control is not available
atmel_lcdfb atmel_lcdfb.0: 600KiB frame buffer at 27a00000 (mapped at c8897000)
fb: Atmel LCDC pixeloff =0 (var->xoffset 0), var->bits_per_pixel=32 var->xres_virtual320
  * programming CLKVAL = 0x00000011
  updated pixclk:     7407 KHz
  * LCDCON2 = 000096c2
  * LCDTIM1 = 01001204
  * LCDTIM2 = 02600043
  * LCDFRMCFG = 27e000ef
fb: Atmel LCDC pixeloff =0 (var->xoffset 0), var->bits_per_pixel=32 var->xres_virtual320
atmel_lcdfb atmel_lcdfb.0: fb0: Atmel LCDC at 0x00500000 (mapped at c892e000), irq 39
at91sam9260-usart.0: ttyS0 at MMIO 0xffffee00 (irq = 17) is a ATMEL_SERIAL
console [ttyS0] enabled
at91sam9260-usart.1: ttyS1 at MMIO 0xfff8c000 (irq = 23) is a ATMEL_SERIAL
at91sam9260-usart.2: ttyS2 at MMIO 0xfff90000 (irq = 24) is a ATMEL_SERIAL
at91sam9260-usart.3: ttyS3 at MMIO 0xfff94000 (irq = 25) is a ATMEL_SERIAL
at91sam9260-usart.4: ttyS4 at MMIO 0xfff98000 (irq = 26) is a ATMEL_SERIAL
brd: module loaded
loop: module loaded
atmel_nand: Use On Flash BBT
atmel_nand atmel_nand: Using dma0chan0 for DMA transfers.
ONFI param page 0 valid
ONFI flash detected
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xaa (Micron MT29F2G08ABBEAHC), page size: 2048, OOB size: 64
Bad block table found at page 131008, version 0x01
Bad block table found at page 130944, version 0x01
Creating 3 MTD partitions on "atmel_nand":
0x000000000000-0x000004000000 : "BOOT"
0x000004000000-0x00000c000000 : "ROOTFS"
0x00000c000000-0x000010000000 : "DATA"
macb macb: (unregistered net_device): invalid hw address, using random
libphy: MACB_mii_bus: probed
macb macb: eth0: Cadence MACB at 0xfffbc000 irq 41 (be:63:de:2e:6f:9f)
macb macb: eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=macb-ffffffff:00, irq=149)
usbcore: registered new interface driver qmi_wwan
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
atmel-ehci atmel-ehci: Atmel EHCI UHP HS
Thanks,
blue_z
Location: USA
Posts: 1549
Joined: Thu Apr 19, 2007 10:15 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Thu Aug 20, 2015 1:57 am

I'm still waiting for a sensible answer regarding any successful boot on this (custom?) board with two memory-banks.
And why to these recent boot logs end abruptly?

Regards
avula
Posts: 13
Joined: Wed May 27, 2015 9:22 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Thu Aug 20, 2015 5:50 am

Board booting successfully after changing kernel arguments as you suggested, but with 128 MB only not with
Memory: 128MB 128 MB = 256MB total

About boot logs end, my bad. Will make sure next time onwards.

Thanks once again for your help on this.

Thanks,
Jammy
Posts: 1
Joined: Thu Aug 20, 2015 5:54 am

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Thu Aug 20, 2015 7:09 pm

Here is the Latest Boot Log:

RomBOOT
ba_offset = 0x19 ...
ba_offset = 0x19 ...
EBI0------------------------------------
AT91C_BASE_DDRSDRC_EBI0: 0xffffe600
AT91C_DDRAM_BASE_ADDR_EBI0: 0x70000000


MPDDR Controller Registers configurations:
Base Address: 0xffffe600
MPDDRC_MDR: 0x16
MPDDRC_READ_DATA_PATH: 0x0
MPDDRC_IO_CALIBR: 0x0
MPDDRC_TPR0: 0x21128226
MPDDRC_TPR1: 0x2c8100e
MPDDRC_TPR2: 0x1072
MPDDRC_RTR: 0x3a5
MPDDRC_CR: 0x1003d
EBI1------------------------------------
AT91C_BASE_DDRSDRC_EBI1: 0xffffe400
AT91C_DDRAM_BASE_ADDR_EBI1: 0x20000000


MPDDR Controller Registers configurations:
Base Address: 0xffffe400
MPDDRC_MDR: 0x16
MPDDRC_READ_DATA_PATH: 0x0
MPDDRC_IO_CALIBR: 0x0
MPDDRC_TPR0: 0x21128226
MPDDRC_TPR1: 0x2c8100e
MPDDRC_TPR2: 0x1072
MPDDRC_RTR: 0x3a5
MPDDRC_CR: 0x1003d



AT91Bootstrap 3.7.2(Thu Aug 20 09:37:45 CDT 2015)


SD/MMC: Image: Read file Image.bin to 0x22000000
SD: Card Capacity: Standard
SD: Specification Version 3.0X
try zImage magic: 0x16f2818 is found

Booting zImage ......
coreparam->header.tag=0x54410001,coreparam->header.size=0x5
memparam->header.tag=0x54410002,memparam->header.size=0x4
memparam->start=0x20000000,memparam->size=0x8000000
memparam1->header.tag=0x54410002,memparam1->header.size=0x4
memparam1->start=0x70000000,memparam1->size=0x8000000
cmdparam->header.size=0x25, cmdparam->cmdline=mem=128M@0x20000000 mem=128M@0x70000000 init=/sbin/init console=ttyS0,115200 root=/dev/mmcblk0p2 rw tmt_nand.bch=1



Starting linux kernel ..., machid: 0x726

Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0
Initializing cgroup subsys cpu
Linux version 3.6.9+ (Linux@Development) (gcc version 4.8.3 20140320 (prerelease) (Sourcery CodeBench Lite 2014.05-29) ) #80 Wed Aug 19 16:48:47 CDT 2015
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Atmel AT91SAM9M10G45-EK
Ignoring RAM at 70000000-77ffffff (vmalloc region overlap).
Memory policy: ECC disabled, Data cache writeback
AT91: Detected soc type: at91sam9g45
AT91: Detected soc subtype: Unknown
AT91: sram at 0x300000 of 0x10000 mapped at 0xfef68000
Clocks: CPU 400 MHz, master 133 MHz, main 12.000 MHz
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
Kernel command line: mem=128M@0x20000000 mem=128M@0x70000000 init=/sbin/init console=ttyS0,115200 root=/dev/mmcblk0p2 rw tmt_nand.bch=1
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 124424k/124424k available, 6648k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xc8800000 - 0xff000000 ( 872 MB)
lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
modules : 0xbf000000 - 0xc0000000 ( 16 MB)
.text : 0xc0008000 - 0xc04d5f18 (4920 kB)
.init : 0xc04d6000 - 0xc050022c ( 169 kB)
.data : 0xc0502000 - 0xc05345a0 ( 202 kB)
.bss : 0xc05345c4 - 0xc055711c ( 139 kB)
NR_IRQS:16 nr_irqs:16 16
AT91: 160 gpio irqs in 5 banks
sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
Console: colour dummy device 80x30
Calibrating delay loop... 199.06 BogoMIPS (lpj=995328)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
Initializing cgroup subsys debug
Initializing cgroup subsys cpuacct
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x203982b8 - 0x20398310
devtmpfs: initialized
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
AT91: Power Management (with slow clock mode)
AT91: Starting after power-restored wakeup
bio: create slab <bio-0> at 0
at_hdmac at91sam9g45_dma: Atmel AHB DMA Controller ( cpy slave ), 8 channels
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
i2c-gpio i2c-gpio.0: using pins 20 (SDA) and 21 (SCL)
i2c-gpio i2c-gpio.1: using pins 42 (SDA) and 43 (SCL)
Linux video capture interface: v2.00
Advanced Linux Sound Architecture Driver Version 1.0.25.
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource tcb_clksrc
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP: reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 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.
jffs2: version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
msgmni has been set to 243
io scheduler noop registered (default)
atmel_lcdfb atmel_lcdfb.0: backlight control is not available
atmel_lcdfb atmel_lcdfb.0: 600KiB frame buffer at 27a00000 (mapped at c8897000)
fb: Atmel LCDC pixeloff =0 (var->xoffset 0), var->bits_per_pixel=32 var->xres_virtual320
* programming CLKVAL = 0x00000011
updated pixclk: 7407 KHz
* LCDCON2 = 000096c2
* LCDTIM1 = 01001204
* LCDTIM2 = 02600043
* LCDFRMCFG = 27e000ef
fb: Atmel LCDC pixeloff =0 (var->xoffset 0), var->bits_per_pixel=32 var->xres_virtual320
atmel_lcdfb atmel_lcdfb.0: fb0: Atmel LCDC at 0x00500000 (mapped at c892e000), irq 39
at91sam9260-usart.0: ttyS0 at MMIO 0xffffee00 (irq = 17) is a ATMEL_SERIAL
console [ttyS0] enabled
at91sam9260-usart.1: ttyS1 at MMIO 0xfff8c000 (irq = 23) is a ATMEL_SERIAL
at91sam9260-usart.2: ttyS2 at MMIO 0xfff90000 (irq = 24) is a ATMEL_SERIAL
at91sam9260-usart.3: ttyS3 at MMIO 0xfff94000 (irq = 25) is a ATMEL_SERIAL
at91sam9260-usart.4: ttyS4 at MMIO 0xfff98000 (irq = 26) is a ATMEL_SERIAL
brd: module loaded
loop: module loaded
atmel_nand: Use On Flash BBT
atmel_nand atmel_nand: Using dma0chan0 for DMA transfers.
ONFI param page 0 valid
ONFI flash detected
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xaa (Micron MT29F2G08ABBEAHC), page size: 2048, OOB size: 64
Bad block table found at page 131008, version 0x01
Bad block table found at page 130944, version 0x01
Creating 3 MTD partitions on "atmel_nand":
0x000000000000-0x000004000000 : "BOOT"
0x000004000000-0x00000c000000 : "ROOTFS"
0x00000c000000-0x000010000000 : "DATA"
macb macb: (unregistered net_device): invalid hw address, using random
libphy: MACB_mii_bus: probed
macb macb: eth0: Cadence MACB at 0xfffbc000 irq 41 (e2:1d:15:21:b0:47)
macb macb: eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=macb-ffffffff:00, irq=149)
usbcore: registered new interface driver qmi_wwan
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
atmel-ehci atmel-ehci: Atmel EHCI UHP HS
atmel-ehci atmel-ehci: new USB bus registered, assigned bus number 1
atmel-ehci atmel-ehci: irq 38, io mem 0x00800000
atmel-ehci atmel-ehci: USB 2.0 started, EHCI 1.00
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: Atmel EHCI UHP HS
usb usb1: Manufacturer: Linux 3.6.9+ ehci_hcd
usb usb1: SerialNumber: atmel-ehci
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
at91_ohci at91_ohci: AT91 OHCI
at91_ohci at91_ohci: new USB bus registered, assigned bus number 2
at91_ohci at91_ohci: irq 38, io mem 0x00700000
usb usb2: New USB device found, idVendor=1d6b, idProduct=0001
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: AT91 OHCI
usb usb2: Manufacturer: Linux 3.6.9+ ohci_hcd
usb usb2: SerialNumber: at91
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
usbcore: registered new interface driver cdc_wdm
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
usbcore: registered new interface driver usbserial_generic
USB Serial support registered for generic
usbserial: USB Serial Driver core
usbcore: registered new interface driver usb_debug
USB Serial support registered for debug
usbcore: registered new interface driver ftdi_sio
USB Serial support registered for FTDI USB Serial Device
ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
usbcore: registered new interface driver qcaux
USB Serial support registered for qcaux
usbcore: registered new interface driver qcserial
USB Serial support registered for Qualcomm USB modem
usbcore: registered new interface driver sierra
USB Serial support registered for Sierra USB modem
mousedev: PS/2 mouse device common for all mice
at91_rtc at91_rtc: rtc core: registered at91_rtc as rtc0
AT91 Real Time Clock driver.
i2c /dev entries driver
soc-camera-pdrv soc-camera-pdrv.1: Probing soc-camera-pdrv.1
usb 2-1: new full-speed USB device number 2 using at91_ohci
ov7690 1-0021: Product ID error fa:fa
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
atmel_ac97c atmel_ac97c.0: Atmel AC97 controller at 0xc8990000, irq = 40
TCP: cubic registered
NET: Registered protocol family 10
sit: IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
lib80211: common routines for IEEE802.11 drivers
at91_rtc at91_rtc: setting system clock to 2007-01-01 00:00:12 UTC (1167609612)
atmel_mci atmel_mci.0: version: 0x410
atmel_mci atmel_mci.0: using dma0chan1 for DMA transfers
usb 2-1: New USB device found, idVendor=0403, idProduct=6001
usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-1: Product: FT232R USB UART
usb 2-1: Manufacturer: FTDI
usb 2-1: SerialNumber: A501DRIQ
ftdi_sio 2-1:1.0: FTDI USB Serial Device converter detected
usb 2-1: Detected FT232RL
usb 2-1: Number of endpoints 2
usb 2-1: Endpoint 1 MaxPacketSize 64
usb 2-1: Endpoint 2 MaxPacketSize 64
usb 2-1: Setting MaxPacketSize 64
atmel_mci atmel_mci.0: Atmel MCI controller at 0xfff80000 irq 27, 1 slots
atmel_mci atmel_mci.1: version: 0x410
atmel_mci atmel_mci.1: using dma0chan2 for DMA transfers
usb 2-1: FTDI USB Serial Device converter now attached to ttyUSB0
atmel_mci atmel_mci.1: Atmel MCI controller at 0xfffd0000 irq 45, 1 slots
ALSA device list:
#0: Atmel AC97 controller
Waiting 2sec before mounting root device...
mmc0: host does not support reading read-only switch. assuming write-enable.
mmc0: new high speed SD card at address b368
mmcblk0: mmc0:b368 N1BW1 1.91 GiB
mmcblk0: p1 p2
mmc1: new high speed SDIO card at address 0001
EXT2-fs (mmcblk0p2): error: couldn't mount because of unsupported optional features (240)
EXT4-fs (mmcblk0p2): couldn't mount as ext3 due to feature incompatibilities
EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
VFS: Mounted root (ext4 filesystem) on device 179:2.
devtmpfs: mounted
Freeing init memory: 168K

Welcome to TMTNG 2013.12.02!

Starting Media Directory...
Started Runtime Directory [ OK ]
Starting Remount API VFS...
Starting File System Check on Root Device...
Started Lock Directory [ OK ]
Starting Journal Service...
Started Journal Service [ OK ]
Starting Setup Virtual Console...
Started Load Kernel Modules [ OK ]
Starting Apply Kernel Variables...
Started Huge Pages File System [ OK ]
Started POSIX Message censored File System [ OK ]
Started FUSE Control File System [ OK ]
Started Set Up Additional Binary Formats [ OK ]
Started Configuration File System [ OK ]
Starting Debug File System...
Started Security File System [ OK ]
Starting udev Kernel Device Manager...
Starting udev Coldplug all Devices...
Started Media Directory [ OK ]
Started File System Check on Root Device [ OK ]
Started Apply Kernel Variables [ OK ]
Started Debug File System [ OK ]
Starting Remount Root FS...
Started Setup Virtual Console [ OK ]
Started Remount API VFS [ OK ]
EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered
Started Remount Root FS [ OK ]
Starting Recreate Volatile Files and Directories...
udevd[544]: starting version 182
Starting Load Random Seed...
Started udev Kernel Device Manager [ OK ]
Started Load Random Seed [ OK ]
Started Recreate Volatile Files and Directories [ OK ]
Starting Set the system time from the RTC...
Started SSH Key Generation [ OK ]
Starting OpenSSH Daemon...
Started OpenSSH Daemon [ OK ]
Starting eth0...
Starting Initialize General Purpose I/O...
Started Initialize General Purpose I/O [ OK ]
Starting Enable Audio Output...
Started Enable Audio Output [ OK ]
Starting Login Service...
Starting Permit User Sessions...
Starting D-Bus System Message Bus...
Started Permit User Sessions [ OK ]
Started Set the system time from the RTC [ OK ]
Started D-Bus System Message Bus [ OK ]
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Started eth0 [ OK ]
Starting wlan0...
Started Login Service [ OK ]
Started udev Coldplug all Devices [ OK ]
Starting Serial Getty on ttyS0...
Started Serial Getty on ttyS0 [ OK ]

# macb macb: eth0: link up (100/Full)
IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
UniFi SDIO Driver: 5.1.0 Apr 30 2014 09:23:29
CSR SME with WEXT support
Split patch support
Kernel 3.6.9
UniFi: Using native Linux MMC driver for SDIO.
sdio bus_id: mmc1:0001:1 - UniFi card 0x1 inserted
SDIO: Skip power on; card is already powered.
unifi1: Initialising UniFi, attempt 1
unifi1: Chip ID 0x07 Function 1 Block Size 512 Name UniFi-4(UF60xx)
unifi1: Chip Version 0x3A22
unifi1: Calling CsrSdioHardReset
unifi1: Falling back to software hard reset
unifi1: Chip ID 0x07 Function 1 Block Size 512 Name UniFi-4(UF60xx)
usb 2-2: new full-speed USB device number 3 using at91_ohci
unifi1: unifi_dl_patch c6d0df28 0100060e
usb 2-2: not running at top speed; connect to a high speed hub
usb 2-2: config 1 has an invalid interface number: 8 but max is 5
usb 2-2: config 1 has an invalid interface number: 10 but max is 5
usb 2-2: config 1 has an invalid interface number: 11 but max is 5
usb 2-2: config 1 has no interface number 1
usb 2-2: config 1 has no interface number 4
usb 2-2: config 1 has no interface number 5
usb 2-2: New USB device found, idVendor=1199, idProduct=68c0
usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-2: Product: MC7354
usb 2-2: Manufacturer: Sierra Wireless, Incorporated
qcserial 2-2:1.0: Qualcomm USB modem converter detected
usb 2-2: Qualcomm USB modem converter now attached to ttyUSB1
qcserial 2-2:1.2: Qualcomm USB modem converter detected
usb 2-2: Qualcomm USB modem converter now attached to ttyUSB2
qcserial 2-2:1.3: Qualcomm USB modem converter detected
usb 2-2: Qualcomm USB modem converter now attached to ttyUSB3
qmi_wwan 2-2:1.8: cdc-wdm0: USB WDM device
qmi_wwan 2-2:1.8: wwan0: register 'qmi_wwan' at usb-at91-2, WWAN/QMI device, 6a:e9:91:7c:5c:d6
unifi1: SDIO block size 64 requires 8 padding chunks
unifi1: UniFi f/w protocol version 9.1 (driver 9.1)
unifi1: Firmware build 1089: 2010-10-05 14:50 cindr03_core_softmac_rom_sdio_gcc 1089 bfsw@eagle@630492
unifi1: 1145811: MAC fault 0022, arg 0006 (x1)
unifi1: Firmware patch 1409
unifi1: unifi1 is wlan0
unifi1: UniFi ready
Failed to start wlan0 [FAILED]
See 'systemctl status wlan0.service' for details.
Starting wwan0...
Starting Display something on the LCD...
Started Display something on the LCD [ OK ]
Failed to start wwan0 [FAILED]
See 'systemctl status wwan0.service' for details.


Thanks,
blue_z
Location: USA
Posts: 1549
Joined: Thu Apr 19, 2007 10:15 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Fri Aug 21, 2015 1:15 am

Truth be told, I have never used Nicu Pavel's patch-set for two memory-banks.
And apparently within 14 months after he wrote that blog entry, the Linux kernel had been revised so that it no longer worked.
Russel King declares that the patch's virtual memory mappings are unworkable in http://archive.arm.linux.org.uk/lurker/ ... f1.en.html:
On Fri, Jul 22, 2011 at 07:06:40PM +0530, P J wrote:
> The memory map (required) is as follows:
> phys => virt
> 0x70000000 => 0xC0000000 (128 MB)
> 0x20000000 => 0xC8000000 (128 MB)

There is no way that the kernel will support this kind of hair-brained
memory layout. This is even more true than it once was since we've moved
to using memblock to manage the physical memory layout in later kernels.

What the kernel will support is using 0x20000000 as the first bank and
0x70000000 as the second bank of memory. I suggest trying with it mapped
that way around, and failing that then using highmem support without
sparse.
So by good fortune I (unknowingly) avoided that mess (that you and PJ experienced), and instead used kernel code from https://github.com/danielgpalmer/linux-picosam9g45 (which does adhere to Russel King's advice):

Code: Select all

/*
 * Sparsemem definitions for pico-SAM9G45
 *
 * The old patch for this had the high block mapped below the low block;
 * Code in other parts (mm.c if I remember correctly) do not like this..
 * The mapping below only works if the kernel is loaded into the lower
 * bank. Check Makefile.boot for how this is achieved.
 *
 * 128MB @ 0x20000000 -> PAGE_OFFSET
 * 128MB @ 0x70000000 -> PAGE_OFFSET + 0x8000000
 */
You should review the code in https://github.com/danielgpalmer/linux- ... h/memory.h.

Regards
avula
Posts: 13
Joined: Wed May 27, 2015 9:22 pm

Re: Kernel panic - not syncing: VFS: Unable to mount root fs

Fri Aug 21, 2015 10:20 pm

Thank you your support. After adding HIGHMEM to my kernel with your suggestion on AT91BootStarp changes, board able to boot with
Memory: 128MB 128MB = 256MB total.

Code: Select all

# cat /proc/iomem

00500000-005008ff : atmel_lcdfb.0
  00500000-005008ff : atmel_lcdfb
00500c00-00500fff : atmel_lcdfb.0
  00500c00-00500fff : atmel_lcdfb
00700000-007fffff : at91_ohci
  00700000-007fffff : ohci_hcd
00800000-008fffff : atmel-ehci
  00800000-008fffff : ehci_hcd
20000000-27ffffff : System RAM
  20008000-204d4ff7 : Kernel code
  20500000-2055807b : Kernel data
40000000-4fffffff : atmel_nand
  40000000-4fffffff : atmel_nand
70000000-77ffffff : System RAM
fff7c000-fff7c0ff : atmel_tcb.0
  fff7c000-fff7c0ff : tcb_clksrc
fff80000-fff83fff : atmel_mci.0
fff8c000-fff8ffff : at91sam9260-usart.1
  fff8c000-fff8ffff : atmel_serial
fff90000-fff93fff : at91sam9260-usart.2
  fff90000-fff93fff : atmel_serial
fff94000-fff97fff : at91sam9260-usart.3
  fff94000-fff97fff : atmel_serial
fff98000-fff9bfff : at91sam9260-usart.4
  fff98000-fff9bfff : atmel_serial
fffa4000-fffa7fff : atmel_spi.0
fffac000-fffaffff : atmel_ac97c.0
fffb4000-fffb7fff : atmel_isi.0
fffbc000-fffbffff : macb
fffcc000-fffcffff : atmel-trng
  fffcc000-fffcffff : atmel-trng
fffd0000-fffd3fff : atmel_mci.1
fffd4000-fffd40ff : atmel_tcb.1
ffffe200-ffffe3ff : atmel_nand
ffffec00-ffffedff : at91sam9g45_dma
  ffffec00-ffffedff : at_hdmac
ffffee00-ffffefff : at91sam9260-usart.0
  ffffee00-ffffefff : atmel_serial
fffffd20-fffffd2f : at91_rtt.0
fffffdb0-fffffeaf : at91_rtc

Thanks,

Return to “Linux”

Who is online

Users browsing this forum: No registered users and 2 guests