QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1607|回复: 1

请问编译内核是出现这个警告是什么原因?

[复制链接]
发表于 2005-12-9 17:44:33 | 显示全部楼层 |阅读模式
我自己写的一个电机控制的驱动程序,在arm-linux下的,
编译时出现了这个警告,但我不知道为什么原因,请指教.
还有那个警告是什么意思阿.
motor.c:384: warning: initialization from incompatible pointer type
这是384行:
line 384: module_init(motor_init);
那个motor_init ()函数是这样定义的,请人指教上面那个警告是什么意思阿.

static void __init motor_init (void)
{
        int ret;
        motor_tag = 0;           //未指示任何一个电机
        motorA_hardware_init();       
        motorB_hardware_init();       
        motorC_hardware_init();       
        AT91_SYS->PIOA_PER  |=  MOTORA_IRQ|MOTORB_IRQ|MOTORC_IRQ;
        AT91_SYS->PIOA_ODR |=  MOTORA_IRQ|MOTORB_IRQ|MOTORC_IRQ;
        AT91_SYS->PIOA_IER  |=  MOTORA_IRQ|MOTORB_IRQ|MOTORC_IRQ;       
        //在此处添加零位传感器的IRQ中断注册代码
        ret = request_irq(AT91C_ID_IRQ1, motor_interrupt, 0,"motor", NULL);       
            if( ret !=0 ){
                printk(KERN_ERR "Request Interrupt %d failed: error = %d\n", AT91C_ID_IRQ1, ret);
                goto fail_request_irq;
        }
        if(register_chrdev(MOTOR_MAJOR, "motor", &motor_fops)){
                DBG_MOTOR("register_chrdev for motor error\n");
                goto fail_register_chrdev;
        }       

        printk(KERN_INFO __FILE__ ":  MOTOR_IRQ for AT91RM9200, Using IRQ %d\n", AT91C_ID_IRQ1);
        return;
       
fail_register_chrdev:
        free_irq(AT91C_ID_IRQ1, NULL);
fail_request_irq:
        return;       
}
发表于 2005-12-10 22:36:43 | 显示全部楼层
static int __init
__init motor_init (void)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-3 00:29 , Processed in 0.073986 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表