static __init int init_ipmi_devintf(void) { int rv; if (ipmi_major < 0) return -EINVAL; rv = register_chrdev(ipmi_major, DEVICE_NAME, &ipmi_fops); if (rv < 0) { printk(KERN_ERR "ipmi: can't get major %d\n", ipmi_major); return rv; } if (ipmi_major == 0) { ipmi_major = rv; } devfs_handle = devfs_mk_dir(NULL, DEVICE_NAME, NULL); rv = ipmi_smi_watcher_register(&smi_watcher); if (rv) { unregister_chrdev(ipmi_major, DEVICE_NAME); printk(KERN_WARNING "ipmi: can't register smi watcher"); return rv; } printk(KERN_INFO "ipmi: device interface at char major %d\n", ipmi_major); return 0; }
static __init int init_ipmi_devintf(void) { int rv; if (ipmi_major < 0) return -EINVAL; printk(KERN_INFO "ipmi device interface version " IPMI_DEVINTF_VERSION "\n"); rv = register_chrdev(ipmi_major, DEVICE_NAME, &ipmi_fops); if (rv < 0) { printk(KERN_ERR "ipmi: can't get major %d\n", ipmi_major); return rv; } if (ipmi_major == 0) { ipmi_major = rv; } devfs_mk_dir(DEVICE_NAME); rv = ipmi_smi_watcher_register(&smi_watcher); if (rv) { unregister_chrdev(ipmi_major, DEVICE_NAME); printk(KERN_WARNING "ipmi: can't register smi watcher\n"); return rv; } return 0; }