本文主要参考http://bbs.chinaunix.net/thread-1936080-1-1.html博文修改实现
原博文是基于u-boot-2009.8而本博文是基于u-boot-2010.3实现的
平台:fedaro9
交叉编译器:arm-linux-gcc 4.4.3
uboot: u-boot-2010.3
1、复制usb slave驱动源代码
创建drivers/usb/slave 目录,复制usb slave驱动源代码到此目录,请下载我提供的链接,原博文中的不可用
http://download.youkuaiyun.com/detail/xiaoaide01/7027467
2、修改uboot根目录下的Makefeils,添加红色部分代码
| LIBS += drivers/usb/musb/libusb_musb.a # Apollo + LIBS += drivers/usb/slave/libusb_slave.a # Apollo - LIBS += drivers/video/libvideo.a |
3、修改lib_arm/board.c文件,添加红色部分代码
//Apollo +
/* enable exceptions */
enable_interrupts ();
extern int usb_init_slave();
usb_init_slave();
//Apollo
4、修改平台头文件,include/configs/mini2440.h,添加红色部分
| #define CONFIG_USB_DEVICE 1 #ifdef CONFIG_USB_DEVICE #define CONFIG_USE_IRQ 1 #endif //#undef CONFIG_USE_IRQ /* we don't need IRQ/FIQ stuff */ |
5、修改cpu/arm920t/s3c24x0/interrupts.c 文件,添加arch_interrupt_init函数定义
| //Apollo + |
6、修改cpu/arm920t/start.S,文件
| #ifdef CONFIG_USE_IRQ |

这篇博客详细介绍了如何在u-boot-2010.3上为mini2440平台添加USB slave驱动支持,包括复制驱动源代码、修改Makefiles、board.c文件、配置头文件、中断处理函数、start.S文件和s3c24x0.h头文件。完成这些步骤后,通过编译并烧录u-boot.bin,可以使用usbslave命令从USB设备接收数据,并成功引导内核。
最低0.47元/天 解锁文章
712

被折叠的 条评论
为什么被折叠?



