u-boot-2010.3 添加usb下载功能支持 ( for mini2440)

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

本文主要参考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.csdn.net/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 +

    int arch_interrupt_init (void)
    {
        return 0;
    }

    //Apollo -


6、修改cpu/arm920t/start.S,文件

    #ifdef CONFIG_USE_IRQ
    
        .align    5
    irq:
    //Apollo +,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值