Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:2
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:6
Форум » starterkit.ru » Embedded Linux
Rootfs на NUC950
Pegase
Добавлено 23.01.2012 13:58
0
Сообщение: 1
Pegase
0

Пункты: 2484
Регистрация: 10.11.2010
Здравствуйте!
Есть плата NUC950. Гружу ядро 2.6.35.4 взятого с китайского форума (официального Linux 2.6.35 BSP не нашел). Не грузиться файловая с SD (файловая рабочая проверено на SK-AT91SAM9xe512). В чем может быть проблема?
Лог загрузки:
Код

nand boot ...

addr 0xA00000, len 13,238,272

No bad block!!

addr 0x8000, len 3,688,672

No bad block!!

Linux version 2.6.35.4 (root@vitaly-F5N) (gcc version 4.2.0 20070413 (prerelease) (CodeSourcery Sourcery G++ Lite 2007q1-10)) #11 PREEMPT Mon Jan 23 11:00:58 EET 2012
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: W90P950EVB
Memory policy: ECC disabled, Data cache writeback
CPU type 0x02900910 is NUC910
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
Kernel command line: root=/dev/mmcblk0p1 rw rootfstype=ext2 rootwait console=ttyS0,115200 mem=32M
PID hash table entries: 128 (order: -3, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 32MB = 32MB total
Memory: 28664k/28664k available, 4104k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
vmalloc : 0xc2800000 - 0xe0000000 ( 472 MB)
lowmem : 0xc0000000 - 0xc2000000 ( 32 MB)
modules : 0xbf000000 - 0xc0000000 ( 16 MB)
.init : 0xc0008000 - 0xc001d000 ( 84 kB)
.text : 0xc001d000 - 0xc0369000 (3376 kB)
.data : 0xc036a000 - 0xc038c860 ( 139 kB)
Hierarchical RCU implementation.
RCU-based detection of stalled CPUs is disabled.
Verbose stalled-CPUs detection is disabled.
NR_IRQS:32
Console: colour dummy device 80x30
Calibrating delay loop... 32.66 BogoMIPS (lpj=163328)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
devtmpfs: initialized
NET: Registered protocol family 16
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource nuc900-timer1
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
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
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
ROMFS MTD (C) 2007 Red Hat, Inc.
msgmni has been set to 55
alg: No test for stdrng (krng)
io scheduler noop registered (default)
Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xb8000000 (irq = 7) is a 16550
console [ttyS0] enabled
brd: module loaded
physmap platform flash device: 00400000 at a0000000
physmap-flash physmap-flash.0: map_probe failed
nuc900-emc nuc900-emc: invalid mac address
usbcore: registered new interface driver rt73usb
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
nuc900-ehci nuc900-ehci: Nuvoton nuc900 EHCI Host Controller
nuc900-ehci nuc900-ehci: new USB bus registered, assigned bus number 1
nuc900-ehci nuc900-ehci: irq 15, io mem 0xb0005000
nuc900-ehci nuc900-ehci: USB 2.0 started, EHCI 0.95
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: Nuvoton nuc900 EHCI Host Controller
usb usb1: Manufacturer: Linux 2.6.35.4 ehci_hcd
usb usb1: SerialNumber: nuc900-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
nuc900-ohci nuc900-ohci: Nuvoton nuc900 ohci Host Controller
nuc900-ohci nuc900-ohci: new USB bus registered, assigned bus number 2
nuc900-ohci nuc900-ohci: irq 15, io mem 0xb0007000
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: Nuvoton nuc900 ohci Host Controller
usb usb2: Manufacturer: Linux 2.6.35.4 ohci_hcd
usb usb2: SerialNumber: nuc900-ohci
hub 1-0:1.0: over-current change on port 1
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
usbcore: registered new interface driver cdc_wdm
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
ep 0
ep 1
ep 2
ep 3
ep 4
ep 5
ep 6
mice: PS/2 mouse device common for all mice
MMC: Setting controller bus width to 1
Added NUC900 SD driver
SD power ON
MMC: Setting controller bus width to 1
rtusb init --->
usbcore: registered new interface driver rt2870
TCP cubic registered
NET: Registered protocol family 17
lib80211: common routines for IEEE802.11 drivers
hub 1-0:1.0: over-current change on port 2
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
Waiting for root device /dev/mmcblk0p1...
MMC: Setting controller bus width to 1
MMC: Setting controller bus width to 1
MMC: Setting controller bus width to 1
MMC: Setting controller bus width to 1
MMC: Setting controller bus width to 1
MMC: Setting controller bus width to 1
MMC: Setting controller bus width to 1
MMC: Setting controller bus width to 1
MMC: Setting controller bus width to 4
mmc0: new SD card at address 0002
mmcblk0: mmc0:0002 00000 1.86 GiB
mmcblk0: p1
EXT2-fs (mmcblk0p1): warning: mounting unchecked fs, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem) on device 179:1.
devtmpfs: mounted
Freeing init memory: 84K
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 23.01.2012 22:13 Сообщение: 2
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
а строка загрузки ядра доступна для изменений/добавлений?
попробуйте туда добавить
Код
noinitrd init=/bin/sh

