greybus: define BUNDLE_ID_NONE
authorAlex Elder <elder@linaro.org>
Fri, 3 Jun 2016 20:55:30 +0000 (15:55 -0500)
committerGreg Kroah-Hartman <gregkh@google.com>
Sat, 4 Jun 2016 00:03:23 +0000 (17:03 -0700)
Define a bundle ID that means "no bundle".  This will be used for
tracing connection events during the portion of a connection's
lifetime when it has no bundle associated with it.  Don't allow
any bundle to be created using that ID.

Signed-off-by: Alex Elder <elder@linaro.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/bundle.c
drivers/staging/greybus/bundle.h

index 1810b62..e7c00b6 100644 (file)
@@ -102,6 +102,11 @@ struct gb_bundle *gb_bundle_create(struct gb_interface *intf, u8 bundle_id,
 {
        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
index 2dc61ab..3895f94 100644 (file)
@@ -12,6 +12,8 @@
 
 #include <linux/list.h>
 
+#define        BUNDLE_ID_NONE  U8_MAX
+
 /* Greybus "public" definitions" */
 struct gb_bundle {
        struct device           dev;