static int f17_init(struct rmi_function_container *fc) { int retval; retval = f17_alloc_memory(fc); if (retval < 0) goto err_free_data; retval = f17_initialize(fc); if (retval < 0) goto err_free_data; retval = f17_register_devices(fc); if (retval < 0) goto err_free_data; retval = f17_create_sysfs(fc); if (retval < 0) goto err_free_data; return 0; err_free_data: f17_free_memory(fc); return retval; }
static int rmi_f17_probe(struct rmi_function_dev *fn_dev) { int retval; retval = f17_alloc_memory(fn_dev); if (retval < 0) return retval; retval = f17_initialize(fn_dev); if (retval < 0) return retval; retval = f17_register_devices(fn_dev); if (retval < 0) return retval; retval = f17_create_sysfs(fn_dev); if (retval < 0) return retval; return 0; }