или
Код
noinitrd init=/bin/ash

или
Код
noinitrd init=/bin/bash

при удаче выпадете в командную строку..

чтобы проц был чуть пошустрее
Код
Calibrating delay loop... 32.66 BogoMIPS (lpj=163328)

в строке загрузки добавьте
Код
cpufreq=200

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Pegase
Добавлено 27.01.2012 17:42 Сообщение: 3
Pegase
0

Пункты: 2484
Регистрация: 10.11.2010
[quote]а строка загрузки ядра доступна для изменений/добавлений?
попробуйте туда добавить
Код
noinitrd init=/bin/sh

или
Код
noinitrd init=/bin/ash

или
Код
noinitrd init=/bin/bash[/code]
при удаче выпадете в командную строку..
[/quote]

в командную строку так и не попал. Ядро так и висит на загруженные файловой.


Код
addr 0xA00000, len 13,238,272

No bad block!!

addr 0x8000, len 3,688,672

No bad block!!

Linux version 2.6.35.4 (root@vitaly-F5N) (gcc version 4.2.0 20070413 (prerelease) (CodeSourcery Sourcery G++ Lite 2007q1-10)) #13 PREEMPT Wed Jan 25 11:46:56 EET 2012

CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177

CPU: VIVT data cache, VIVT instruction cache

Machine: W90P950EVB

Memory policy: ECC disabled, Data cache writeback

CPU type 0x02900910 is NUC910

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

Kernel command line: mem=32M console=ttyS0,115200n8 noinitrd init=/bin/bash cpufreq=200 root=/dev/mmcblk0p1 rew rootfstype=ext2 rootwait

PID hash table entries: 128 (order: -3, 512 bytes)

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

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory: 32MB = 32MB total

Memory: 28664k/28664k available, 4104k reserved, 0K highmem

Virtual kernel memory layout:

vector : 0xffff0000 - 0xffff1000 ( 4 kB)

fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)

DMA : 0xffc00000 - 0xffe00000 ( 2 MB)

vmalloc : 0xc2800000 - 0xe0000000 ( 472 MB)

lowmem : 0xc0000000 - 0xc2000000 ( 32 MB)

modules : 0xbf000000 - 0xc0000000 ( 16 MB)

.init : 0xc0008000 - 0xc001d000 ( 84 kB)

.text : 0xc001d000 - 0xc0369000 (3376 kB)

.data : 0xc036a000 - 0xc038c860 ( 139 kB)

Hierarchical RCU implementation.

RCU-based detection of stalled CPUs is disabled.

Verbose stalled-CPUs detection is disabled.

NR_IRQS:32

Console: colour dummy device 80x30

Calibrating delay loop... 99.53 BogoMIPS (lpj=497664)

pid_max: default: 32768 minimum: 301

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

devtmpfs: initialized

NET: Registered protocol family 16

bio: create slab <bio-0> at 0

SCSI subsystem initialized

usbcore: registered new interface driver usbfs

usbcore: registered new interface driver hub

usbcore: registered new device driver usb

cfg80211: Calling CRDA to update world regulatory domain

Switching to clocksource nuc900-timer1

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

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

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

