HID: wacom: Constify attribute_groups
authorRikard Falkeborn <rikard.falkeborn@gmail.com>
Tue, 24 Nov 2020 23:01:09 +0000 (00:01 +0100)
committerJiri Kosina <jkosina@suse.cz>
Wed, 25 Nov 2020 13:17:22 +0000 (14:17 +0100)
These are never modified, so make them const to allow the compiler to put
them in read-only memory. It also allows the compiler to shrink the
resulting module with ~900 bytes, test-built with gcc 10.2 on x86_64.

   text    data     bss     dec     hex filename
 204377   42832     576  247785   3c7e9 drivers/hid/wacom_old.ko
 204240   42064     576  246880   3c460 drivers/hid/wacom_new.ko

Signed-off-by: Rikard Falkeborn <rikard.falkeborn@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/wacom_sys.c

index cd71e71..045c464 100644 (file)
@@ -1173,7 +1173,7 @@ static struct attribute *cintiq_led_attrs[] = {
        NULL
 };
 
-static struct attribute_group cintiq_led_attr_group = {
+static const struct attribute_group cintiq_led_attr_group = {
        .name = "wacom_led",
        .attrs = cintiq_led_attrs,
 };
@@ -1194,7 +1194,7 @@ static struct attribute *intuos4_led_attrs[] = {
        NULL
 };
 
-static struct attribute_group intuos4_led_attr_group = {
+static const struct attribute_group intuos4_led_attr_group = {
        .name = "wacom_led",
        .attrs = intuos4_led_attrs,
 };
@@ -1205,7 +1205,7 @@ static struct attribute *intuos5_led_attrs[] = {
        NULL
 };
 
-static struct attribute_group intuos5_led_attr_group = {
+static const struct attribute_group intuos5_led_attr_group = {
        .name = "wacom_led",
        .attrs = intuos5_led_attrs,
 };
@@ -1216,13 +1216,13 @@ static struct attribute *generic_led_attrs[] = {
        NULL
 };
 
-static struct attribute_group generic_led_attr_group = {
+static const struct attribute_group generic_led_attr_group = {
        .name = "wacom_led",
        .attrs = generic_led_attrs,
 };
 
 struct wacom_sysfs_group_devres {
-       struct attribute_group *group;
+       const struct attribute_group *group;
        struct kobject *root;
 };
 
@@ -1238,7 +1238,7 @@ static void wacom_devm_sysfs_group_release(struct device *dev, void *res)
 
 static int __wacom_devm_sysfs_create_group(struct wacom *wacom,
                                           struct kobject *root,
-                                          struct attribute_group *group)
+                                          const struct attribute_group *group)
 {
        struct wacom_sysfs_group_devres *devres;
        int error;
@@ -1264,7 +1264,7 @@ static int __wacom_devm_sysfs_create_group(struct wacom *wacom,
 }
 
 static int wacom_devm_sysfs_create_group(struct wacom *wacom,
-                                        struct attribute_group *group)
+                                        const struct attribute_group *group)
 {
        return __wacom_devm_sysfs_create_group(wacom, &wacom->hdev->dev.kobj,
                                               group);
@@ -1847,7 +1847,7 @@ static struct attribute *remote##SET_ID##_serial_attrs[] = {              \
        &remote##SET_ID##_mode_attr.attr,                               \
        NULL                                                            \
 };                                                                     \
-static struct attribute_group remote##SET_ID##_serial_group = {                \
+static const struct attribute_group remote##SET_ID##_serial_group = {  \
        .name = NULL,                                                   \
        .attrs = remote##SET_ID##_serial_attrs,                         \
 }