主题 : 2440, Linux 下的SD的支持问题! 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 18704
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-04-12
最后登录: 2010-04-14
楼主  发表于: 2010-04-12 21:25

 2440, Linux 下的SD的支持问题!

   用的友善的Mini2440的板子;
  查看了内核信息:看到了板子上内核的版本是  linux 2.6.13  
                                                                                       qt   1.7.0
    用到的mini2440(20090492)的用户手册上 说明的linux版本是Linux 2.6.29 。  【应该是以前的内核版本吧,不知道是否能提供新2.6.29版本】

  发现好像SD卡不能自动挂载(SD是2G的FAT32格式的)
插上SD卡之后打印如下信息  
[root@FriendlyARM /]# s3c2410-sdi s3c2410-sdi: running at 0kHz (requested: 0kHz)
.
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
mmc0: error requesting CID: -110
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 16875kHz (requested: 25000kHz).
nkey register add card device
s3c2410-sdi s3c2410-sdi: running at 16875kHz (requested: 25000kHz).
mmcblk0: mmc0:ddfb SD02G 1921024KiB
/dev/mmc/blk0: p1
从最后四行来看显然是能够识别SD卡的
但是在这个图形界面先中的系统信息下的storage下没有发现SD卡文件?
查看了linux相关资料,想用fdisk -l指令查看sd的分区信息,郁闷的是居然好像没有fdisk 命令  使用 cat  查看partiion文件打印如下信息
[root@FriendlyARM /proc]# cat partitions
major minor  #blocks  name

  31     0        192 mtdblock0
  31     1       2048 mtdblock1
  31     2      63152 mtdblock2
254     0    1921024 mmcblk0
254     1    1920955 mmcblk0p1

诶,发现1921024    与上面打印信息中的“mmcblk0: mmc0:ddfb SD02G 1921024KiB”一样。然后看了论坛中相关的帖子http://www.aiothome.net/read.php?tid-133-keyword-SD%BF%A8.html    用了总版主的方法:
创建设备节点可以通过
mknod /dev/mmcblk0 b 254 0
mknod /dev/mmcblk0p1 b 254 1

挂载系统通过
mount /dev/mmcblk0 <mount point path>
mount /dev/mmcblk0p1 <mount point path>

出现问题了,串口打印出来的信息时:
[root@FriendlyARM /proc]# mount /dev/mmc
/dev/mmc/        /dev/mmcblk0     /dev/mmcblk0p1
[root@FriendlyARM /proc]# mount /dev/mmcblk0  /mnt/sd
yaffs: dev is 266338304 name is "mmcblk0"
yaffs: Attempting MTD mount on 254.0, "mmcblk0"
yaffs: dev is 266338304 name is "mmcblk0"
yaffs: Attempting MTD mount on 254.0, "mmcblk0"
mount: Mounting /dev/mmcblk0 on /mnt/sd failed: Invalid argument

不知道怎么解决了!请问各位这是什么问题怎么解决。谢谢

*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2010-04-12 23:08
[root@FriendlyARM /proc]# mount /dev/mmcblk0  /mnt/sd
yaffs: dev is 266338304 name is "mmcblk0"
yaffs: Attempting MTD mount on 254.0, "mmcblk0"
yaffs: dev is 266338304 name is "mmcblk0"
yaffs: Attempting MTD mount on 254.0, "mmcblk0"
mount: Mounting /dev/mmcblk0 on /mnt/sd failed: Invalid argument

