static int __init mei_init(void) { int ret; mei_class = class_create(THIS_MODULE, "mei"); if (IS_ERR(mei_class)) { pr_err("couldn't create class\n"); ret = PTR_ERR(mei_class); goto err; } ret = alloc_chrdev_region(&mei_devt, 0, MEI_MAX_DEVS, "mei"); if (ret < 0) { pr_err("unable to allocate char dev region\n"); goto err_class; } ret = mei_cl_bus_init(); if (ret < 0) { pr_err("unable to initialize bus\n"); goto err_chrdev; } return 0; err_chrdev: unregister_chrdev_region(mei_devt, MEI_MAX_DEVS); err_class: class_destroy(mei_class); err: return ret; }
static int __init mei_init(void) { return mei_cl_bus_init(); }