static int isdbt_release(struct inode *inode, struct file *filp) { int ret = -EFAULT; DPRINTK("isdbt_release\n"); if (isdbtdrv_func->release) ret = (*isdbtdrv_func->release)(inode, filp); isdbt_power_off(); return 0; }
long ioctl_drv(struct file *filp, unsigned int cmd, unsigned long arg) { int res; res = isdbt_drv_ioctl(filp, cmd, arg); if (res == 0) { switch (cmd) { case IOCTL_ISDBT_POWER_ON: isdbt_power_on(0); break; case IOCTL_ISDBT_POWER_OFF: isdbt_power_off(); break; default: break; } } return res; }