mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SD-Karte Problem Grasshopper


Autor: E. Grass (grasshuepf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Allerseits,

habe seit einigen TAgen das Problem. Das mein Grasshopper die SD-Karte 
nicht mehr erkennt.
zu beginn ging diese Allerdings geht es jetzt nicht mehr.
Habe folgenden boot-log:
## Booting image at 11000000 ...
   Image Name:   Linux-2.6.28.4
   Image Type:   AVR32 Linux Kernel Image (gzip compressed)
   Data Size:    1396596 Bytes =  1.3 MB
   Load Address: 10000000
   Entry Point:  90000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK

Starting kernel at 90000000 (params at 13fa5008)...

Linux version 2.6.28.4 (root@ANT-PC5) (gcc version 4.2.2-atmel.1.1.3.avr32linux.1) #2 Tue Oct 27 12:56:41 CET 2009
CPU: AT32AP700x chip revision C
CPU: AP7 [01] core revision 0 (AVR32B arch revision 1)
CPU: MMU configuration: Shared TLB
CPU: features: dsp simd ocd perfctr java
CPU: Running at 140.000 MHz
Physical memory:
  10000000-13ffffff
Reserved memory:
  10000000-1019549f: Kernel code
  101954a0-1025109f: Kernel data
Exception vectors start at 90011000
CPU: Paging enabled
Node 0: start_pfn = 0x10000, low = 0x14000
Node 0: mem_map starts at 90254000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
Kernel command line: root=nfs nfsroot=xxx:/freigaben/root ip=xxx:xxx::255.255.255.0::eth0:none mtdparts=physmap-flash.0:128k(boot)ro,64k(env)ro,-(root)
PID hash table entries: 256 (order: 8, 1024 bytes)
avr32_comparator: irq 0, 140.000 MHz
Console: colour dummy device 80x25
console [tty0] enabled
console [ttyS0] enabled
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 62528k/62588k available (1553k kernel code, 2948k reserved, 143k data, 68k init)
Calibrating delay using timer specific routine.. 281.62 BogoMIPS (lpj=469796)
Mount-cache hash table entries: 512
net_namespace: 716 bytes
smc smc.0: Atmel Static Memory Controller at 0xfff03400
NET: Registered protocol family 16
pdc pdc.0: Atmel Peripheral DMA Controller enabled
at32_eic at32_eic.0: External Interrupt Controller at 0xfff00100, IRQ 19
at32_eic at32_eic.0: Handling 4 external IRQs, starting with IRQ 64
AVR32 AP Power Management enabled
ICnova: 9 Leds
bio: create slab <bio-0> at 0
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
audit: initializing netlink socket (disabled)
type=2000 audit(1167609600.366:1): initialized
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
msgmni has been set to 122
alg: hash: Chunking test 1 failed for md5-generic
00000000: 24 e5 f6 e1 36 2e 67 bb a6 f6 2f 5f 81 ff bb a4
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler cfq registered (default)
atmel_usart.0: ttyS0 at MMIO 0xffe01000 (irq = 7) is a ATMEL_SERIAL
atmel_usart.1: ttyS1 at MMIO 0xffe00c00 (irq = 6) is a ATMEL_SERIAL
eth0 (macb): not using net_device_ops yet
MACB_mii_bus: probed
eth0: Atmel MACB at 0xfff01800 irq 25 (00:1f:e5:00:09:30)
eth0: attached PHY driver [Davicom DM9161A] (mii_bus:phy_addr=0:00, irq=67)
physmap platform flash device: 00800000 at 00000000
physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
 Amd/Fujitsu Extended Query Table at 0x0041
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
3 cmdlinepart partitions found on MTD device physmap-flash.0
Creating 3 MTD partitions on "physmap-flash.0":
0x00000000-0x00020000 : "boot"
0x00020000-0x00030000 : "env"
0x00030000-0x00800000 : "root"
------------[ cut here ]------------
WARNING: at fs/sysfs/dir.c:462 sysfs_add_one+0x1c/0x2c()
sysfs: duplicate filename 'physmap-flash.0' can not be created
Modules linked in:
Call trace:
 [<9001b752>] warn_slowpath+0x42/0x54
 [<900d4068>] vsnprintf+0x25c/0x5de
 [<900d4068>] vsnprintf+0x25c/0x5de
 [<90016ab0>] dequeue_task+0x4e/0x56
 [<90017ade>] __dequeue_entity+0x22/0x24
 [<90017af0>] set_next_entity+0x10/0x24
 [<90017c96>] pick_next_task_fair+0x56/0x5c
 [<900d074c>] ida_get_new_above+0x1c/0x10c
 [<90056a84>] ifind+0x8/0x3c
 [<90072a52>] sysfs_ilookup_test+0x0/0xa
 [<9000030c>] kernel_init+0x0/0x90
 [<90056ad6>] ilookup5+0x1e/0x24
 [<90072f2c>] sysfs_add_one+0x1c/0x2c
 [<9000030c>] kernel_init+0x0/0x90
 [<90073396>] create_dir+0x32/0x5c
 [<900733e2>] sysfs_create_dir+0x22/0x30
 [<90008af4>] physmap_init+0x0/0x20
 [<9000030c>] kernel_init+0x0/0x90
 [<900d0f04>] kobject_add_internal+0x90/0x140
 [<900d0f12>] kobject_add_internal+0x9e/0x140
 [<90008af4>] physmap_init+0x0/0x20
 [<900d1048>] kobject_add_varg+0x20/0x2c
 [<90008af4>] physmap_init+0x0/0x20
 [<9000030c>] kernel_init+0x0/0x90
 [<900d10a8>] kobject_add+0x30/0x3c
 [<90008af4>] physmap_init+0x0/0x20
 [<900f1f88>] device_add+0x64/0x38c
 [<900d0c0e>] kobject_init_internal+0xe/0x30
 [<9001bff8>] printk+0xc/0x10
 [<900f4664>] platform_device_add+0xc0/0x110
 [<90008af4>] physmap_init+0x0/0x20
 [<9000030c>] kernel_init+0x0/0x90
 [<900f46fe>] platform_device_register+0xe/0x10
 [<90008af4>] physmap_init+0x0/0x20
 [<90008b0c>] physmap_init+0x18/0x20
 [<90008af4>] physmap_init+0x0/0x20
 [<900122f2>] do_one_initcall+0x32/0x104
 [<900106f8>] __early_initcall_end+0x29c/0x32c
 [<9001045c>] __early_initcall_end+0x0/0x32c
 [<90008af4>] physmap_init+0x0/0x20
 [<900364a4>] register_irq_proc+0x48/0x6c
 [<900364ee>] init_irq_proc+0x26/0x48
 [<90000352>] kernel_init+0x46/0x90
 [<900106f8>] __early_initcall_end+0x29c/0x32c
 [<9001045c>] __early_initcall_end+0x0/0x32c
 [<9001d9c0>] do_exit+0x0/0x460
 [<9000030c>] kernel_init+0x0/0x90
 [<9001d9c0>] do_exit+0x0/0x460

---[ end trace f6954b461f4ef2fc ]---
kobject_add_internal failed for physmap-flash.0 with -EEXIST, don't try to register things with the same name in the same directory.
Call trace:
 [<900d1338>] kobject_rename+0xdc/0x11c
 [<900d0f70>] kobject_add_internal+0xfc/0x140
 [<900d1048>] kobject_add_varg+0x20/0x2c
 [<90008af4>] physmap_init+0x0/0x20
 [<9000030c>] kernel_init+0x0/0x90
 [<900d10a8>] kobject_add+0x30/0x3c
 [<90008af4>] physmap_init+0x0/0x20
 [<900f1f88>] device_add+0x64/0x38c
 [<900d0c0e>] kobject_init_internal+0xe/0x30
 [<9001bff8>] printk+0xc/0x10
 [<900f4664>] platform_device_add+0xc0/0x110
 [<90008af4>] physmap_init+0x0/0x20
 [<9000030c>] kernel_init+0x0/0x90
 [<900f46fe>] platform_device_register+0xe/0x10
 [<90008af4>] physmap_init+0x0/0x20
 [<90008b0c>] physmap_init+0x18/0x20
 [<90008af4>] physmap_init+0x0/0x20
 [<900122f2>] do_one_initcall+0x32/0x104
 [<900106f8>] __early_initcall_end+0x29c/0x32c
 [<9001045c>] __early_initcall_end+0x0/0x32c
 [<90008af4>] physmap_init+0x0/0x20
 [<900364a4>] register_irq_proc+0x48/0x6c
 [<900364ee>] init_irq_proc+0x26/0x48
 [<90000352>] kernel_init+0x46/0x90
 [<900106f8>] __early_initcall_end+0x29c/0x32c
 [<9001045c>] __early_initcall_end+0x0/0x32c
 [<9001d9c0>] do_exit+0x0/0x460
 [<9000030c>] kernel_init+0x0/0x90
 [<9001d9c0>] do_exit+0x0/0x460

at32_wdt at32_wdt.0: AT32AP700X WDT at 0xfff000b0, timeout 2 sec (nowayout=0)
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
Registered led device: led1:green
Registered led device: led2:green
Registered led device: led3:green
Registered led device: led4:green
Registered led device: led5:green
Registered led device: led6:green
Registered led device: led7:green
Registered led device: led8:green
Registered led device: pwrled:red
dw_dmac.0: DesignWare DMA Controller, 3 channels
TCP cubic registered
NET: Registered protocol family 10
IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
cpufreq: AT32AP CPU frequency driver
atmel_mci atmel_mci.0: Atmel MCI controller at 0xfff02400 irq 28, 1 slots
IP-Config: Complete:
     device=eth0, addr=xxx, mask=255.255.255.0, gw=255.255.255.255,
     host=xxx, domain=, nis-domain=(none),
     bootserver=xxx, rootserver=xxx, rootpath=
Looking up port of RPC 100003/2 on xxx
eth0: link up (100/Full)
Looking up port of RPC 100005/1 on xxx
VFS: Mounted root (nfs filesystem) on device 0:12.
Freeing init memory: 68K (90000000 - 90011000)
Starting portmap: done
Initializing random number generator... done.
Starting network...
Starting httpd
Starting telnetd 

Habe kein Idee warum es nicht mehr geht. Weiß jemand ein Rat?
Ich habe nichts an der HW oder auch Kernel verändert

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
stop mal am uboot command und poste mal dein env.
Also "printenv" am uboot_cmd eingeben.

Willst du von der Karte booten, oder die Karte nur mounten?

Autor: E. Grass (grasshuepf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe bis jetzt immer über NFS das rootfs und den kernel geladen:
und bei der kernel erstellung die SD karte nicht als Modul eingebaut 
sondern direkt in den kernel.

folgende printenv ausgabe habe ich:
bootdelay=3
baudrate=115200
ethact=macb0
ethaddr=xx:xx:xx:00:09:30
bootcmd=mtdparts default
bootargs=nfsroot=xxx.11.160.xxx:/freigaben/root ip=139.11.160.118:xxx.11.160.xxx::255.255.128.0::eth0:none
filesize=153FEE
fileaddr=11000000
ipaddr=xxx.11.160.xxx
serverip=xxx.11.160.xxx
stdin=serial
stdout=serial
stderr=serial
mtdids=nor0=physmap-flash.0
mtdparts=mtdparts=physmap-flash.0:128k(boot)ro,64k(env)ro,-(root)
partition=nor0,0
mtddevnum=0
mtddevname=boot

Kernel lade ich über:
nfs 11000000 xxx.11.160.xxx:/freigaben/root/boot/uImage;bootm

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
welche printenv-Ausgabe ist denn jetzt aktuell?

Die von oben:
bootdelay=3
baudrate=115200
ethact=macb0
ethaddr=xx:xx:xx:00:09:30
bootcmd=mtdparts default
bootargs=nfsroot=xxx.11.160.xxx:/freigaben/root ip=139.11.160.118:xxx.11.160.xxx::255.255.128.0::eth0:none
filesize=153FEE
fileaddr=11000000
ipaddr=xxx.11.160.xxx
serverip=xxx.11.160.xxx
stdin=serial
stdout=serial
stderr=serial
mtdids=nor0=physmap-flash.0
mtdparts=mtdparts=physmap-flash.0:128k(boot)ro,64k(env)ro,-(root)
partition=nor0,0
mtddevnum=0
mtddevname=boot

oder die, die du bei AVR-Freaks gepostet hast:

ICnova> printenv
bootcmd=mtdparts default;chpart nor0,2;fsload /boot/uImage;bootm ${fileaddr}
bootdelay=3
baudrate=115200
ethact=macb0
ethaddr=00:1F:E5:00:09:30
ipaddr=139.11.160.118
serverip=139.11.160.105
mtdids=nor0=physmap-flash.0
mtdparts=mtdparts=physmap-flash.0:128k(boot)ro,64k(env)ro,-(root)
partition=nor0,0
mtddevnum=0
mtddevname=boot
bootargs=root=nfs nfsroot=xxx.xxx.xxx.xxx:/freigaben/root ip=xxx.xxx.xxx.xxx:xxx.xxx.xxx.xxx::255.255.255.0::eth0:none 
mtdparts=physmap-flash.0:128k(boot)ro,64k(env)ro,-(root)
stdin=serial
stdout=serial
stderr=serial

Autor: E. Grass (grasshuepf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ging bei beiden nicht. ich habe schon alles möglich versucht was mir 
bekannt ist.
Habe sogar ein neuen kernel erzeugt, allerdings keine wirkung

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, der Kernel bootet ja aber.
Wo ist jetzt dein Problem? Bekommst du die Karte nicht gemountet? Wie 
mountest du die denn oder hast die früher gemountet.

Autor: e.Grass (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
zu beginn wurde beim boot die SD-Karte noch angezigt, sodass ich sie 
nach dem laden des dateisystems mounten konnte.
Der kernel lädt und das system läuft auch. Allerding funktioniert die 
SD-Karte nicht mehr.
Es ging von heut auf morgen nicht( wobei die zeitspanne ca 2 Monate 
ist). Das was ich nicht verstehe ist, das ich nichts geändert habe. Also 
keine kerneeinstelugen oder auch an der Hardware.
Das einzige wäre, bootloader einstellungen.

Woran kann es also liegen, dass ich z.B. heute meine SD-Karte mounten 
kann. Und das system herunterfahre und morgen starte und nix geht. :)

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast du mal versucht die Karte zu mounten?
mkdir /mnt/sd
mount -t vfat /dev/mmcblk0p1 /mnt/sd

Autor: E. Grass (grasshuepf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mounten habe ich schon versucht(wie schon erwähnt), geht auch nicht 
mehr. Habe auch getestet ob die Karten(3 stück) vielleicht defekt sind. 
Allerdings nicht.
mount: mounting /dev/mmcblk0p1 on /mnt failed: No such device or address

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann hast du mci im Kernel nicht eingeschaltet. Wie /Warum auch immer.
Karte ist partitioniert? Spannungsversorgung an der Karte vorhanden? 
Nachmessen!

Autor: E. Grass (grasshuepf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
MCi ist eingeschaltet
atmel_mci atmel_mci.0: Atmel MCI controller at 0xfff02400 irq 28, 1 slots
und Karte ist auch partitioniert.
Spannungen habe ich auch gemessen
Alles hat funktioniert vor 2 monaten und und nun geht nichts mehr.

ich mach jetzt alles neu!
mal sehen was dann passiert:)
mich würde einfach nur interessieen warum es vorher ging und dann nicht 
mehr :)

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
gib mal am uboot_cmd  mciinit ein.

Autor: E. Grass (grasshuepf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe habe uboot 2009.03:

die eingabe von mciinit  gibt:
Unknown command 'mciinit' - try 'help'

eignetlich müsste uboot den befehl kennen

Autor: E. Grass (grasshuepf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habs jetzt mal mit der buildroot 2.3.0 versucht. nun klappt es.
anscheinend liegt es doch an einer eintellungen. Jedoch wüsste ich nicht 
welche das sein soll. Da es einem zum anderen mal nicht funktionierte.

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> gib mal am uboot_cmd  mciinit ein.

sorry, da habe ich mich vertan, es muss "mmcinit" heißen.

aber:

> Ich habe habe uboot 2009.03:

Bei neueren uboot-Versionen (weis jetzt nicht, ob schon bei 2009.03) 
heißt der Befehl nicht mehr "mmcinit" sonder "mmc init (device)"

Autor: E. Grass (grasshuepf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die u-boot 2009.08 hat "mmcinit" oder auch "mmc init" nicht, habe mir 
jetzt die u-boot1.3.4 bon der atmel seite genommen. die hat "mmcinit"

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.