From: Johan Hovold Date: Wed, 25 Nov 2015 14:59:10 +0000 (+0100) Subject: greybus: interface: kill gb_create_bundle_connection X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=e4048006fd3823760d85057549bf609d3ed2e4c8;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git greybus: interface: kill gb_create_bundle_connection Kill gb_create_bundle_connection, which was only used to create the control bundle and connection, and replace it with a specialised static helper. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/greybus/interface.c b/drivers/staging/greybus/interface.c index 5060924f167d..c4ec25607230 100644 --- a/drivers/staging/greybus/interface.c +++ b/drivers/staging/greybus/interface.c @@ -71,40 +71,27 @@ struct device_type greybus_interface_type = { /* * Create kernel structures corresponding to a bundle and connection for - * managing control/svc CPort. + * managing control CPort. */ -int gb_create_bundle_connection(struct gb_interface *intf, u8 class) +static int +gb_interface_create_control_bundle_connection(struct gb_interface *intf) { struct gb_bundle *bundle; - u32 ida_start, ida_end; - u8 bundle_id, protocol_id; - u16 cport_id; - - if (class == GREYBUS_CLASS_CONTROL) { - protocol_id = GREYBUS_PROTOCOL_CONTROL; - bundle_id = GB_CONTROL_BUNDLE_ID; - cport_id = GB_CONTROL_CPORT_ID; - ida_start = 0; - ida_end = intf->hd->num_cports - 1; - } else if (class == GREYBUS_CLASS_SVC) { - protocol_id = GREYBUS_PROTOCOL_SVC; - bundle_id = GB_SVC_BUNDLE_ID; - cport_id = GB_SVC_CPORT_ID; - ida_start = GB_SVC_CPORT_ID; - ida_end = GB_SVC_CPORT_ID + 1; - } else { - WARN_ON(1); - return -EINVAL; - } + struct gb_connection *connection; - bundle = gb_bundle_create(intf, bundle_id, class); - if (!bundle) - return -EINVAL; + bundle = gb_bundle_create(intf, GB_CONTROL_BUNDLE_ID, + GREYBUS_CLASS_CONTROL); + if (!bundle) { + dev_err(&intf->dev, "failed to create control bundle\n"); + return -ENOMEM; + } - if (!gb_connection_create_range(bundle->intf->hd, bundle, - cport_id, protocol_id, ida_start, - ida_end)) - return -EINVAL; + connection = gb_connection_create(bundle, GB_CONTROL_CPORT_ID, + GREYBUS_PROTOCOL_CONTROL); + if (!connection) { + dev_err(&intf->dev, "failed to create control connection\n"); + return -ENOMEM; + } return 0; } @@ -208,11 +195,9 @@ int gb_interface_init(struct gb_interface *intf, u8 device_id) intf->device_id = device_id; /* Establish control CPort connection */ - ret = gb_create_bundle_connection(intf, GREYBUS_CLASS_CONTROL); - if (ret) { - dev_err(&intf->dev, "Failed to create control CPort connection (%d)\n", ret); + ret = gb_interface_create_control_bundle_connection(intf); + if (ret) return ret; - } /* Get manifest size using control protocol on CPort */ size = gb_control_get_manifest_size_operation(intf); diff --git a/drivers/staging/greybus/interface.h b/drivers/staging/greybus/interface.h index 1202062a70eb..61e9c05e75c6 100644 --- a/drivers/staging/greybus/interface.h +++ b/drivers/staging/greybus/interface.h @@ -61,5 +61,4 @@ int gb_interface_init(struct gb_interface *intf, u8 device_id); void gb_interface_remove(struct gb_interface *intf); void gb_interfaces_remove(struct gb_host_device *hd); -int gb_create_bundle_connection(struct gb_interface *intf, u8 class); #endif /* __INTERFACE_H */