ROMFS MTD (C) 2007 Red Hat, Inc.

msgmni has been set to 55

alg: No test for stdrng (krng)

io scheduler noop registered (default)

Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled

serial8250.0: ttyS0 at MMIO 0xb8000000 (irq = 7) is a 16550

console [ttyS0] enabled

brd: module loaded

physmap platform flash device: 00400000 at a0000000

physmap-flash physmap-flash.0: map_probe failed

nuc900-emc nuc900-emc: invalid mac address

usbcore: registered new interface driver rt73usb

ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver

nuc900-ehci nuc900-ehci: Nuvoton nuc900 EHCI Host Controller

nuc900-ehci nuc900-ehci: new USB bus registered, assigned bus number 1

nuc900-ehci nuc900-ehci: irq 15, io mem 0xb0005000

nuc900-ehci nuc900-ehci: USB 2.0 started, EHCI 0.95

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: Nuvoton nuc900 EHCI Host Controller

usb usb1: Manufacturer: Linux 2.6.35.4 ehci_hcd

usb usb1: SerialNumber: nuc900-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

nuc900-ohci nuc900-ohci: Nuvoton nuc900 ohci Host Controller

nuc900-ohci nuc900-ohci: new USB bus registered, assigned bus number 2

nuc900-ohci nuc900-ohci: irq 15, io mem 0xb0007000

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: Nuvoton nuc900 ohci Host Controller

usb usb2: Manufacturer: Linux 2.6.35.4 ohci_hcd

usb usb2: SerialNumber: nuc900-ohci

hub 2-0:1.0: USB hub found

hub 2-0:1.0: 2 ports detected

usbcore: registered new interface driver cdc_wdm

Initializing USB Mass Storage driver...

hub 1-0:1.0: over-current change on port 1

usbcore: registered new interface driver usb-storage

USB Mass Storage support registered.

ep 0

ep 1

ep 2

ep 3

ep 4

ep 5

ep 6

mice: PS/2 mouse device common for all mice

MMC: Setting controller bus width to 1

Added NUC900 SD driver

SD power ON

MMC: Setting controller bus width to 1

rtusb init --->

usbcore: registered new interface driver rt2870

TCP cubic registered

NET: Registered protocol family 17

lib80211: common routines for IEEE802.11 drivers

MMC: Setting controller bus width to 1

drivers/rtc/hctosys.c: unable to open rtc device (rtc0)

Waiting for root device /dev/mmcblk0p1...

hub 1-0:1.0: over-current change on port 2

MMC: Setting controller bus width to 1

MMC: Setting controller bus width to 1

MMC: Setting controller bus width to 1

MMC: Setting controller bus width to 1

MMC: Setting controller bus width to 1

MMC: Setting controller bus width to 1

MMC: Setting controller bus width to 1

MMC: Setting controller bus width to 4

mmc0: new SD card at address e624

mmcblk0: mmc0:e624 SU02G 1.84 GiB

mmcblk0:

Как загрузиться с NAND. Для загрузки нужно создавать Initramfs? можно ли прямо с сроки загрузки ядра?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 28.01.2012 13:07 Сообщение: 4
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
я помню, что подключить к МНЮКу рутовую было хлопотным занятием..
- попробуйте вместо rootwait прописать rootdelay=15
- попробуйте в опция ядра включить эмуляцию сопроцессора -
Код
CONFIG_FPE_NWFPE=y

- попробуйте сборку ядра со сменой опции ядра OABI/EABI

Цитата
Как загрузиться с NAND

вы уверены, что в этом ядре есть нормальная поддержка nand для NUC950?
тогда траектория такая:
- в ядре включаете поддержку нанда, mtd и поддержку ФС во флеше, в файле платы прописываете свой нанд и разбивку на партиции..
далее развилка:
-- формируете образ рутовой в бинарник и заливаете через тулзу по USB
-- грузитесь с любой рутовой (хоть с ramfs) аттачите нанд, форматируете, монтируете и заливаете туда рутовую
далее в строке загрузки ядра прописываете - с какого раздела нанда грузиться и что там за ФС..

описание процесса пилежки нанда на форуме есть..

