But, if I put the CF in the card reader before the system boots, the CF is not correctly recognized :
# cardctl ident
Socket 0:
no product info available
function: 0 (multifunction)
I tried several things:
- I tried to specify bigger values for the
setup_delay, vcc_settle and unreset_delay
parameters of the pcmcia_core module.
- I tried not to start pcmcia automaticaly at
bootup, but to launch it manually afterwards.
- I tried the commands 'cardctl eject/insert' and
'cardctl suspend/resume'.
The only thing that works is to eject the CF (software, then hardware) and, finally, put it back into the card reader. The CF is then correctly recongnized :
hda: SILICONSYSTEMS INC 4GB, ATA DISK drive
ide0 at 0xf6000000-0xf6000007,0xf600000e on irq 31
I would guess that it is a bug in the socket driver (not properly resetting the socket to a sane state at power-up). You're using a socket driver that I'm not familiar with (pxa_cs?), and should probably contact the maintainer(s) of that driver.
- Dave
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello everybody,
I've encoutered some problems with a 4GB CompactFlash from Silicon Systems.
If I put the CF in the card reader once the system (Linux 2.4.26) had booted, everything is ok :
# cardctl ident
Socket 0:
product info: "SILICONSYSTEMS", "VER2.00"
manfid: 0x0000, 0x0000
function: 4 (fixed disk)
But, if I put the CF in the card reader before the system boots, the CF is not correctly recognized :
# cardctl ident
Socket 0:
no product info available
function: 0 (multifunction)
I tried several things:
- I tried to specify bigger values for the
setup_delay, vcc_settle and unreset_delay
parameters of the pcmcia_core module.
- I tried not to start pcmcia automaticaly at
bootup, but to launch it manually afterwards.
- I tried the commands 'cardctl eject/insert' and
'cardctl suspend/resume'.
The only thing that works is to eject the CF (software, then hardware) and, finally, put it back into the card reader. The CF is then correctly recongnized :
hda: SILICONSYSTEMS INC 4GB, ATA DISK drive
ide0 at 0xf6000000-0xf6000007,0xf600000e on irq 31
Some infos:
# lsmod
Module Size Used by Not tainted
ide-cs 3620 1
ds 7448 1 [ide-cs]
pxa_cs 8996 1
pcmcia_core 35704 0 [ide-cs ds pxa_cs]
ide-detect 336 0 (autoclean) (unused)
ide-core 80580 0 (autoclean) [ide-cs ide-detect]
ext3 60408 0 (autoclean)
jbd 41784 0 (autoclean) [ext3]
smc91x 11508 1 (autoclean)
hc_isp116x 14328 0 (unused)
usbcore 59120 1 [hc_isp116x]
ds1307 5912 0
i2c-viper 1104 0 (unused)
i2c-algo-bit 7652 1 [i2c-viper]
i2c-core 13824 0 [ds1307 i2c-algo-bit]
ip_conntrack_ftp 4124 0 (unused)
ip_conntrack 21232 1 [ip_conntrack_ftp]
unix 16900 4 (autoclean)
# cardctl config
Socket 0:
Vcc 3.3V Vpp1 0.0V Vpp2 0.0V
interface type is "memory and I/O"
irq 31 [exclusive] [level]
function 0:
config base 0x0200
option 0x41 status 0x00 pin 0x00 copy 0x00
io 0xf6000000-0xf600000f [auto]
If you need more information, just tell me...
Didier
Some information I forgot in my previous message...
When the card is not recognized (cardctl returns 'no product info available'), the 'cardctl config' command says :
# cardctl config
Socket 0:
Vcc 3.3V Vpp1 3.3V Vpp2 3.3V
Hope it can help...
Didier
I would guess that it is a bug in the socket driver (not properly resetting the socket to a sane state at power-up). You're using a socket driver that I'm not familiar with (pxa_cs?), and should probably contact the maintainer(s) of that driver.
- Dave