OESF Portables Forum
Everything Else => Zaurus Distro Support and Discussion => Distros, Development, and Model Specific Forums => Archived Forums => Angstrom & OpenZaurus => Topic started by: layers on February 28, 2005, 10:11:25 pm
-
i have been using hentges rom with no problems for quite some time now, but i just upgraded my sd card from a 128 to a 512, and reflashed the ROM. my (new) sd card is not detected during the boot, so i halted the opie gui start and mounted from console.. then ran the cardfs install script and everything went well... almost. now everytime i boot the Z i have to go into konsole and manually mount the sd using mount /dev/mmcda1 /media/card ... once i do, all my apps show up and its like there was no prob whatsoever.. can anyone help me with this? even something as basic as how to add a script to the boot process, or after opie starts..
edit: seems to also unmount when my z goes into standby
-
At some point the auto-mounter script was updated to finally support
multiple partitions on a SD card.
I need a little bit more info to look into this.
What is the exact command you issue when you manually mount the card?
What is the content of /proc/partitions after a reboot with SD card inserted but not mounted?
What is the output of "dmesg" right aftera reboot?
Please use paste and copy for all messages!
-
thanks for your time..
At some point the auto-mounter script was updated to finally support
multiple partitions on a SD card.
I need a little bit more info to look into this.
What is the exact command you issue when you manually mount the card?
mount /dev/mmcda1 /media/card
What is the content of /proc/partitions after a reboot with SD card inserted but not mounted?
major minor #blocks name
3 0 125184 hda
3 1 125168 hda1
What is the output of "dmesg" right aftera reboot?
Linux version 2.4.18-rmk7-pxa3-embedix- (mhentges@mhcln01) (gcc version 2.95.3 20010315 (release)) #1 Tue, 14 Dec 2004 18:08:28 +0100
CPU: Intel StrongARM-1110 revision 9
Machine: Sharp-Collie
Security risk: creating user accessible mapping for 0x00000000 at 0xe8000000
Security risk: creating user accessible mapping for 0x08000000 at 0xea000000
Security risk: creating user accessible mapping for 0xc2000000 at 0xf2000000
Security risk: creating user accessible mapping for 0x40000000 at 0xf0000000
On node 0 totalpages: 16384
zone(0): 16384 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: console=tty1 root=/dev/mtdblock4 rootfstype=jffs2 jffs2_orphaned_inodes=delete mem=64M
Relocating machine vectors to 0xffff0000
Console: colour dummy device 80x30
Calibrating delay loop... 137.21 BogoMIPS
Memory: 64MB = 64MB total
Memory: 62328KB available (1688K code, 363K data, 80K init)
Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes)
Inode-cache hash table entries: 4096 (order: 3, 32768 bytes)
Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes)
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
GA Chip: L1
UCB1200 generic module installed
RCSR = 1
suspend main adc = 592(592)
fatal chk = 381
full reset !
suspend main adc = 593(593)
fatal chk = 382
apm: BIOS version 1.2 Flags 0x02 (Driver version 1.14)
apm: Current AC Status : 0
batok installed
Starting kswapd
JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB.
comadj = 157,44414d43,44414d43
Console: switching to colour frame buffer device 60x53
Collie frame buffer driver initialized.
keyboard initilaized.
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with no serial options enabled
COLLIE serial driver version 1.3
ttyS0 on SA1100 UART3 (irq 17)
ttyS1 on SA1100 UART1 (irq 15)ttyS2 on SA1100 UART2 (irq 16), using IRDA
touch adj= 18121,24988,-1310720,-2883584
ucb1200 touch screen driver initialized
sharpled_init: done.
SA1100 Real Time Clock driver v1.00
block: 128 slots per queue, batch=32
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
loop: loaded (max 8 devices)
PPP generic driver version 2.4.1
PPP BSD Compression module registered
ide-cs.c 1.26 1999/11/16 02:10:49 (David Hinds)
Collie Sound Driver Installed
TC35143F audio driver initialized
MTD Sharp chip driver
SA1100 flash: probing 32-bit flash bus
Using static partition definition
Creating 6 MTD partitions on "SA1100 flash":
0x00000000-0x00020000 : "Angel Monitor"
0x00020000-0x00040000 : "CF Updater"
0x00040000-0x000c0000 : "Diagnostics"
0x000c0000-0x001c0000 : "kernel"
0x001c0000-0x00fe0000 : "jffs2"
0x00fe0000-0x01000000 : "angel stuff"
Linux Kernel Card Services 3.1.22
options: [pm]
SA-1100 PCMCIA (CS release 3.1.22)
sa1100_pcmcia_init(0)
sa1100_pcmcia_init(1)
Frontlight Driver Initialized.
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 4096 bind 4096)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NetWinder Floating Point Emulator V0.95 (c) 1998-1999 Rebel.com
IrCOMM protocol (Dag Brattli)
VFS: Mounted root (jffs2 filesystem) readonly.
Freeing init memory: 80K
klips_info:ipsec_init: KLIPS startup, Openswan KLIPS IPsec stack version: 2.2.0
klips_info:ipsec_alg_init: KLIPS alg v=0.8.1-0 (EALG_MAX=255, AALG_MAX=251)
klips_info:ipsec_alg_init: calling ipsec_alg_static_init()
IPv6 v0.8 for NET4.0
IPv6 over IPv4 tunneling driver
usbdcore: usbdcore 0.1 035 2002-06-12 20:00 (dbg="")
net_fd 0.1 035 2002-06-12 20:00 (dbg="",alwaysup=0,OUT=64,IN=64)
vendorID: 4dd productID: 8004
sa1100_bi 0.2 035 2002-06-12 20:00 (dbg="")
bi_modinit: call udc_startup_events
bi_device_event: call udc_enable
bi_device_event: call udc_all_interrupts
SD Driver Initialized.
sharp_mmcsd 0.21 27 Sep 2002
IrDA: Registered device irda1
hostap_crypt: registered algorithm 'NULL'
hostap_cs: 0.3.7 - 2005-02-12 (Jouni Malinen )
hostap_cs: setting Vcc=33 (constant)
hostap_cs: CS_EVENT_CARD_INSERTION
hostap_cs: ignoring Vcc=33 (from config)
Checking CFTABLE_ENTRY 0x01 (default 0x01)
IO window settings: cfg->io.nwin=1 dflt.io.nwin=1
io->flags = 0x0046, io.base=0x0000, len=64
hostap_cs: Registered netdevice wifi0
hostap_cs: index 0x01: Vcc 3.3, irq 35, io 0xc4850000-0xc485003f
prism2_hw_init: initialized in 220 ms
wifi0: NIC: id=0x800c v1.0.0
wifi0: PRI: id=0x15 v1.0.5
wifi0: STA: id=0x1f v1.3.4
wifi0: defaulting to bogus WDS frame as a workaround for firmware bug in Host AP mode WDS
wifi0: registered netdevice wlan0
hostap_crypt: registered algorithm 'WEP'
wifi0: TXEXC - status=0x0004 ([Discon]) tx_control=000c
retry_count=0 tx_rate=0 fc=0x4108 (Data::0 ToDS)
A1=00:00:00:00:00:00 A2=00:06:25:ac:de:0f A3=ff:ff:ff:ff:ff:ff A4=00:00:00:00:00:00
wifi0: LinkStatus=6 (Association failed)
wifi0: LinkStatus: BSSID=44:44:44:44:44:44
wifi0: TXEXC - status=0x0004 ([Discon]) tx_control=000c
retry_count=0 tx_rate=0 fc=0x4108 (Data::0 ToDS)
A1=44:44:44:44:44:44 A2=00:06:25:ac:de:0f A3=33:33:ff:ac:de:0f A4=00:00:00:00:00:00
wifi0: LinkStatus=1 (Connected)
wifi0: LinkStatus: BSSID=00:80:c8:b7:f1:de
BlueZ Core ver 2.4 Copyright (C) 2000,2001 Qualcomm Inc
Written 2000,2001 by Maxim Krasnyansky
BlueZ L2CAP ver 2.3 Copyright (C) 2000,2001 Qualcomm Inc
Written 2000,2001 by Maxim Krasnyansky
BlueZ RFCOMM ver 1.1
Copyright (C) 2002 Maxim Krasnyansky
Copyright (C) 2002 Marcel Holtmann
wlan0: no IPv6 routers present
-
thanks for your time..
What is the content of /proc/partitions after a reboot with SD card inserted but not mounted?
major minor #blocks name
3 0 125184 hda
3 1 125168 hda1
Ah right, there's the problem. Normally /proc/partitions contains all partitions of the SD card if it is inserted. The new auto-mounter parses the file und tries to mount existing partitions. For whatever reason /proc/partitions is not updated on some models / SD cards.
Looks like i'll need to add a fail-safe auto-mounter for these models / cards.
I'll post a new script later today or tomorrow.
What is the output of "dmesg" right aftera reboot?
[...]
[div align=\"right\"][a href=\"index.php?act=findpost&pid=69049\"][{POST_SNAPBACK}][/a][/div]
Again, no entry of the SD card. I wonder what's going on. Maybe it's Just Another Bug of the binary-only Sharp SD driver.
-
Ok, I've attached the new script. Please gunzip and copy it into /etc (so the full path is /etc/sdcontrol).
I would appreciate it if everyone who has problems w/ SD in recent builds (ie: hentges ROMs etc)
would test this new script. A new OZ release is due soon and we really don't want to see this problem in the next official release.
Thanks!
-
Ok, I've attached the new script. Please gunzip and copy it into /etc (so the full path is /etc/sdcontrol).
I would appreciate it if everyone who has problems w/ SD in recent builds (ie: hentges ROMs etc)
would test this new script. A new OZ release is due soon and we really don't want to see this problem in the next official release.
Thanks!
[div align=\"right\"][a href=\"index.php?act=findpost&pid=69346\"][{POST_SNAPBACK}][/a][/div]
thanks much! i will try it immediately and post results..
edit: do i need to chmod it or anything?
editx2: well.. in my /mnt folder i now have
card
card1
card2
card3
card4
lol.. but none of them actually has the card mounted...
-
I take it the "mount" command doesn't list mmcdaX mounted at /media/card, right?
-
I take it the "mount" command doesn't list mmcdaX mounted at /media/card, right?
[div align=\"right\"][a href=\"index.php?act=findpost&pid=69431\"][{POST_SNAPBACK}][/a][/div]
/dev/root on / type jffs2 (rw)
proc on /proc type proc (rw)
ramfs on /dev type ramfs (rw)
tmpfs on /var type tmpfs (rw)
devpts on /dev/pts type devpts (rw)
-
Here's an updated version which should correct most bugs introduced by the change from /mnt to /media. Please test.
-
Here's an updated version which should correct most bugs introduced by the change from /mnt to /media. Please test.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=69523\"][{POST_SNAPBACK}][/a][/div]
so... its not an issue with size of the sd card, or manufacturer? rather, its an issue with the mountpoint? i dont follow how that would inhibit the card from being automounted..
-
]
so... its not an issue with size of the sd card, or manufacturer? rather, its an issue with the mountpoint? i dont follow how that would inhibit the card from being automounted..
[div align=\"right\"][a href=\"index.php?act=findpost&pid=69557\"][{POST_SNAPBACK}][/a][/div]
Yes and no. Your problem is that your card doesn't update /proc/partitions like most cards do.
This effectly prevents the new auto-mounter from determining all valid partitions on the card and thus
your card isn't mounted automatically.
This new script offers a fail-safe mode in which it tries to mount /dev/mmcda[1-4] even if /proc partitions is empty. The earlier version I posted suffered some bugs caused by the recent change from /mnt to /media in OZ. They may have prevented the fail-safe mode to work correctly. This latest version should fix all remaining bugs related to /media.
I hope this clears the situation up
If the card still isn't mounted during a boot, please post all messages from the following commands in this exact order:
/etc/sdcontrol insert (you may want to redirect the output into a textfile)
mount
dmesg | grep -i mmcda
/etc/sdcontrol compeject
mount
-
thanks for taking the time to explain..
since i see you are on this board right now, i will go ahead and check things out, and edit this post in a few minutes with the outcome..
hrmm... well.. the sdcontrol worked.. but not during boot..
# /etc/sdcontrol insert
WARNING: Couldn't determine SD mount options from /etc/fstab, using defaults
Beginning SD auto-mount..:
WARNING: Trying failsafe partition mode
-> Valid SD partitions are: [mmcda1 mmcda2 mmcda3 mmcda4]
* * * * * Working on [/dev/mmcda1] * * * * *
-> Using mountpoint [/mnt/card] from fstab
-> Trying VFAT mount [noatime,sync,quiet,umask=000,iocharset=utf8]...
-> Trying ext2 mount [noatime,sync]...
-> EXT2 mount was successfull
* * * * * Working on [/dev/mmcda2] * * * * *
-> Using mountpoint [/media/card1]
-> Trying VFAT mount [noatime,sync,quiet,umask=000,iocharset=utf8]...
-> Trying ext2 mount [noatime,sync]...
-> EXT2 mount was successfull
* * * * * Working on [/dev/mmcda3] * * * * *
-> Using mountpoint [/media/card2]
-> Trying VFAT mount [noatime,sync,quiet,umask=000,iocharset=utf8]...
-> Trying ext2 mount [noatime,sync]...
/dev/mmcda3: Invalid argument
mount: you must specify the filesystem type
-> Trying failsafe mount...
/dev/mmcda3: Invalid argument
mount: you must specify the filesystem type
* * * * * Working on [/dev/mmcda4] * * * * *
-> Using mountpoint [/media/card3]
-> Trying VFAT mount [noatime,sync,quiet,umask=000,iocharset=utf8]...
-> Trying ext2 mount [noatime,sync]...
/dev/mmcda4: Invalid argument
mount: you must specify the filesystem type
-> Trying failsafe mount...
/dev/mmcda4: Invalid argument
mount: you must specify the filesystem type
ln: /home/samba/SD_Card: No such file or directory
mount:
# mount
/dev/root on / type jffs2 (rw)
proc on /proc type proc (rw)
ramfs on /dev type ramfs (rw)
tmpfs on /var type tmpfs (rw)
devpts on /dev/pts type devpts (rw)
/dev/mmcda1 on /media/card type ext2 (rw,sync,noatime)
/dev/mmcda2 on /media/card1 type ext2 (rw,sync,noatime)
Dmesg:
# dmesg | grep -i mmcda
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
mmcda: mmcda1 mmcda2
sdcontrol compeject:
# /etc/sdcontrol compeject
WARNING: Couldn't determine SD mount options from /etc/fstab, using defaults
/etc/sdcontrol: 238: fuser: not found
rm: cannot remove `/home/samba/SD_Card': No such file or directory
/etc/sdcontrol: 238: fuser: not found
rm: cannot remove `/home/samba/SD_Card': No such file or directory
mount:
# mount
/dev/root on / type jffs2 (rw)
proc on /proc type proc (rw)
ramfs on /dev type ramfs (rw)
tmpfs on /var type tmpfs (rw)
devpts on /dev/pts type devpts (rw)
-
Please try the following:
- Reboot your Z
- Check if /media/card is mounted
- /etc/init.d/sd stop
- /etc/init.d/sd start
- Check if the card is now mounted
-
ok well, it is kinda working..
it IS mounting the card at boot, but it is giving alot of output, and its not recognizing the correct partition size..
the partition is 512mb, and this can be seen thru fdisk -l and cfdisk /dev/mmcda
~# fdisk -l
Disk /dev/mmcda: 512 MB, 512229376 bytes
9 heads, 8 sectors/track, 13895 cylinders
Units = cylinders of 72 * 512 = 36864 bytes
Device Boot Start End Blocks Id System
/dev/mmcda1 1 13895 500216 83 Linux
cfdisk 2.12
Disk Drive: /dev/mmcda
Size: 512229376 bytes, 512 MB
Heads: 9 Sectors per Track: 8 Cylinders: 13895
Name Flags Part Type FS Type [Label] Size (MB)
------------------------------------------------------------------------------
mmcda1 Primary Linux ext2 512.23
but when i type #df , it only tells me that there is 200 something..
/dev/mmcda1 236.4M 53.0M 171.2M 24% /media/card
i have attached a copy of the dmesg, so you can see the output i was talking about..
-
I have been having the same problem getting my SD mounted at boot. I have tried the new versions of sdcontrol and I still have a problem. I can get my card mounted by running sdcontrol (with a couple of mods I put in) from the terminal. It seems the problem is that sdmgr isn't calling scontrol. I bet you already came to that conclusion seeing the path this thread has taken.
windom
-
this info might help ya... i dunno.. but its worth a shot eh
multiple partitions on a cf/sd (https://www.oesf.org/index.php?title=Multiple_partitions_on_a_CF_/_SD_card&PHPSESSID=a60bc8fd7af2ac728ab74b77f11dd6f3)
-
I have been having the same problem getting my SD mounted at boot. I have tried the new versions of sdcontrol and I still have a problem. I can get my card mounted by running sdcontrol (with a couple of mods I put in) from the terminal. It seems the problem is that sdmgr isn't calling scontrol. I bet you already came to that conclusion seeing the path this thread has taken.
windom
[div align=\"right\"][a href=\"index.php?act=findpost&pid=69935\"][{POST_SNAPBACK}][/a][/div]
What modifications were needed for sdcontrol?
And yes, for some reason, sdcontrol is not called on boot by sdmgr (or it errors out for some reason)
I'll post a sdcontrol script w/ logging functionality later today. Maybe this will help to find the problem.
Could you please insert a "sleep 3" right before sdmgr in /etc/init.d/sd?
Maybe we have a timing problem with the driver.
-
What modifications were needed for sdcontrol?
[div align=\"right\"][a href=\"index.php?act=findpost&pid=69972\"][{POST_SNAPBACK}][/a][/div]
Just some minor stuff. I could not see where FSTYPE was set so before the 1st mount I set it to '-t vfat', the 2nd mount '-t ext2', and the 3rd mount '-t auto'. I also tried sticking a '/sbin/e2fsck -y /dev/mmcda1' before the 2nd mount. I later moved it to /etc/init.d/sd. I also added a 'depmod-a' before the modprobe of sharp_mmcsd_m. One time I could not get the module to install even from the terminal (using the modprobe command) until I did the depmod. I know that couple of depmods are called in the boot process but figured it wouldn't hurt. Same thing with assigning values to FSTYPE. I'm trying to leave as little as possible to chance.
I couldn't try the sleeep command as you suggesteed since I can't boot opie from my SD. I found that OPIEDIR and QPEDIR are not set. But that's another thread.
mt
-
[/quote]
I found that OPIEDIR and QPEDIR are not set. But that's another thread.
mt
[div align=\"right\"][a href=\"index.php?act=findpost&pid=70324\"][{POST_SNAPBACK}][/a][/div]
[/quote]
i believe that is fixed by installing the service-release-1-oz.ipk from the upgrades feed
-
I found that OPIEDIR and QPEDIR are not set. But that's another thread.
mt
i believe that is fixed by installing the service-release-1-oz.ipk from the upgrades feed
[div align=\"right\"][a href=\"index.php?act=findpost&pid=70328\"][{POST_SNAPBACK}][/a][/div]
SR1 shouldn't be needed at all. The "fix" is already included (guess who wrote SR1 heh).
Will have a look later today.
I couldn't try the sleeep command as you suggesteed since I can't boot opie from my SD.
I think you misunderstood me
Just add the "sleep 3" in /etc/init.d/sd before "sdmgr" is launched. There's no need to boot from SD (not that there's a way to do so anyways)
-
I think you misunderstood me
Just add the "sleep 3" in /etc/init.d/sd before "sdmgr" is launched. There's no need to boot from SD (not that there's a way to do so anyways)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=70347\"][{POST_SNAPBACK}][/a][/div]
I tried adding the sleep command. I seemed to help a bit in that my zaurus 5500 never missed the SD twice in a row. IOW, the first boot would miss it but an immediate reboot caught it. Beore, I sometimes could reboot until the cows came home and not have the SD detected. Or so it seemed. The detection of the SD seems delayed for some reason. Usually if the boot does not detect the SD, the Zaurus finds it about 20-30 seconds after Opie is completely up and running. What I've tried now is this: I modified mmfix. If it completes it SD detection loop without finding the SD I explicitly execute '/etc/sdconrol insert'. One more check for the SD is made after it finishes. If the SD is found then I go on my merry way. If not, it exits the way it ordinarily would under those circumstances. It is a lot of overhead but it seems to work. If it matters I am using a 512 Meg PNY SD.
windom