зы интересно, что в свое время, мы пилили схожий номер ядра, дело заглохло на глючащем USB и полуживом SD/MMC

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Pegase
Добавлено 03.02.2012 15:19 Сообщение: 5
Pegase
0

Пункты: 2484
Регистрация: 10.11.2010
На счет нормальной поддержки NAND не уверен. Только в ядре устанавливаю поддержку: Support for NAND on Nuvoton NUC9xx/w90p910 evaluation board ядро начинает:
Код
nand boot ...

addr 0x8000, len 3,245,376

No bad block!!

Linux version 2.6.35.4+ (root@vitaly-F5N) (gcc version 4.2.0 20070413 (prerelease) (CodeSourcery Sourcery G++ Lite 2007q1-10)) #29 PREEMPT Fri Feb 3 13:49:36 EET 2012

CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177

CPU: VIVT data cache, VIVT instruction cache

Machine: W90P950EVB

Warning: bad configuration page, trying to continue

Memory policy: ECC disabled, Data cache writeback

CPU type 0x02900910 is NUC910

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

Kernel command line: Kernel command line: mem=32M console=ttyS0,115200n8 noinitrd init=/bin/bash cpufreq=200 root=/dev/mmcblk0p1 rew rootfstype=ext2 rootdelay=15

PID hash table entries: 128 (order: -3, 512 bytes)

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

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory: 32MB = 32MB total

Memory: 29096k/29096k available, 3672k reserved, 0K highmem

Virtual kernel memory layout:

vector : 0xffff0000 - 0xffff1000 ( 4 kB)

fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)

DMA : 0xffc00000 - 0xffe00000 ( 2 MB)

vmalloc : 0xc2800000 - 0xe0000000 ( 472 MB)

lowmem : 0xc0000000 - 0xc2000000 ( 32 MB)

modules : 0xbf000000 - 0xc0000000 ( 16 MB)

.init : 0xc0008000 - 0xc0021000 ( 100 kB)

.text : 0xc0021000 - 0xc0306000 (2964 kB)

.data : 0xc0306000 - 0xc03204c0 ( 106 kB)

Hierarchical RCU implementation.

RCU-based detection of stalled CPUs is disabled.

Verbose stalled-CPUs detection is disabled.

NR_IRQS:32

Console: colour dummy device 80x30

Calibrating delay loop... 99.53 BogoMIPS (lpj=497664)

pid_max: default: 32768 minimum: 301

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

devtmpfs: initialized

NET: Registered protocol family 16

bio: create slab <bio-0> at 0

SCSI subsystem initialized

usbcore: registered new interface driver usbfs

usbcore: registered new interface driver hub

usbcore: registered new device driver usb

Switching to clocksource nuc900-timer1

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

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

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

ROMFS MTD (C) 2007 Red Hat, Inc.

msgmni has been set to 56

io scheduler noop registered (default)

Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled

serial8250.0: ttyS0 at MMIO 0xb8000000 (irq = 7) is a 16550

console [ttyS0] enabled

brd: module loaded

physmap platform flash device: 00400000 at a0000000

physmap-flash physmap-flash.0: map_probe failed

NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-bit)

Unable to handle kernel NULL pointer dereference at virtual address 00000000

pgd = c0004000

[00000000] *pgd=00000000

