SD card detection problem

xiaojianjun
Hey,
I'm working at a mini2440 board with a linux kernel embbeded in a 128MB
nand flash and a shell of busybox saved in a sd card.Now I encountered a
very strange problem that the board sometimes can detect the SD card
correctly,but sometimes not.
I googled about this issue.and I found that the chipsets of SD cards which
can be detected are all made by SAMSANG.The driver of mmc controller in the
kernel 2.6.29 is also for SAMSANG.Is there anything related to the vender
of the chipset.

SD card that can be detected correctly:
s3c2440-sdi s3c2440-sdi: powered down.
s3c2440-sdi s3c2440-sdi: initialisation done.
s3c2440-sdi s3c2440-sdi: running at 0kHz (requested: 0kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
usbcore: registered new interface driver usbhid
usbhid: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.18a.
No device for DAI UDA134X
No device for DAI s3c24xx-i2s
S3C24XX_UDA134X SoC Audio driver
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
UDA134X SoC Audio Codec
s3c2440-sdi s3c2440-sdi: running at 16875kHz (requested: 25000kHz).
s3c2440-sdi s3c2440-sdi: running at 16875kHz (requested: 25000kHz).
mmc0: new SD card at address 0001
asoc: UDA134X <-> s3c24xx-i2s mapping ok
mmcblk0: mmc0:0001 00000 1.89 GiB
 mmcblk0: p1 p2

SD card that can not be detected:

s3c2440-sdi s3c2440-sdi: powered down.
s3c2440-sdi s3c2440-sdi: initialisation done.
s3c2440-sdi s3c2440-sdi: running at 0kHz (requested: 0kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
usbcore: registered new interface driver usbhid
usbhid: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.18a.
No device for DAI UDA134X
No device for DAI s3c24xx-i2s
S3C24XX_UDA134X SoC Audio driver
UDA134X SoC Audio Codec
asoc: UDA134X <-> s3c24xx-i2s mapping ok
ALSA device list:
  #0: S3C24XX_UDA134X (UDA134X)
TCP cubic registered
lib80211: common routines for IEEE802.11 drivers
s3c2410-rtc s3c2410-rtc: setting system clock to 2010-06-01 17:41:57 UTC
(1275414117)
VFS: Cannot open root device "mmcblk0p1" or unknown-block(0,0)
Please append a correct "root=" boot option; here are the available
partitions:
1f00             192 mtdblock0 (driver?)
1f01            2048 mtdblock1 (driver?)
1f02           63152 mtdblock2 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(0,0)

Is there anybody know something about this issue.
Thanks!

Nandu
hi, may I know your 
1) kernel command line argument?
2) SD card partitions?
3) Root file system type - Ext2 or Ext3? - On either case ensure the
corresponding type is enabled in the .config file.