int ctrl_bridge_init(void) { struct ctrl_bridge *dev; int i; int retval = 0; for (i = 0; i < MAX_BRIDGE_DEVICES; i++) { dev = kzalloc(sizeof(*dev), GFP_KERNEL); if (!dev) { pr_err("%s: unable to allocate dev\n", __func__); retval = -ENOMEM; goto error; } /*transport name will be set during probe*/ dev->name = "none"; spin_lock_init(&dev->lock); init_usb_anchor(&dev->tx_submitted); init_usb_anchor(&dev->tx_deferred); __dev[i] = dev; } ctrl_bridge_debugfs_init(); return 0; error: while (--i >= 0) { kfree(__dev[i]); __dev[i] = NULL; } return retval; }
static int __init ctrl_bridge_init(void) { ctrl_bridge_debugfs_init(); return 0; }