主题 : rmmod模块时无反应 复制链接 | 浏览器收藏 | 打印
本人已死,如遇上网,纯属遇鬼,若要联系,请烧纸钱,若要见面,请下地府!
级别: 新手上路
UID: 24132
精华: 0
发帖: 45
金钱: 235 两
威望: 47 点
综合积分: 90 分
注册时间: 2010-07-02
最后登录: 2012-12-24
楼主  发表于: 2010-08-23 13:55

 rmmod模块时无反应

请问一下各位大哥大姐,为什么我写的模块能在本地机子上面御载掉,在开发板上面却不行呢?
本人已死,如遇上网,纯属遇鬼,若要联系,请烧纸钱,若要见面,请下地府!
级别: 新手上路
UID: 24132
精华: 0
发帖: 45
金钱: 235 两
威望: 47 点
综合积分: 90 分
注册时间: 2010-07-02
最后登录: 2012-12-24
1楼  发表于: 2010-08-23 17:41
哪位大哥帮帮忙啊!
本人已死,如遇上网,纯属遇鬼,若要联系,请烧纸钱,若要见面,请下地府!
级别: 新手上路
UID: 24132
精华: 0
发帖: 45
金钱: 235 两
威望: 47 点
综合积分: 90 分
注册时间: 2010-07-02
最后登录: 2012-12-24
2楼  发表于: 2010-08-23 17:42

 回 1楼(txbdev) 的帖子

附上源码
int car_open(struct inode * inode,struct file *filp)
{
    return 0;
}

int car_release(struct inode *inode,struct file *filp)
{
    return 0;
}

static struct file_operations car_fops = {
    .owner = THIS_MODULE,
    .open = car_open,
    .ioctl = car_op,
    .release = car_release,
    .write = car_write,
};

static int __init car_init(void)
{
    int ret;

    //get the devid
    if(major_number)
    {
        devid = MKDEV(major_number,minor_number);
        ret = register_chrdev_region(devid,1,DEVICE_NAME);
    }
    else
    {
        ret = alloc_chrdev_region(&devid,minor_number,1,DEVICE_NAME);
        major_number = MAJOR(devid);
        minor_number = MINOR(devid);
    }

    if(ret <0)
    {
        printk(KERN_ALERT "can't get the major_number\n");
        goto err1;
    }

    //add the cdev
    dev = cdev_alloc();
    dev->ops =  &car_fops;
    cdev_init(dev,&car_fops);
    ret = cdev_add(dev,devid,1);
    if (ret)
    {
        printk(KERN_ALERT "adding cdev error\n");
        goto err2;
    }

    // init the car pin
    //con6杩炴帴閬ユ帶杞﹁?鏄?    //寮曡剼        璇存槑        鏂瑰悜        棰滆壊
    //2        鐢靛帇        3.3V
    //3        鎺ュ湴
    //10        EINT1/GPF1    鍙?    绾?    //12        EINT3/GPF3    宸?    鐧?    //14        EINT5/GPF5    鍓?    榛?    //16        EINT8/GPG0    鍚?    缁?    //
    //鍚勫唴瀛樺崟鍏冩帶鍒跺湴鍧
本人已死,如遇上网,纯属遇鬼,若要联系,请烧纸钱,若要见面,请下地府!
级别: 新手上路
UID: 24132
精华: 0
发帖: 45
金钱: 235 两
威望: 47 点
综合积分: 90 分
注册时间: 2010-07-02
最后登录: 2012-12-24
3楼  发表于: 2010-08-23 17:43
s3c2410_gpio_cfgpin(S3C2410_GPF5,S3C2410_GPF5_OUTP);
    s3c2410_gpio_setpin(S3C2410_GPF5,1);
    s3c2410_gpio_cfgpin(S3C2410_GPF3,S3C2410_GPF3_OUTP);
    s3c2410_gpio_setpin(S3C2410_GPF3,1);
    s3c2410_gpio_cfgpin(S3C2410_GPF1,S3C2410_GPF1_OUTP);
    s3c2410_gpio_setpin(S3C2410_GPF1,1);
    s3c2410_gpio_cfgpin(S3C2410_GPG0,S3C2410_GPG0_OUTP);
    s3c2410_gpio_setpin(S3C2410_GPG0,1);

    printk(KERN_ALERT "the major is %d,the minor is %d\n",major_number,minor_number);
    printk(KERN_ALERT "GPFDAT=%x,GPGDAT=%x\n",__raw_readl(GPFDAT),__raw_readl(S3C2410_GPGDAT));
    return 0;    

    err2://unregister the dev
    cdev_del(dev);
    err1:
    unregister_chrdev_region(devid,1);
        
    return ret;

}

static void __exit car_exit(void)
{
    printk(KERN_ALERT "1");
    cdev_del(dev);
    printk(KERN_ALERT "2");
    unregister_chrdev_region(devid,1);
    printk(KERN_ALERT "remove the module\n");
}

module_init(car_init);
module_exit(car_exit);

MODULE_LICENSE("GPL");
MODULE_AUTHOR("txbdir");
MODULE_DESCRIPTION("write by txbdir");
本人已死,如遇上网,纯属遇鬼,若要联系,请烧纸钱,若要见面,请下地府!
级别: 新手上路
UID: 24132
精华: 0
发帖: 45
金钱: 235 两
威望: 47 点
综合积分: 90 分
注册时间: 2010-07-02
最后登录: 2012-12-24
4楼  发表于: 2010-08-25 15:56
咋的没有哪位大哥大姐回答我呢?