greybus: kernel_ver.h: add ATTRIBUTE_GROUPS() macro for older kernels
authorGreg Kroah-Hartman <greg@kroah.com>
Tue, 28 Oct 2014 01:27:50 +0000 (09:27 +0800)
committerGreg Kroah-Hartman <greg@kroah.com>
Tue, 28 Oct 2014 01:27:50 +0000 (09:27 +0800)
This was added in 3.11, and we need it for 3.10

Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
drivers/staging/greybus/kernel_ver.h

index e0fea18..e4cda5c 100644 (file)
@@ -48,4 +48,19 @@ static inline void gb_gpiochip_remove(struct gpio_chip *chip)
 }
 #endif
 
+/*
+ * ATTRIBUTE_GROUPS showed up in 3.11-rc2, but we need to build on 3.10, so add
+ * it here.
+ */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,11,0)
+#define ATTRIBUTE_GROUPS(name)                                 \
+static const struct attribute_group name##_group = {           \
+       .attrs = name##_attrs,                                  \
+};                                                             \
+static const struct attribute_group *name##_groups[] = {       \
+       &name##_group,                                          \
+       NULL,                                                   \
+}
+#endif
+
 #endif /* __GREYBUS_KERNEL_VER_H */