Internal error: Oops: 80000005 [#1] PREEMPT

last sysfs file:

Modules linked in:

CPU: 0 Not tainted (2.6.35.4+ #29)

PC is at 0x0

LR is at nand_select_chip+0x30/0x44

pc : [<00000000>] lr : [<c0171aec>] psr: 60000013

sp : c1c19e28 ip : c1d19d80 fp : c1c19e34

r10: c030a6e0 r9 : 00000001 r8 : 00000001

r7 : 00000000 r6 : 00000000 r5 : c1d19c00 r4 : c1d19d80

r3 : 00000200 r2 : 00000080 r1 : ffffffff r0 : c1d19c00

Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel

Control: 0005317f Table: 00004000 DAC: 00000017

Process swapper (pid: 1, stack limit = 0xc1c18270)

Stack: (0xc1c19e28 to 0xc1c1a000)

9e20: c1c19e54 c1c19e38 c0171f54 c0171acc 00000000 c1d19c00

9e40: 00000001 c030ac68 c1c19e6c c1c19e58 c0174128 c0171b10 c1d19c00 c030a6d8

9e60: c1c19e9c c1c19e70 c0266d4c c01740d0 00000000 c1c19e80 c030a6e0 c030a714

9e80: c03157f0 c03157f0 c0313c88 00000000 c1c19eac c1c19ea0 c014e3d0 c0266be0

9ea0: c1c19ecc c1c19eb0 c014d1c0 c014e3c0 c030a6e0 c030a714 c03157f0 c03157f0

9ec0: c1c19eec c1c19ed0 c014d470 c014d118 c1c19eec 00000000 c1c19ef0 c014d404

9ee0: c1c19f14 c1c19ef0 c014c414 c014d414 c1c044d8 c1c31b90 c001da68 c03157f0

9f00: c1cfcd80 00000013 c1c19f24 c1c19f18 c014d014 c014c3cc c1c19f54 c1c19f28

9f20: c014cb9c c014d004 c02c56b8 c001da68 c001da68 c03157f0 c0036110 00000013

9f40: c0320540 c0018eb4 c1c19f7c c1c19f58 c014d718 c014cb04 c001da68 c001dadc

9f60: c0036110 00000013 c0320540 c0018eb4 c1c19f8c c1c19f80 c014e610 c014d678

9f80: c1c19f9c c1c19f90 c0018ec8 c014e5d4 c1c19fdc c1c19fa0 c00213a4 c0018ec4

9fa0: 00000000 00000000 00000020 c030e3c0 c0036110 c001da68 c001dadc c0036110

9fc0: 00000013 00000000 00000000 00000000 c1c19ff4 c1c19fe0 c000878c c0021358

9fe0: 00000000 c00086e4 00000000 c1c19ff8 c0036110 c00086f4 ffffffff ffffffff

Backtrace:

[<c0171abc>] (nand_select_chip+0x0/0x44) from [<c0171f54>] (nand_scan_tail+0x454/0x5c0)

[<c0171b00>] (nand_scan_tail+0x0/0x5c0) from [<c0174128>] (nand_scan+0x68/0x7c)

r6:c030ac68 r5:00000001 r4:c1d19c00

[<c01740c0>] (nand_scan+0x0/0x7c) from [<c0266d4c>] (nuc900_nand_probe+0x17c/0x200)

r5:c030a6d8 r4:c1d19c00

[<c0266bd0>] (nuc900_nand_probe+0x0/0x200) from [<c014e3d0>] (platform_drv_probe+0x20/0x24)

[<c014e3b0>] (platform_drv_probe+0x0/0x24) from [<c014d1c0>] (driver_probe_device+0xb8/0x174)

[<c014d108>] (driver_probe_device+0x0/0x174) from [<c014d470>] (__driver_attach+0x6c/0x90)

r7:c03157f0 r6:c03157f0 r5:c030a714 r4:c030a6e0

[<c014d404>] (__driver_attach+0x0/0x90) from [<c014c414>] (bus_for_each_dev+0x58/0x8c)

r6:c014d404 r5:c1c19ef0 r4:00000000

[<c014c3bc>] (bus_for_each_dev+0x0/0x8c) from [<c014d014>] (driver_attach+0x20/0x28)

r7:00000013 r6:c1cfcd80 r5:c03157f0 r4:c001da68

[<c014cff4>] (driver_attach+0x0/0x28) from [<c014cb9c>] (bus_add_driver+0xa8/0x238)

[<c014caf4>] (bus_add_driver+0x0/0x238) from [<c014d718>] (driver_register+0xb0/0x13c)

[<c014d668>] (driver_register+0x0/0x13c) from [<c014e610>] (platform_driver_register+0x4c/0x60)

[<c014e5c4>] (platform_driver_register+0x0/0x60) from [<c0018ec8>] (nuc900_nand_init+0x14/0x1c)

[<c0018eb4>] (nuc900_nand_init+0x0/0x1c) from [<c00213a4>] (do_one_initcall+0x5c/0x19c)

[<c0021348>] (do_one_initcall+0x0/0x19c) from [<c000878c>] (kernel_init+0xa8/0x15c)

[<c00086e4>] (kernel_init+0x0/0x15c) from [<c0036110>] (do_exit+0x0/0x66c)

r5:c00086e4 r4:00000000

Code: bad PC value

---[ end trace ab49302e5fec6f8f ]---

Kernel panic - not syncing: Attempted to kill init!

Backtrace:

[<c00257ac>] (dump_backtrace+0x0/0x110) from [<c0025d0c>] (dump_stack+0x18/0x1c)

r6:0000000b r5:c1c15bc0 r4:c03209b0

[<c0025cf4>] (dump_stack+0x0/0x1c) from [<c0032e00>] (panic+0x74/0xf4)

[<c0032d8c>] (panic+0x0/0xf4) from [<c0036174>] (do_exit+0x64/0x66c)

r3:c030d3d4 r2:c1c18000 r1:c1c19aec r0:c02c5d78

[<c0036110>] (do_exit+0x0/0x66c) from [<c0025b74>] (die+0x2b8/0x2f8)

[<c00258bc>] (die+0x0/0x2f8) from [<c0027f40>] (__do_kernel_fault+0x70/0x90)

[<c0027ed0>] (__do_kernel_fault+0x0/0x90) from [<c002812c>] (do_page_fault+0x1cc/0x1e4)

r8:80000005 r7:00000000 r6:00000000 r5:c1c15bc0 r4:80000005

[<c0027f60>] (do_page_fault+0x0/0x1e4) from [<c00281f0>] (do_translation_fault+0x28/0xa8)

[<c00281c8>] (do_translation_fault+0x0/0xa8) from [<c0021240>] (do_PrefetchAbort+0x40/0xa4)

r4:ffffffff

[<c0021200>] (do_PrefetchAbort+0x0/0xa4) from [<c0021bb0>] (__pabt_svc+0x50/0x80)

Exception stack(0xc1c19de0 to 0xc1c19e28)

9de0: c1d19c00 ffffffff 00000080 00000200 c1d19d80 c1d19c00 00000000 00000000

9e00: 00000001 00000001 c030a6e0 c1c19e34 c1d19d80 c1c19e28 c0171aec 00000000

9e20: 60000013 ffffffff

r8:00000001 r7:00000000 r6:00000000 r5:c1c19e14 r4:ffffffff

[<c0171abc>] (nand_select_chip+0x0/0x44) from [<c0171f54>] (nand_scan_tail+0x454/0x5c0)

[<c0171b00>] (nand_scan_tail+0x0/0x5c0) from [<c0174128>] (nand_scan+0x68/0x7c)

r6:c030ac68 r5:00000001 r4:c1d19c00

[<c01740c0>] (nand_scan+0x0/0x7c) from [<c0266d4c>] (nuc900_nand_probe+0x17c/0x200)

r5:c030a6d8 r4:c1d19c00

[<c0266bd0>] (nuc900_nand_probe+0x0/0x200) from [<c014e3d0>] (platform_drv_probe+0x20/0x24)

[<c014e3b0>] (platform_drv_probe+0x0/0x24) from [<c014d1c0>] (driver_probe_device+0xb8/0x174)

[<c014d108>] (driver_probe_device+0x0/0x174) from [<c014d470>] (__driver_attach+0x6c/0x90)

r7:c03157f0 r6:c03157f0 r5:c030a714 r4:c030a6e0

[<c014d404>] (__driver_attach+0x0/0x90) from [<c014c414>] (bus_for_each_dev+0x58/0x8c)

r6:c014d404 r5:c1c19ef0 r4:00000000

[<c014c3bc>] (bus_for_each_dev+0x0/0x8c) from [<c014d014>] (driver_attach+0x20/0x28)

r7:00000013 r6:c1cfcd80 r5:c03157f0 r4:c001da68

[<c014cff4>] (driver_attach+0x0/0x28) from [<c014cb9c>] (bus_add_driver+0xa8/0x238)

[<c014caf4>] (bus_add_driver+0x0/0x238) from [<c014d718>] (driver_register+0xb0/0x13c)

[<c014d668>] (driver_register+0x0/0x13c) from [<c014e610>] (platform_driver_register+0x4c/0x60)

[<c014e5c4>] (platform_driver_register+0x0/0x60) from [<c0018ec8>] (nuc900_nand_init+0x14/0x1c)

[<c0018eb4>] (nuc900_nand_init+0x0/0x1c) from [<c00213a4>] (do_one_initcall+0x5c/0x19c)

[<c0021348>] (do_one_initcall+0x0/0x19c) from [<c000878c>] (kernel_init+0xa8/0x15c)

[<c00086e4>] (kernel_init+0x0/0x15c) from [<c0036110>] (do_exit+0x0/0x66c)

r5:c00086e4 r4:00000000

То же характерно как для драйвера что шел в комплекте с ядром и взятого с форума
Код
http://starterkit.ru/html/index.php?name=forum&op=view&id=6785&num=23

Вроде Nand распознает:
Код
NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3 V 8-bit)

Однако настораживает:
Код
Unable to handle kernel NULL pointer dereference at virtual address 00000000 pgd = c0004000

В чем может быть проблема?
Спуститься к концу Подняться к началу
Персональная информация
Pegase
Добавлено 03.02.2012 20:33 Сообщение: 6
Pegase
0

Пункты: 2484
Регистрация: 10.11.2010
Проблема оказалась в кривых драйверах. Сам Nuvoton придерживается странной политики - они не стали делать драйвер MTD для NAND флешки, вместо этого родили SCSI драйвер-прослойку. Тема поднималась:
Код
http://starterkit.ru/html/index.php?name=forum&op=view&id=5168&num=3

Немного покопал по форумам - удалось исправить ошибку в файле nuc900_nand.c. Драйвер вроде заработал. Теперь пытаюсь смонтировать файловую:
Заливаю утилитой Turbo Writer записать ядро, указывая: номер образа - 1, тип - "Execute", Image execute address - 0x8000, Image start block - 1
записать корневую ФС, указывая: номер образа - 2, тип - "RomFS", Image execute address - 0xa00000, Image start block - 20
В файле платы следующие партиции:
Код
static const struct mtd_partition partitions[] = {
{
.name = "Nand-boot",
.offset = 0,
.size = 128 * 1024
},
{
.name = "Kernel",
.offset = 128 * 1024,
.size = 31*128 * 1024
},
{
.name = "Rootfs",
.offset = 32*128 * 1024,
.size = MTDPART_SIZ_FULL
}
};

Файловая так и не грузиться:
Код
nand boot ...

addr 0xA00000, len 12,755,308

No bad block!!

addr 0x8000, len 3,691,520

No bad block!!

Linux version 2.6.35.4+ (root@vitaly-F5N) (gcc version 4.2.0 20070413 (prerelease) (CodeSourcery Sourcery G++ Lite 2007q1-10)) #34 PREEMPT Fri Feb 3 18:37:48 EET 2012

CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177

CPU: VIVT data cache, VIVT instruction cache

Machine: W90P950EVB

Memory policy: ECC disabled, Data cache writeback

CPU type 0x02900910 is NUC910

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

Kernel command line: mem=32M console=ttyS0,115200n8 root=/dev/mtdblock2 rootfstype=jffs2 rw

PID hash table entries: 128 (order: -3, 512 bytes)

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

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory: 32MB = 32MB total

Memory: 28660k/28660k available, 4108k reserved, 0K highmem

Virtual kernel memory layout:

vector : 0xffff0000 - 0xffff1000 ( 4 kB)

fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)

