linux/drivers/hwmon
Linus Torvalds ecc5fbd5ef pwm: Changes for v4.7-rc1
This set of changes introduces an atomic API to the PWM subsystem. This
 is influenced by the DRM atomic API that was introduced a while back,
 though it is obviously a lot simpler. The fundamental idea remains the
 same, though: drivers provide a single callback to implement the atomic
 configuration of a PWM channel.
 
 As a side-effect the PWM subsystem gains the ability for initial state
 retrieval, so that the logical state mirrors that of the hardware. Many
 use-cases don't care about this, but for others it is essential.
 
 These new features require changes in all users, which these patches
 take care of. The core is transitioned to use the atomic callback if
 available and provides a fallback mechanism for other drivers.
 
 Changes to transition users and drivers to the atomic API are postponed
 to v4.8.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJXRcVWAAoJEN0jrNd/PrOhO3EP/RDuuco1fROml1ElCjcnWWfv
 3dPyKEJhZktMmRNd/V0zMUJiOwr77wlbX4oQ5HajMHNYFQ65jfihbbylhSDepnxg
 mjKV/yo18rzYZt9fv8huwvlwMOlLrJ9wQn4Gkbr5tzke6nITp52DTNH5y/anPQIk
 B7neA1TerodAbE9FWjYuBZIltkmYZDqdm//RCHXVyYym8VuotE+jf+nrMXI78FoL
 lgG64z/2OaGI+NZJQcpWftuz9nnenpa3sSLrvpitWEb/dAsXroMW/f08uVuOW87v
 0xk7N7zmEkef7izVOWiPOK/MxIdc8hI4A5JftzMJ7nbgJvwG78dJiOxgFhrJYx0z
 7zrYfjvvzjW0dpjZUvO37T/V5Rfxrk9sM7qUHJmN0+1oEkkCo1/c75JWTU2AmT4l
 qkJdOGhgv7LumIiwbEyxc/5Jyh1akKOUX2svO0+0dptLRX2UpN3yeKIYinG1dAuT
 86+/uuM6CL5gc+jVZ3GLNWfzHUu2RFVX0r0pzywq53pK5gMEs5WyxoIb5mHb8liA
 sHsrZ3wbGGn95yZo8CwkzXIUsUH7qKYK+UVWA6OVBoTq4AOBZtII1AqvUttl25qL
 xuKpj70xaBhK7VGqzDYQ68lqBaRySh+yzL/QsmnPEyx59mW81ytMrsn1Kmnuae2l
 bzUsnWrpHc6530fRggTD
 =sxT9
 -----END PGP SIGNATURE-----

Merge tag 'pwm/for-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm

Pull pwm updates from Thierry Reding:
 "This set of changes introduces an atomic API to the PWM subsystem.
  This is influenced by the DRM atomic API that was introduced a while
  back, though it is obviously a lot simpler.  The fundamental idea
  remains the same, though: drivers provide a single callback to
  implement the atomic configuration of a PWM channel.

  As a side-effect the PWM subsystem gains the ability for initial state
  retrieval, so that the logical state mirrors that of the hardware.
  Many use-cases don't care about this, but for others it is essential.

  These new features require changes in all users, which these patches
  take care of.  The core is transitioned to use the atomic callback if
  available and provides a fallback mechanism for other drivers.

  Changes to transition users and drivers to the atomic API are
  postponed to v4.8"

* tag 'pwm/for-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (30 commits)
  pwm: Add information about polarity, duty cycle and period to debugfs
  pwm: Switch to the atomic API
  pwm: Update documentation
  pwm: Add core infrastructure to allow atomic updates
  pwm: Add hardware readout infrastructure
  pwm: Move the enabled/disabled info into pwm_state
  pwm: Introduce the pwm_state concept
  pwm: Keep PWM state in sync with hardware state
  ARM: Explicitly apply PWM config extracted from pwm_args
  drm: i915: Explicitly apply PWM config extracted from pwm_args
  input: misc: pwm-beeper: Explicitly apply PWM config extracted from pwm_args
  input: misc: max8997: Explicitly apply PWM config extracted from pwm_args
  backlight: lm3630a: explicitly apply PWM config extracted from pwm_args
  backlight: lp855x: Explicitly apply PWM config extracted from pwm_args
  backlight: lp8788: Explicitly apply PWM config extracted from pwm_args
  backlight: pwm_bl: Use pwm_get_args() where appropriate
  fbdev: ssd1307fb: Use pwm_get_args() where appropriate
  regulator: pwm: Use pwm_get_args() where appropriate
  leds: pwm: Use pwm_get_args() where appropriate
  input: misc: max77693: Use pwm_get_args() where appropriate
  ...
2016-05-25 10:40:15 -07:00
..
pmbus hwmon: (adm1275) Add support for ADM1278 2016-03-05 06:36:03 -08:00
ab8500.c hwmon: (ab8500) Call kernel_power_off instead of pm_power_off 2014-10-03 08:19:02 -07:00
abituguru3.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
abituguru.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
abx500.c hwmon: (abx500) drop the use of IRQF_NO_SUSPEND 2015-10-14 07:57:14 -07:00
abx500.h
acpi_power_meter.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
ad7314.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
ad7414.c hwmon: (ad7414) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:35 -07:00
ad7418.c hwmon: (ad7418) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:35 -07:00
adc128d818.c hwmon: (adc128d818) Do proper sign extension 2015-01-25 21:24:00 -08:00
adcxx.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adm1021.c hwmon: (adm1021) Avoid forward declaration 2014-08-04 07:01:36 -07:00
adm1025.c hwmon: (adm1025) Fix vrm write operation 2014-08-05 19:44:36 -07:00
adm1026.c hwmon: (adm1026) Fix vrm write operation 2014-08-05 19:44:36 -07:00
adm1029.c hwmon: (adm1029) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:35 -07:00
adm1031.c hwmon: (adm1031) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
adm9240.c hwmon: (adm9240) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
ads1015.c hwmon: (ads1015) Handle negative conversion values correctly 2016-02-18 19:14:04 -08:00
ads7828.c hwmon: (ads7828) Enable internal reference 2016-04-19 06:30:28 -07:00
ads7871.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adt7x10.c
adt7x10.h
adt7310.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adt7410.c
adt7411.c hwmon: (adt7411) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:40 -07:00
adt7462.c hwmon: (adt7462) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:39 -07:00
adt7470.c hwmon: (adt7470) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:39 -07:00
adt7475.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
amc6821.c hwmon: (amc6821) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:35 -07:00
applesmc.c hwmon : (applesmc) Fix uninitialized variables warnings 2015-11-15 21:52:39 -08:00
asb100.c hwmon: (asb100) Fix vrm write operation 2014-08-05 19:44:36 -07:00
asc7621.c hwmon: (asc7621) Make map tables const 2014-08-04 07:01:38 -07:00
asus_atk0110.c fs.h, drivers/hwmon/asus_atk0110.c: fix DEFINE_SIMPLE_ATTRIBUTE semicolon definition and use 2014-08-06 18:01:23 -07:00
atxp1.c hwmon: (atxp1) Drop auto-detection 2015-05-31 22:58:36 -07:00
coretemp.c hwmon: (coretemp) Increase limit of maximum core ID from 32 to 128. 2015-10-14 07:57:14 -07:00
da9052-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
da9055-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
dell-smm-hwmon.c hwmon: (dell-smm) Blacklist Dell Studio XPS 8000 2016-01-24 19:26:18 -08:00
dme1737.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
ds620.c hwmon: (ds620) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:38 -07:00
ds1621.c hwmon: (ds1621) Update zbits after conversion rate change 2014-08-28 11:18:47 -07:00
emc6w201.c hwmon: (emc6w201) Fix temperature limit range 2014-08-05 17:49:12 -07:00
emc1403.c hwmon: Make regmap configs const 2014-08-04 07:01:35 -07:00
emc2103.c hwmon: (emc2103) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:40 -07:00
f71805f.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
f71882fg.c hwmon: (f71882fg) Add support for f81768d 2015-08-09 13:44:26 -07:00
f75375s.c hwmon: (f75375s) Don't crash the kernel unnecessarily 2013-10-13 16:16:27 -07:00
fam15h_power.c hwmon: (fam15h_power) Add platform check function 2016-04-19 06:32:35 -07:00
fschmd.c
g760a.c hwmon: (g760a) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
g762.c hwmon: (g762) Drop owner assignment from struct i2c_driver 2015-08-09 13:44:26 -07:00
gl518sm.c hwmon: (gl518sm) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:36 -07:00
gl520sm.c hwmon: (gl520sm) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:36 -07:00
gpio-fan.c hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook 2016-02-19 17:14:25 -08:00
hih6130.c hwmon: (hih6130) Fix missing hih6130->write_length setting 2014-08-05 19:40:27 -07:00
hwmon-vid.c hwmon: (hwmon-vid) Add __maybe_unused attribute to dummy variable 2013-09-10 06:28:17 -07:00
hwmon.c hwmon: Do not accept invalid name attributes 2014-03-03 08:01:06 -08:00
i5k_amb.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
i5500_temp.c hwmon: (i5500_temp) Convert to use ATTRIBUTE_GROUPS macro 2015-01-24 14:16:22 +01:00
ibmaem.c hwmon: (ibmaem) constify aem_rw_sensor_template and aem_ro_sensor_template structures 2016-01-04 08:56:22 -08:00
ibmpex.c hwmon: (ibmpex) Allow format string checking 2015-03-09 09:59:35 -07:00
ibmpowernv.c hwmon: (ibmpowernv) Add OF compatibility table entry 2015-10-14 07:57:14 -07:00
iio_hwmon.c hwmon: (iio_hwmon) Allow the driver to accept hypen in device tree node names 2016-03-05 06:25:34 -08:00
ina2xx.c hwmon: (ina2xx) remove no longer used variable 'kind' 2015-10-31 08:46:01 -07:00
ina209.c hwmon: (ina209) Convert to use devm_hwmon_device_register_with_groups 2013-10-18 09:11:57 -07:00
it87.c hwmon: (it87) Add support for IT8628E 2016-04-19 06:32:38 -07:00
jc42.c hwmon: (jc42) Add support for additional IDT temperature sensors 2015-03-09 09:59:35 -07:00
jz4740-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
k8temp.c hwmon: remove DEFINE_PCI_DEVICE_TABLE macro 2014-01-14 21:36:30 -08:00
k10temp.c hwmon: (k10temp) Remove duplicate pci-id define 2015-11-09 10:14:29 +01:00
Kconfig hwmon: (it87) Add support for IT8628E 2016-04-19 06:32:38 -07:00
lineage-pem.c hwmon: (lineage-pem) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
lm63.c hwmon: (lm63) Fix smatch warnings 2014-08-04 07:01:36 -07:00
lm70.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
lm73.c hwmon: (lm73) Convert to use devm_hwmon_device_register_with_groups 2013-10-13 16:16:28 -07:00
lm75.c hwmon: (lm75) Add support for TMP75C 2015-10-14 07:57:14 -07:00
lm75.h
lm77.c hwmon: (lm77) Prevent overflow problem when writing large limits 2014-07-31 09:41:46 -07:00
lm78.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
lm80.c hwmon: (lm80) Rearrange code to avoid forward declarations 2014-05-21 16:02:26 -07:00
lm83.c hwmon: (lm83) Convert to use devm_hwmon_device_register_with_groups 2014-05-21 16:02:26 -07:00
lm85.c hwmon: (lm85) use find_closest() in x_TO_REG() functions 2015-04-17 09:03:55 -04:00
lm87.c hwmon: (lm87) Fix vrm write operation 2014-08-05 19:44:42 -07:00
lm90.c hwmon: (lm90) Convert to use hwmon_device_register_with_groups 2014-04-04 18:01:35 +02:00
lm92.c hwmon: (lm92) Prevent overflow problem when writing large limits 2014-08-05 17:48:52 -07:00
lm93.c hwmon: (lm93) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:36 -07:00
lm95234.c hwmon: (lm95234) Add support for LM95233 2014-12-02 06:11:53 -08:00
lm95241.c hwmon: (lm95241) Avoid initializing the same field twice 2014-03-03 08:01:04 -08:00
lm95245.c hwmon: (lm95245) Add support for LM95235 2014-12-02 03:44:18 -08:00
ltc2945.c hwmon: Make regmap configs const 2014-08-04 07:01:35 -07:00
ltc2990.c hwmon: Add LTC2990 sensor driver 2016-03-05 06:25:34 -08:00
ltc4151.c hwmon: (ltc4151) Convert to devm_hwmon_device_register_with_groups 2014-06-12 08:36:47 -07:00
ltc4215.c hwmon: (ltc4215) Convert to devm_hwmon_device_register_with_groups 2014-03-03 08:01:05 -08:00
ltc4222.c hwmon: Make regmap configs const 2014-08-04 07:01:35 -07:00
ltc4245.c hwmon: (ltc4245) Remove devicetree conditionals 2014-03-03 08:01:05 -08:00
ltc4260.c hwmon: Make regmap configs const 2014-08-04 07:01:35 -07:00
ltc4261.c hwmon: (ltc4261) fix coccinelle warnings 2013-10-18 09:12:00 -07:00
Makefile hwmon: (max31722) Add support for MAX31722/MAX31723 temperature sensors 2016-04-19 06:32:34 -07:00
max197.c hwmon: (max197) Constify platform_device_id 2015-05-31 22:58:36 -07:00
max1111.c hwmon: (max1111) Return -ENODEV from max1111_read_channel if not instantiated 2016-03-27 10:37:48 -07:00
max1619.c hwmon: (max1619) Convert to use devm_hwmon_device_register_with_groups 2014-05-21 16:02:25 -07:00
max1668.c hwmon: (max1668) Make max1668_addr_list array const 2014-08-04 07:01:39 -07:00
max6639.c hwmon: (max6639) Make normal_i2c array const 2014-08-04 07:01:39 -07:00
max6642.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
max6650.c hwmon: (max6650) Introduce local 'dev' variable 2014-03-03 08:01:06 -08:00
max6697.c hwmon: (max6697) Use of_property_read_bool at appropriate places 2014-08-04 07:01:40 -07:00
max16065.c hwmon: (max16065) Use PTR_ERR_OR_ZERO 2014-08-04 07:01:38 -07:00
max31722.c hwmon: (max31722) Add support for MAX31722/MAX31723 temperature sensors 2016-04-19 06:32:34 -07:00
max31790.c hwmon: (max31790) Fix dereference of ERR_PTR 2015-10-14 07:57:14 -07:00
mc13783-adc.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
mcp3021.c hwmon: (mcp3021) Fix broken output scaling 2015-07-01 13:56:27 -07:00
menf21bmc_hwmon.c Merge branch 'platform/remove_owner' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux into driver-core-next 2014-11-03 19:53:56 -08:00
nct6683.c hwmon: (nct6683) Add basic support for NCT6683 on Mitac boards 2016-01-09 07:31:58 -08:00
nct6775.c hwmon: (nct6683,nct6775) constify sensor_template_group structures 2015-12-18 08:20:59 -08:00
nct7802.c hwmon: (nct7802) Add auto_point attributes 2015-08-09 13:44:27 -07:00
nct7904.c hwmon: (nct7904) Export I2C module alias information 2015-08-05 08:31:59 -07:00
nsa320-hwmon.c hwmon: Create an NSA320 hardware monitoring driver 2016-03-08 18:40:49 -08:00
ntc_thermistor.c hwmon: (ntc_thermistor) Add support for ncpXXxh103 2016-03-05 06:25:34 -08:00
pc87360.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
pc87427.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
pcf8591.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
powr1220.c hwmon: Add support for Lattice's POWR1220 power manager IC 2014-08-04 07:01:33 -07:00
pwm-fan.c hwmon: pwm-fan: Use pwm_get_args() where appropriate 2016-05-17 14:45:00 +02:00
s3c-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
sch56xx-common.c hwmon: (sch56xx) Drop watchdog driver data reference count callbacks 2015-12-29 20:36:04 +01:00
sch56xx-common.h
sch5627.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
sch5636.c hwmon: (sch5636) trivial fix of spelling mistake on revision 2016-04-25 07:26:29 -07:00
scpi-hwmon.c hwmon: (scpi) add energy meter support 2016-02-16 09:26:27 +00:00
sht15.c hwmon:change sht15_reverse() 2015-08-10 23:00:10 -07:00
sht21.c hwmon: (sht21) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:38 -07:00
shtc1.c hwmon: add support for Sensirion SHTC1 sensor 2014-06-12 08:36:48 -07:00
sis5595.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
smm665.c hwmon: (smm665) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
smsc47b397.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
smsc47m1.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
smsc47m192.c hwmon: (smsc47m192) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:39 -07:00
tc74.c hwmon: add driver for Microchip TC74 2015-06-21 22:54:53 -07:00
thmc50.c hwmon: (thmc50) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:39 -07:00
tmp102.c hwmon: (tmp102) Force wait for conversion time for the first valid data 2015-12-10 08:14:22 -08:00
tmp103.c hwmon: (tmp103) Fix resource leak bug in tmp103 temperature sensor driver 2014-09-22 11:11:48 -07:00
tmp401.c hwmon: (tmp401) Do not auto-detect chip on I2C address 0x37 2015-05-29 13:37:06 -07:00
tmp421.c hwmon: (tmp421) Drop FSF mailing address 2014-08-04 07:01:38 -07:00
twl4030-madc-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
ultra45_env.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
vexpress-hwmon.c hwmon: (vexpress) rename vexpress hwmon implementation 2016-03-05 06:25:33 -08:00
via686a.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
via-cputemp.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
vt1211.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
vt8231.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
w83l785ts.c hwmon: Avoid initializing the same field twice 2014-04-04 18:01:34 +02:00
w83l786ng.c hwmon: (w83l786ng) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:34 -07:00
w83627ehf.c hwmon: (w83627ehf) Use swap() in w82627ehf_swap_tempreg() 2015-07-03 14:39:06 +02:00
w83627hf.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
w83781d.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
w83791d.c hwmon: (w83791d) Fix vrm write operation 2014-08-05 19:44:42 -07:00
w83792d.c hwmon: (w83792d) Additional PWM outputs support 2015-07-03 14:39:05 +02:00
w83793.c hwmon: (w83793) Fix vrm write operation 2014-08-05 19:44:42 -07:00
w83795.c hwmon: (w83795) use find_closest_descending() in pwm_freq_to_reg() 2015-04-17 09:03:55 -04:00
wm831x-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
wm8350-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00