if (pm && pm->runtime_suspend) {
ret = pm->runtime_suspend(&bundle->dev); if (ret) return ret;
} else {
gb_bundle_disable_all_connections(bundle);
}
ret = gb_control_bundle_suspend(bundle->intf->control, bundle->id); if (ret) { if (pm && pm->runtime_resume)
ret = pm->runtime_resume(dev); else
gb_bundle_enable_all_connections(bundle);
/* * Create a gb_bundle structure to represent a discovered * bundle. Returns a pointer to the new bundle or a null * pointer if a failure occurs due to memory exhaustion.
*/ struct gb_bundle *gb_bundle_create(struct gb_interface *intf, u8 bundle_id,
u8 class)
{ struct gb_bundle *bundle;
if (bundle_id == BUNDLE_ID_NONE) {
dev_err(&intf->dev, "can't use bundle id %u\n", bundle_id); return NULL;
}
/* * Reject any attempt to reuse a bundle id. We initialize * these serially, so there's no need to worry about keeping * the interface bundle list locked here.
*/ if (gb_bundle_find(intf, bundle_id)) {
dev_err(&intf->dev, "duplicate bundle id %u\n", bundle_id); return NULL;
}
bundle = kzalloc(sizeof(*bundle), GFP_KERNEL); if (!bundle) return NULL;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.