DMA : 0xffc00000 - 0xffe00000 ( 2 MB)

vmalloc : 0xc2800000 - 0xe0000000 ( 472 MB)

lowmem : 0xc0000000 - 0xc2000000 ( 32 MB)

modules : 0xbf000000 - 0xc0000000 ( 16 MB)

.init : 0xc0008000 - 0xc001d000 ( 84 kB)

.text : 0xc001d000 - 0xc036a000 (3380 kB)

.data : 0xc036a000 - 0xc038d380 ( 141 kB)

Hierarchical RCU implementation.

RCU-based detection of stalled CPUs is disabled.

Verbose stalled-CPUs detection is disabled.

NR_IRQS:32

Console: colour dummy device 80x30

Calibrating delay loop... 32.66 BogoMIPS (lpj=163328)

pid_max: default: 32768 minimum: 301

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

devtmpfs: initialized

NET: Registered protocol family 16

bio: create slab <bio-0> at 0

SCSI subsystem initialized

usbcore: registered new interface driver usbfs

usbcore: registered new interface driver hub

usbcore: registered new device driver usb

cfg80211: Calling CRDA to update world regulatory domain

Switching to clocksource nuc900-timer1

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

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

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

ROMFS MTD (C) 2007 Red Hat, Inc.

msgmni has been set to 55

