在原来的蜂鸣器驱动pwm.c基础上,想增加一路XEINT11(GPH1_3)输出pwm,
#define DEVICE_NAME "pwm_GPIO"
#define PWM_IOCTL_SET_FREQ 1
#define PWM_IOCTL_STOP 0
#define NS_IN_1HZ (1000000000UL)
#define BUZZER_PWM_ID 0
#define BUZZER_PMW_GPIO S5PV210_GPH1(3)
编译ko都正常
但是 加载驱动的时候
错误如下:
request pwm 0 for pwm_GPIO failed
insmod: can't insert 'PWM.ko': No such device
查看驱动源码,错误打印部分代码如下
static int __init mini210_pwm_dev_init(void) {
int ret;
ret = gpio_request(BUZZER_PMW_GPIO, DEVICE_NAME);
if (ret) {
printk("request GPIO %d for pwm failed\n", BUZZER_PMW_GPIO);
return ret;
}
gpio_set_value(BUZZER_PMW_GPIO, 0);
s3c_gpio_cfgpin(BUZZER_PMW_GPIO, S3C_GPIO_OUTPUT);
pwm4buzzer = pwm_request(BUZZER_PWM_ID, DEVICE_NAME);
if (IS_ERR(pwm4buzzer)) {
printk("request pwm %d for %s failed\n", BUZZER_PWM_ID, DEVICE_NAME);
//这里打印出错误原因
return -ENODEV;
}
pwm_stop();
sema_init(&lock, 1);
ret = misc_register(&mini210_misc_dev);
printk(DEVICE_NAME "\tinitialized\n");
return ret;
}
求高手指点!!!