..
static struct pm_ops my_pm = {
prepare: my_prepare,
complete: my_complete,
suspend: my_suspend,
resume: my_resume,
freeze: my_freeze,
thaw: my_thaw,
poweroff: my_poweroff,
restore: my_restore,
};
..
static int __init my_module_init(void)
{
printk("my_module_init\n");
if ((major = register_chrdev(0, "testdev", &fops))) {
test_class = class_create(THIS_MODULE, "testclass");
if (IS_ERR(test_class)) {
printk("no udev support\n");
unregister_chrdev(major, "testdev");
return -EIO;
}
test_class->pm = &my_pm;
device_create(test_class, NULL, MKDEV(major, 0), NULL, "lulu");
return 0;
}
printk("loading failed\n");
return -EIO;
}