alg: No test for stdrng (krng)

io scheduler noop registered (default)

Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled

serial8250.0: ttyS0 at MMIO 0xb8000000 (irq = 7) is a 16550

console [ttyS0] enabled

brd: module loaded

physmap platform flash device: 00400000 at a0000000

physmap-flash physmap-flash.0: map_probe failed

NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-bit)

Scanning device for bad blocks

Creating 3 MTD partitions on "NAND 256MiB 3,3V 8-bit":

0x000000000000-0x000000020000 : "Nand-boot"

0x000000020000-0x000000400000 : "Kernel"

0x000000400000-0x000010000000 : "Rootfs"

nuc900-emc nuc900-emc: invalid mac address

usbcore: registered new interface driver rt73usb

ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver

nuc900-ehci nuc900-ehci: Nuvoton nuc900 EHCI Host Controller

nuc900-ehci nuc900-ehci: new USB bus registered, assigned bus number 1

nuc900-ehci nuc900-ehci: irq 15, io mem 0xb0005000

nuc900-ehci nuc900-ehci: USB 2.0 started, EHCI 0.95

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: Nuvoton nuc900 EHCI Host Controller

usb usb1: Manufacturer: Linux 2.6.35.4+ ehci_hcd

usb usb1: SerialNumber: nuc900-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

