[lm-sensors] [patch 0/2] pc87360 SDA-Array - readme
jim.cromie at gmail.com
jim.cromie at gmail.com
Wed Aug 31 22:20:09 CEST 2005
This patch set applies on top of:
+ my previous i2c-pc87360-sda-* patchset
These 2 patches are the culmination of my previous patchset - but are
seen as more controversial -- insofar that they set a direction for
other work. They therefore warrant a separate patchset, and extra
scrutiny to insure that they go someplace good.
To support my explicit array-declare+init approach, Ive dug up this
(msg 9 in thread, from GregKH):
No, I hate HEAD and TAIL macros. This really isn't buying you much code
savings, you could do it yourself with the __ATTR() macro yourself with
the same ammount of code I bet...
(msg 11, also Greg)
Hm, which makes me want to go look at trying to convert those attributes
to an array right now...
So I went with it..
This patch refactors SENSOR_DEVICE_ATTR macro. 1st it creates a new
macro __SENSOR_DEVICE_ATTR() which expands to an initialization
expression, then it uses that in SENSOR_DEVICE_ATTR, which declares
and initializes a struct sensor_device_attribute.
The split allows use of the initialization expression separately, in
array declaration/initializations, as done in following patch.
__SENSOR_DEVICE_ATTR() imitates __ATTR in include/linux/device.h
With __SENSOR_DEVICE_ATTR's defined by 05, we now use them to
initialize a whole array of struct sensor_device_attributes. This
allows us to loop over the array, and call device_create_file() for
The 'skews' are now expressed in 2 of __SENSOR_DEVICE_ATTR's args; 1st
arg is sysfs-label, often starting at 1_, last arg is index, always 0
except for therm-units, which are using VLMs 11,12,13, and hence have
a +11 term in them.
[jimc at harpo pset-pc87360-sda-array]$ diffstat i2c-pc87360-sda-array-0*
D-1/include/linux/hwmon-sysfs.h | 20 +-
D-2/drivers/hwmon/pc87360.c | 347 ++++++++++++++++++----------------------
2 files changed, 175 insertions(+), 192 deletions(-)
and non-debug module sizes:
[jimc at harpo i2c-stuff]$ ll D-*/drivers/hwmon/pc87360.ko
-rw-rw-r-- 1 jimc jimc 157856 Aug 31 13:04 D-1/drivers/hwmon/pc87360.ko
-rw-rw-r-- 1 jimc jimc 143256 Aug 31 13:05 D-2/drivers/hwmon/pc87360.ko
The 2 patches each incrementally; apply and compile clean, and pass
this cursory test:
Signed-off-by: Jim Cromie <jim.cromie at gmail.com>
More information about the lm-sensors