|
提供對(duì)MSDOS FS和VFAT FS的支持。
(5)繼續(xù)到File systemsà
Partition Types中

提供MSDOS分區(qū)支持。
(6)到File systemsà
Native Language Support中

提供語(yǔ)言支持。
編譯運(yùn)行后,插入U盤,出現(xiàn)錯(cuò)誤如下:

按照提示看來是不得不修改驅(qū)動(dòng)代碼了。重新進(jìn)入ohci-s3c2410.c,這里面主要完成s3c2410 usb host 設(shè)備的初始化,包括電源、時(shí)鐘、寄存器等。結(jié)合網(wǎng)上的一些經(jīng)驗(yàn),發(fā)現(xiàn)代碼中竟然沒有對(duì)s3c2410的UPLLCOM進(jìn)行設(shè)置,于是在s3c2410_start_hc加入:
unsigned long upllvalue=(0x78<<12)|(0x02<<4)|(0x03);
printk("USB Control,(c)2007 sbc2410\n");
while(upllvalue!=__raw_readl(S3C2410_UPLLCON))
{
__raw_writel(upllvalue,S3C2410_UPLLCON);
mdelay(1);
}
同時(shí)根據(jù)2.6核的Document/arm/Samsung-S3C24XX/USB-HOST.txt的幫助在arch/arm/mach-s3c2410/mach-smdk2410.c中進(jìn)行以下修改:
增加頭文件
#i nclude <asm/arch-s3c2410/regs-clock.h>
在代碼開始部分加入
static struct s3c2410_hcd_info smdk2410_usbcfg={
.port[0]={
.flags=S3C_HCDFLG_USED
}
};
void __init smdk2410_init(void)
{
s3c_device_usb.dev.platform_data=&smdk2410_usbcfg;
}
在static void __init smdk2410_map_io(void)函數(shù)中加入:
smdk2410_init();
在MACHINE_START(SMDK2410, "SMDK2410")和MACHINE_END中加入
.init_machine= &smdk2410_init,
重新編譯運(yùn)行。

可以識(shí)別了,可是進(jìn)入/dev目錄卻找不到sda1設(shè)備。這就不是很清楚了,按以前的認(rèn)識(shí)應(yīng)該是可以自動(dòng)產(chǎn)生節(jié)點(diǎn)!這還得等高手幫忙指點(diǎn)一下??
最后,索性直接mknod sda b 8 0;mknod sda1 b 8 1創(chuàng)建兩個(gè)節(jié)點(diǎn)。重新加載一次U盤,執(zhí)行mount –t vfat –o iocharset=cp936 /dev/sda1 /mnt,進(jìn)入mnt目錄,居然可以了。
|