/dev/mmcblk0是整个SD卡,/dev/mmcblk0p1是SD卡的第一个分区。通常情况下,文件系统存在于分区而不是整个卡设备,你可以试试mount /dev/mmcblk0p1  /mnt/sd
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 18704
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-04-12
最后登录: 2010-04-14
2楼  发表于: 2010-04-13 20:23
版主,你好请问一下,看了下linux启动的打印信息发现了一个问题:请看串口打印信息:
Copy linux kernel from 0x00050000 to 0x30008000, size = 0x00200000 ... done
zImage magic = 0x016f2818
Setup linux parameters at 0x30000100
linux command line is: "noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySA
C0"
MACH_TYPE = 782
NOW, Booting Linux......
Uncompressing Linux.............................................................
............................................ done, booting the kernel.
Linux version 2.6.13 (root@capcross) (gcc version 3.4.1) #1 Tue Nov 4 16:03:40 C
ST 2008
CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T)
Machine: QQ2440
ATAG_INITRD is deprecated; please update your bootloader.
Memory policy: ECC disabled, Data cache writeback
CPU S3C2440A (id 0x32440001)
BUG: mapping for 0x19000000 at 0xd0000000 overlaps vmalloc space
S3C2440: core 405.000 MHz, memory 101.250 MHz, peripheral 50.625 MHz
S3C2410 Clocks, (c) 2004 Simtec Electronics
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
Built 1 zonelists
Kernel command line: noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0
irq: clearing subpending status 00000003
irq: clearing subpending status 00000002
PID hash table entries: 512 (order: 9, 8192 bytes)
timer tcon=00000000, tcnt a4ca, tcfg 00000200,00000000, usec 00001e57
Console: colour dummy device 80x30
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 64MB = 64MB total
Memory: 61056KB available (2532K code, 1034K data, 144K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
USB Power Control, (c) 2004 Simtec Electronics
S3C2440: Initialising architecture
S3C2440: IRQ Support
S3C2440: Clock Support, UPLL 48.000 MHz
SCSI subsystem initialized
usbcore: registered new driver hub
S3C2410 DMA Driver, (c) 2003-2004 Simtec Electronics
DMA channel 0 at c4800000, irq 33
DMA channel 1 at c4800040, irq 34
DMA channel 2 at c4800080, irq 35
DMA channel 3 at c48000c0, irq 36
NetWinder Floating Point Emulator V0.97 (double precision)
devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
yaffs Nov  4 2008 16:02:01 Installing.
Initializing Cryptographic API
Console: switching to colour frame buffer device 30x20
S3C24X0 fb0: s3c2410fb frame buffer device initialize done
GPIO L3 bus interface for S3C2440, installed
S3C2410 RTC, (c) 2004 Simtec Electronics
s3c2410-rtc s3c2410-rtc: rtc disabled, re-enabling
leds initialized
buttons initialized
qq2440_pwm initialized
s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2440
s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2440
s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2440
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)
nbd: registered device at major 43
DM9000 ethernet driver V1.26 I/O: c481a300, VID: 90000a46
Linux video capture interface: v1.00
ovcamchip: v2.27 for Linux 2.6 : OV camera chip I2C driver
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c2440-nand: mapped registers at c4880000
s3c2440-nand: timing: Tacls 9ns, Twrph0 39ns, Twrph1 9ns
NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3V 8-bit
)
NAND_ECC_NONE selected by board driver. This is not recommended !!
Scanning device for bad blocks
Creating 3 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x00000000-0x00030000 : "bootloader"
0x00050000-0x00250000 : "kernel"
0x00250000-0x03ffc000 : "root"
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.01:USB HID core driver
usbcore: registered new driver ov511
drivers/usb/media/ov511.c: v1.64 for Linux 2.5 : ov511 USB Camera Driver
usbcore: registered new driver gspca
drivers/usb/media/gspca/gspca_core.c: gspca driver 00.60.00 registered
mice: PS/2 mouse device common for all mice
ts: Compaq touchscreen protocol output
s3c2410 TouchScreen successfully loaded
i2c /dev entries driver
s3c2440-i2c s3c2440-i2c: slave address 0x10
s3c2440-i2c s3c2440-i2c: bus frequency set to 98 KHz
s3c2440-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
s3c2410-sdi s3c2410-sdi: powered down.
s3c2410-sdi s3c2410-sdi: initialisation done.
SBC2440 SOUND driver register
s3c2410-sdi s3c2410-sdi: running at 0kHz (requested: 0kHz).
SBC2440 SOUND driver probe!
SBC2440 UDA1341 audio driver initialized
NET: Registered protocol family 2
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
TCP bic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
yaffs: dev is 32505858 name is "mtdblock2"
yaffs: Attempting MTD mount on 31.2, "mtdblock2"
VFS: Mounted root (yaffs filesystem).
Mounted devfs on /dev
Freeing init memory: 144K
mmc0: error requesting CID: -110
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 198kHz (requested: 197kHz).
s3c2410-sdi s3c2410-sdi: running at 16875kHz (requested: 25000kHz).
nkey register add card device
s3c2410-sdi s3c2410-sdi: running at 16875kHz (requested: 25000kHz).
mmcblk0: mmc0:ddfb SD02G 1921024KiB
/dev/mmc/blk0: unknown partition table
mini2440_backlight: module license 'unspecified' taints kernel.
backlight initialized
[13/Apr/2010:20:03:03 +0000] boa: server version Boa/0.94.13
[13/Apr/2010:20:03:03 +0000] boa: server built Feb 28 2004 at 21:47:23.
[13/Apr/2010:20:03:03 +0000] boa: starting server pid=275, port 80

enable_irq(51) unbalanced from c0173b50

Please press Enter to activate this console. Create pluginlibman in libqpe
Cannot open atd file /var/spool/at/1271199600.299
AlarmServer waiting 10613 seconds
Use QPEApplication's PluginLibraryManager
QMemoryFile::QMemoryFile("/opt/qtopia/etc/dict/dawg")
Created QMemoryfile for /opt/qtopia/etc/dict/dawg with a size of 189396
inserting Documents at -1
could not register server
found obex lib
inserting Applications at 0
inserting Games at 1
inserting Settings at 2
QGDict::hashKeyString: Invalid null key
addAppLnk: No view for type (null). Can't add app (null)!
Create pluginlibman in libqpe
Use QPEApplication's PluginLibraryManager
QuickLauncher running
Registered QPE/QuickLauncher-313


以上就是所有的内核启动时的打印信息,发现和mini2440(2009 04)用户手册上不一样,这个裁剪过的LINUX版本是原先QQ板的系统,看了内核打印信息,好像除了支持yaffs以外并不支持其他的文件系统。所以不能识别我的FAT32的文件系统。请问能不能发我一份MINI2440的-Linux 2.6.29内核 ,并且支持FAT32文件系统的  的 能够下载的版本??
级别: 新手上路
UID: 18704
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-04-12
最后登录: 2010-04-14
3楼  发表于: 2010-04-13 20:25

 回 1楼(kasim) 的帖子

另外的邮箱是sunseven1245@163.com  谢谢
级别: 新手上路
UID: 18704
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-04-12
最后登录: 2010-04-14
4楼  发表于: 2010-04-13 21:10
最好是这个,正好符合用户手册  http://www.aiothome.net/read.php?tid-1359-keyword-Linux-2.6.29.html
级别: 新手上路
UID: 18704
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-04-12
最后登录: 2010-04-14
5楼  发表于: 2010-04-13 22:51
搞定了不用了,以后有问题再问,谢谢