前言:
本开发板内核版本为Linux-3.0
此文章只是介绍USB移植的过程,对于Linux内核自带驱动的移植一般分为两个步骤:
1、修改代码,将USB初始化;
2、修改Linux内核配置,使其支持USB
第一步、对代码的操作
进入内核的mach-smdk2440.c (路径为:linux-3.0/arch/arm/mach-s3c2440/mach-smdk2440.c )
添加头文件
#include <mach/regs-clock.h>
#include <linux/delay.h>
添加USB初始化函数
- int usb_s3c2440_init(void)
- {
- unsigned long upllvalue= (0x38<<12)|(0x02<<4)|(0x02);
- while (upllvalue != __raw_readl(S3C2410_UPLLCON))
- {
- __raw_writel(upllvalue, S3C2410_UPLLCON);
- mdelay(1);
- }