nuc900-ohci nuc900-ohci: Nuvoton nuc900 ohci Host Controller

nuc900-ohci nuc900-ohci: new USB bus registered, assigned bus number 2

nuc900-ohci nuc900-ohci: irq 15, io mem 0xb0007000

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: Nuvoton nuc900 ohci Host Controller

usb usb2: Manufacturer: Linux 2.6.35.4+ ohci_hcd

usb usb2: SerialNumber: nuc900-ohci

hub 1-0:1.0: over-current change on port 1

hub 2-0:1.0: USB hub found

hub 2-0:1.0: 2 ports detected

usbcore: registered new interface driver cdc_wdm

Initializing USB Mass Storage driver...

usbcore: registered new interface driver usb-storage

USB Mass Storage support registered.

ep 0

ep 1

ep 2

ep 3

ep 4

ep 5

ep 6

mice: PS/2 mouse device common for all mice

Error: Driver 'nuc900-fmi' is already registered, aborting...

rtusb init --->

usbcore: registered new interface driver rt2870

TCP cubic registered

NET: Registered protocol family 17

lib80211: common routines for IEEE802.11 drivers

drivers/rtc/hctosys.c: unable to open rtc device (rtc0)

hub 1-0:1.0: over-current change on port 2

uncorrectable error :

uncorrectable error :

uncorrectable error :

mtd->read(0x400 bytes from 0x0) returned ECC error

jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0x4257 instead

jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0xa16c instead

jffs2_scan_inode_node(): CRC failed on node at 0x000002ec: Read 0xec929677, calculated 0x4ae59dc3

uncorrectable error :

uncorrectable error :

uncorrectable error :
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 05.02.2012 22:50 Сообщение: 7
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
попробуйте зайти с другого угла - поддержка сети вроде должна быть живой..
- соберите ядро и маленькую рутовую в единый файл, в составе рутовой основной упор на утилиты работы с флешом
- соберите ядро с поддержкой NFS и держите рутовую на сетке (хоть в той же виртуалке)
цель - получить загруженную систему и консоль, далее утилитами можно пилить нанд..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux