linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Guenter Roeck <linux@roeck-us.net>
To: Jean Delvare <jdelvare@suse.com>
Cc: Jonathan Cameron <jic23@kernel.org>,
	Zhang Rui <rui.zhang@intel.com>,
	Eduardo Valentin <edubezval@gmail.com>,
	Punit Agrawal <punit.agrawal@arm.com>,
	linux-pm@vger.kernel.org, linux-iio@vger.kernel.org,
	linux-hwmon@vger.kernel.org, linux-kernel@vger.kernel.org,
	Guenter Roeck <linux@roeck-us.net>
Subject: [PATCH v2 0/9] hwmon: New hwmon registration API
Date: Sat, 16 Jul 2016 22:30:23 -0700	[thread overview]
Message-ID: <1468733432-15730-1-git-send-email-linux@roeck-us.net> (raw)

Up to now, each hwmon driver has to implement its own sysfs attributes.
This requires a lot of template code, and distracts from the driver's
core function to read and write chip registers.

To be able to reduce driver complexity, move sensor attribute handling
and thermal zone registration into the hwmon core. By using the new API,
driver size is typically reduced by 20-50% depending on driver complexity
and the number of sysfs attributes supported.

The first patch of the series is preparatory; it reorders include files
in the hwmon core to make it easier to add or remove individual include
files.

The secind patch of the series introduces the API as well as support
for temperature sensor attributes. Subsequent patches introduce support
for voltage, current, power, energy, humidity, fan speed, and basic pwm
attributes.

The series was tested by converting several drivers (lm75, lm90, tmp102,
tmp421, ltc4245, nct7904, max31790) to the new API. Testing was done with
real chips as well as with the hwmon driver module test code available
at https://github.com/groeck/module-tests.

v2:
- Add patch 1/9 (order include files alphabetically).
- Add patch 9/9 (pwm support).
- Document callback function parameters of struct hwmon_ops in
  include/linux/hwmon.h.
- Clarify that the is_visible() callback is mandatory.
- If an attribute has no template string, treat it as invisible, not as
  error. Affected are virtual attributes such as HWMON_C_REGISTER_TZ.
- Initialize device attribute read/write callback functions unconditionally.
- Cosmetic changes, including typo fixes and added newlines for readability.

             reply	other threads:[~2016-07-17  5:31 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-17  5:30 Guenter Roeck [this message]
2016-07-17  5:30 ` [PATCH v2 1/9] hwmon: (core) Order include files alphabetically Guenter Roeck
2016-07-17  5:30 ` [PATCH v2 2/9] hwmon: (core) New hwmon registration API Guenter Roeck
2016-07-20  7:18   ` [lkp] " Fengguang Wu
2016-07-24 19:08   ` Jonathan Cameron
2016-07-25  2:55     ` Guenter Roeck
2016-07-17  5:30 ` [PATCH v2 3/9] hwmon: (core) Add voltage attribute support to new API Guenter Roeck
2016-07-17  5:30 ` [PATCH v2 4/9] hwmon: (core) Add current " Guenter Roeck
2016-07-17  5:30 ` [PATCH v2 5/9] hwmon: (core) Add power " Guenter Roeck
2016-07-17  5:30 ` [PATCH v2 6/9] hwmon: (core) Add energy and humidity " Guenter Roeck
2016-07-17  5:30 ` [PATCH v2 7/9] hwmon: (core) Add fan " Guenter Roeck
2016-07-17  5:30 ` [PATCH v2 8/9] hwmon: (core) Document new kernel API Guenter Roeck
2016-07-24 19:18   ` Jonathan Cameron
2016-07-17  5:30 ` [PATCH v2 9/9] hwmon: (core) Add basic pwm attribute support to new API Guenter Roeck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1468733432-15730-1-git-send-email-linux@roeck-us.net \
    --to=linux@roeck-us.net \
    --cc=edubezval@gmail.com \
    --cc=jdelvare@suse.com \
    --cc=jic23@kernel.org \
    --cc=linux-hwmon@vger.kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=punit.agrawal@arm.com \
    --cc=rui.zhang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).