RE: [PATCH] IIO:sysfs.h: Use static declaration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jonathan,

Jonathan Cameron wrote on 2010-03-09:
> On 03/09/10 15:13, Hennerich, Michael wrote:
>> Shouldn't those be better declared 'static'?
>
> No. Convention is to do that when calling the macro as then it is
> explicit in the relevant place.  Now if any of the calls are missing
> the static keyword, that would be an error.

I don't mind - as long as they are declared static.
Because I'm seeing collisions with your driver - that doesn't declare it's common attributes static.

What about this patch?

Index: drivers/staging/iio/adc/max1363_core.c
===================================================================
--- drivers/staging/iio/adc/max1363_core.c      (revision 8430)
+++ drivers/staging/iio/adc/max1363_core.c      (working copy)
@@ -446,12 +446,12 @@
        return ret;
 }

-IIO_DEV_ATTR_AVAIL_SCAN_MODES(max1363_show_av_scan_modes);
-IIO_DEV_ATTR_SCAN_MODE(S_IRUGO | S_IWUSR,
+static IIO_DEV_ATTR_AVAIL_SCAN_MODES(max1363_show_av_scan_modes);
+static IIO_DEV_ATTR_SCAN_MODE(S_IRUGO | S_IWUSR,
                       max1363_show_scan_mode,
                       max1363_store_scan_mode);

-IIO_DEV_ATTR_SCAN(max1363_scan);
+static IIO_DEV_ATTR_SCAN(max1363_scan);

 static ssize_t max1363_show_name(struct device *dev,
                                 struct device_attribute *attr,
@@ -462,7 +462,7 @@
        return sprintf(buf, "%s\n", st->chip_info->name);
 }

-IIO_DEVICE_ATTR(name, S_IRUGO, max1363_show_name, NULL, 0);
+static IIO_DEVICE_ATTR(name, S_IRUGO, max1363_show_name, NULL, 0);

 /*name export */

-Michael


>
> I've cheated a bit on the event equivalent as they define a pair of
> structures.  Keep meaning to ask on how to do things like that
> properly (don't suppose anyone knows?)
>
> On another note, I'm getting increasingly tempted to drop the device
> specific headers and move over to a more hwmon like fix naming at
> review.  With new api they are huge and sometimes actually add code
> rather than saving it.  Not that it effects these particularly macros.
>
>
>
>>
>>
>> Index: drivers/staging/iio/sysfs.h
>> ===================================================================
>> --- drivers/staging/iio/sysfs.h (revision 8430)
>> +++ drivers/staging/iio/sysfs.h (working copy)
>> @@ -95,16 +95,16 @@
>>                         .val2 = _val2 }
>>  #define IIO_DEVICE_ATTR(_name, _mode, _show, _store, _addr)    \
>> -       struct iio_dev_attr iio_dev_attr_##_name                \
>> +       static struct iio_dev_attr iio_dev_attr_##_name         \
>>         = IIO_ATTR(_name, _mode, _show, _store, _addr)
>>
>>  #define IIO_DEVICE_ATTR_2(_name, _mode, _show, _store, _addr,
>> _val2) \ -       struct iio_dev_attr iio_dev_attr_##_name \ +
>> static struct iio_dev_attr iio_dev_attr_##_name
> \
>>         = IIO_ATTR_2(_name, _mode, _show, _store, _addr, _val2)
>>  #define IIO_CONST_ATTR(_name, _string)
> \
>> -       struct iio_const_attr iio_const_attr_##_name \ +       static
>> struct iio_const_attr iio_const_attr_##_name
> \
>>         = { .string = _string,
> \
>>             .dev_attr = __ATTR(_name, S_IRUGO, iio_read_const_attr,
>> NULL)}
>>
>>
>> ------------------------------------------------------------------
>> ********* Analog Devices GmbH              Open Platform Solutions
>> **  *****
>> **     ** Wilhelm-Wagenfeld-Strasse 6
>> **  ***** D-80807 Munich
>> ********* Germany
>> Registergericht München HRB 40368,  Geschäftsführer: Thomas Wessel,
>> William A. Martin, Margaret K. Seif
>>
>>
Greetings,
Michael

Analog Devices GmbH      Wilhelm-Wagenfeld-Str. 6      80807 Muenchen
Sitz der Gesellschaft Muenchen, Registergericht Muenchen HRB 4036 Geschaeftsfuehrer Thomas Wessel, William A. Martin, Margaret Seif


--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux