主题 : mini2440 spi驱动移植 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 59289
精华: 0
发帖: 62
金钱: 310 两
威望: 62 点
贡献值: 0 点
综合积分: 124 分
注册时间: 2011-11-22
最后登录: 2013-04-12
楼主  发表于: 2011-12-27 19:17

 mini2440 spi驱动移植

各位朋友最近在做spi接口的wifi驱动的移植;
平台环境:
目标板内核:linux-2.6.32.2
硬件平台:mini2440

在注册wifi驱动时首先要保证spi接口能用,我的wifi驱动直接调用的是内核的spi接口,但是在注册spi接口初始化的时候出现问题,
从机wifi模块收到的数据都是0xff,正常的应该是0x58才对,现在不知道问题是什么引起的。应为我的2440没有现成spi驱动,所以需要
先移植spi驱动到2440上,下面是我将移植的过程贴一下请大侠们看看是不是移植出现了问题:

首先修改arch/arm/mach-s3c2440/mach-mini2440.c文件
在include头文件代码行之后增加如下代码
#include <linux/spi/spi.h>
#include <mach/spi.h>

static struct spi_board_info s3c2410_spi0_board[] = {
        [0] = {
                 .modalias = "rsi_wlan",  //这是我驱动的名字
                .bus_num        = 0,  
                .chip_select        = 0,
                .irq = IRQ_SPI0,           //这个地方我不是很清楚是怎么确定使用哪个中断号的,我给设置成spi0的中断号,有朋友知道的可以说说
                .max_speed_hz         = 500*1000,
        },
};

static struct s3c2410_spi_info s3c2410_spi0_platdata = {
        .pin_cs = S3C2410_GPG(2),
        .num_cs = 1,       //这个看了好多资料都是设为1,但都没有说为什么,难道是cs的个数
        .bus_num = 0,  
};



然后在函数__initmini2440_machine_init的开头增加下列代码


s3c_device_spi0.dev.platform_data=&s3c2410_spi0_platdata;

spi_register_board_info(s3c2410_spi0_board,ARRAY_SIZE(s3c2410_spi0_board));



在mini2440_devices数组的最后中添加

&s3c_device_spi0,

以上是参考网上的一篇文章修改的,现在也能正确的调用驱动的probe函数。文章里还做了下面的修改,我不知道为什么所以下面的修改我还没有做。下面我也把
这部分贴出来了,有理解的朋友可以指点一下。谢谢

2.修改drivers/spi/spi_s3c24xx.c文件
在文件开头增加下列代码


#include <mach/regs-gpio.h>



在s3c24xx_spi_initialsetup函数结尾增加下列代码

// add by shiguang

s3c2410_gpio_cfgpin(hw->pdata->pin_cs,S3C2410_GPIO_OUTPUT);    //这个地方好像是配置片选作为输出的
下面三行就不明白是什么意思,而且0x8B、0x8C、0x8D这是代表什么
s3c2410_gpio_cfgpin(0x8B, S3C2410_GPIO_SFN2);

s3c2410_gpio_cfgpin(0x8C, S3C2410_GPIO_SFN2);

s3c2410_gpio_cfgpin(0x8D, S3C2410_GPIO_SFN2);

我的spi移植就改了这些,不知道做过的朋友是否能给点建议呢。是否修改的有问题呢
http://blog.csdn.net/forch/article/details/6837268这是参考的文章


技术人生
级别: 侠客
UID: 59289
精华: 0
发帖: 62
金钱: 310 两
威望: 62 点
贡献值: 0 点
综合积分: 124 分
注册时间: 2011-11-22
最后登录: 2013-04-12
1楼  发表于: 2011-12-29 09:37
求助啊 自己顶一下
技术人生