打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Linux2.6 USB HOST驱动于华恒开发板上的移植(2)
Linux2.6 USB HOST驱动于华恒开发板上的移植(2)
2007-5-24 14:09:00

提供对MSDOS FSVFAT FS的支持。

5)继续到File systemsà

Partition Types
 

提供MSDOS分区支持。

6)到File systemsà

Native Language Support
 

 

提供语言支持。

编译运行后,插入U盘,出现错误如下:
 

按照提示看来是不得不修改驱动代码了。重新进入ohci-s3c2410.c,这里面主要完成s3c2410 usb host 设备的初始化,包括电源、时钟、寄存器等。结合网上的一些经验,发现代码中竟然没有对s3c2410UPLLCOM进行设置,于是在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);

 }

同时根据2.6核的Document/arm/Samsung-S3C24XX/USB-HOST.txt的帮助在arch/arm/mach-s3c2410/mach-smdk2410.c中进行以下修改:

增加头文件

#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)函数中加入:

      smdk2410_init();        

 

MACHINE_START(SMDK2410, "SMDK2410")MACHINE_END中加入

.init_machine= &smdk2410_init,

 

重新编译运行。
 
 

可以识别了,可是进入/dev目录却找不到sda1设备。这就不是很清楚了,按以前的认识应该是可以自动产生节点!这还得等高手帮忙指点一下??

最后,索性直接mknod sda b 8 0;mknod sda1 b 8 1创建两个节点。重新加载一次U盘,执行mount –t vfat –o iocharset=cp936 /dev/sda1 /mnt,进入mnt目录,居然可以了。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
SD和USB移植
浅谈分析Arm linux 内核移植及系统初始化的过程
Linux内核移植和yaffs2根文件系统制作V1.2(4)
linux-2.6内核移植
Linux 内核移植和根文件系统制作
基于S3C2440的Linux内核移植和yaffs2文件系统制作 -- fafen's B...
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服