}
gpio = &extdev->pwrdn;
- for (i=0; i<4; i++) {
+ for (i=0; i<5; i++) {
if (gpio->io!=0xffffffff) {
gpio_free(gpio->io);
}
}
gpio = &extdev->pwrdn;
- for (i=0; i<4; i++) {
+ for (i=0; i<5; i++) {
if (gpio->io!=0xffffffff) {
gpio_free(gpio->io);
}
}
}
spin_unlock(&camsys_devs.lock);
+
+ //zyc add
+ INIT_LIST_HEAD(&camsys_dev->extdevs.active);
+
if (file->private_data == NULL) {
camsys_err("Cann't find camsys_dev!");
static int camsys_release(struct inode *inode, struct file *file)
{
camsys_dev_t *camsys_dev = (camsys_dev_t*)file->private_data;
-
+
camsys_irq_disconnect(NULL,camsys_dev, true);
camsys_trace(1,"%s(%p) is closed",dev_name(camsys_dev->miscdev.this_device),camsys_dev);