linux/drivers/hwmon
Linus Torvalds ca7e917769 Rework of APIC enumeration and topology evaluation:
The current implementation has a couple of shortcomings:
 
   - It fails to handle hybrid systems correctly.
 
   - The APIC registration code which handles CPU number assignents is in
     the middle of the APIC code and detached from the topology evaluation.
 
   - The various mechanisms which enumerate APICs, ACPI, MPPARSE and guest
     specific ones, tweak global variables as they see fit or in case of
     XENPV just hack around the generic mechanisms completely.
 
   - The CPUID topology evaluation code is sprinkled all over the vendor
     code and reevaluates global variables on every hotplug operation.
 
   - There is no way to analyze topology on the boot CPU before bringing up
     the APs. This causes problems for infrastructure like PERF which needs
     to size certain aspects upfront or could be simplified if that would be
     possible.
 
   - The APIC admission and CPU number association logic is incomprehensible
     and overly complex and needs to be kept around after boot instead of
     completing this right after the APIC enumeration.
 
 This update addresses these shortcomings with the following changes:
 
   - Rework the CPUID evaluation code so it is common for all vendors and
     provides information about the APIC ID segments in a uniform way
     independent of the number of segments (Thread, Core, Module, ..., Die,
     Package) so that this information can be computed instead of rewriting
     global variables of dubious value over and over.
 
   - A few cleanups and simplifcations of the APIC, IO/APIC and related
     interfaces to prepare for the topology evaluation changes.
 
   - Seperation of the parser stages so the early evaluation which tries to
     find the APIC address can be seperately overridden from the late
     evaluation which enumerates and registers the local APIC as further
     preparation for sanitizing the topology evaluation.
 
   - A new registration and admission logic which
 
      - encapsulates the inner workings so that parsers and guest logic
        cannot longer fiddle in it
 
      - uses the APIC ID segments to build topology bitmaps at registration
        time
 
      - provides a sane admission logic
 
      - allows to detect the crash kernel case, where CPU0 does not run on
        the real BSP, automatically. This is required to prevent sending
        INIT/SIPI sequences to the real BSP which would reset the whole
        machine. This was so far handled by a tedious command line
        parameter, which does not even work in nested crash scenarios.
 
      - Associates CPU number after the enumeration completed and prevents
        the late registration of APICs, which was somehow tolerated before.
 
   - Converting all parsers and guest enumeration mechanisms over to the
     new interfaces.
 
     This allows to get rid of all global variable tweaking from the parsers
     and enumeration mechanisms and sanitizes the XEN[PV] handling so it can
     use CPUID evaluation for the first time.
 
   - Mopping up existing sins by taking the information from the APIC ID
     segment bitmaps.
 
     This evaluates hybrid systems correctly on the boot CPU and allows for
     cleanups and fixes in the related drivers, e.g. PERF.
 
 The series has been extensively tested and the minimal late fallout due to
 a broken ACPI/MADT table has been addressed by tightening the admission
 logic further.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmXuDawTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYobE7EACngItF+UOTCoCV6och2lL6HVoIdZD1
 Y5oaAgD+WzQSz/lBkH6b9kZSyvjlMo6O9GlnGX+ii+VUnijDp4VrspnxbJDaKEq3
 gOfsSg2Tk+ps50HqMcZawjjBYJb/TmvKwEV2XuzIBPOONSWLNjvN7nBSzLl1eF9/
 8uCE39/8aB5K3GXryRyXdo2uLu6eHTVC0aYFu/kLX1/BbVqF5NMD3sz9E9w8+D/U
 MIIMEMXy4Fn+P2o0vVH+gjUlwI76mJbB1WqCX/sqbVacXrjl3KfNJRiisTFIOOYV
 8o+rIV0ef5X9xmZqtOXAdyZQzj++Gwmz9+4TU1M4YHtS7UkYn6AluOjvVekCc+gc
 qXE3WhqKfCK2/carRMLQxAMxNeRylkZG+Wuv1Qtyjpe9JX2dTqtems0f4DMp9DKf
 b7InO3z39kJanpqcUG2Sx+GWanetfnX+0Ho2Moqu6Xi+2ATr1PfMG/Wyr5/WWOfV
 qApaHSTwa+J43mSzP6BsXngEv085EHSGM5tPe7u46MCYFqB21+bMl+qH82KjMkOe
 c6uZovFQMmX2WBlqJSYGVCH+Jhgvqq8HFeRs19Hd4enOt3e6LE3E74RBVD1AyfLV
 1b/m8tYB/o871ZlEZwDCGVrV/LNnA7PxmFpq5ZHLpUt39g2/V0RH1puBVz1e97pU
 YsTT7hBCUYzgjQ==
 =/5oR
 -----END PGP SIGNATURE-----

Merge tag 'x86-apic-2024-03-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 APIC updates from Thomas Gleixner:
 "Rework of APIC enumeration and topology evaluation.

  The current implementation has a couple of shortcomings:

   - It fails to handle hybrid systems correctly.

   - The APIC registration code which handles CPU number assignents is
     in the middle of the APIC code and detached from the topology
     evaluation.

   - The various mechanisms which enumerate APICs, ACPI, MPPARSE and
     guest specific ones, tweak global variables as they see fit or in
     case of XENPV just hack around the generic mechanisms completely.

   - The CPUID topology evaluation code is sprinkled all over the vendor
     code and reevaluates global variables on every hotplug operation.

   - There is no way to analyze topology on the boot CPU before bringing
     up the APs. This causes problems for infrastructure like PERF which
     needs to size certain aspects upfront or could be simplified if
     that would be possible.

   - The APIC admission and CPU number association logic is
     incomprehensible and overly complex and needs to be kept around
     after boot instead of completing this right after the APIC
     enumeration.

  This update addresses these shortcomings with the following changes:

   - Rework the CPUID evaluation code so it is common for all vendors
     and provides information about the APIC ID segments in a uniform
     way independent of the number of segments (Thread, Core, Module,
     ..., Die, Package) so that this information can be computed instead
     of rewriting global variables of dubious value over and over.

   - A few cleanups and simplifcations of the APIC, IO/APIC and related
     interfaces to prepare for the topology evaluation changes.

   - Seperation of the parser stages so the early evaluation which tries
     to find the APIC address can be seperately overridden from the late
     evaluation which enumerates and registers the local APIC as further
     preparation for sanitizing the topology evaluation.

   - A new registration and admission logic which

       - encapsulates the inner workings so that parsers and guest logic
         cannot longer fiddle in it

       - uses the APIC ID segments to build topology bitmaps at
         registration time

       - provides a sane admission logic

       - allows to detect the crash kernel case, where CPU0 does not run
         on the real BSP, automatically. This is required to prevent
         sending INIT/SIPI sequences to the real BSP which would reset
         the whole machine. This was so far handled by a tedious command
         line parameter, which does not even work in nested crash
         scenarios.

       - Associates CPU number after the enumeration completed and
         prevents the late registration of APICs, which was somehow
         tolerated before.

   - Converting all parsers and guest enumeration mechanisms over to the
     new interfaces.

     This allows to get rid of all global variable tweaking from the
     parsers and enumeration mechanisms and sanitizes the XEN[PV]
     handling so it can use CPUID evaluation for the first time.

   - Mopping up existing sins by taking the information from the APIC ID
     segment bitmaps.

     This evaluates hybrid systems correctly on the boot CPU and allows
     for cleanups and fixes in the related drivers, e.g. PERF.

  The series has been extensively tested and the minimal late fallout
  due to a broken ACPI/MADT table has been addressed by tightening the
  admission logic further"

* tag 'x86-apic-2024-03-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (76 commits)
  x86/topology: Ignore non-present APIC IDs in a present package
  x86/apic: Build the x86 topology enumeration functions on UP APIC builds too
  smp: Provide 'setup_max_cpus' definition on UP too
  smp: Avoid 'setup_max_cpus' namespace collision/shadowing
  x86/bugs: Use fixed addressing for VERW operand
  x86/cpu/topology: Get rid of cpuinfo::x86_max_cores
  x86/cpu/topology: Provide __num_[cores|threads]_per_package
  x86/cpu/topology: Rename topology_max_die_per_package()
  x86/cpu/topology: Rename smp_num_siblings
  x86/cpu/topology: Retrieve cores per package from topology bitmaps
  x86/cpu/topology: Use topology logical mapping mechanism
  x86/cpu/topology: Provide logical pkg/die mapping
  x86/cpu/topology: Simplify cpu_mark_primary_thread()
  x86/cpu/topology: Mop up primary thread mask handling
  x86/cpu/topology: Use topology bitmaps for sizing
  x86/cpu/topology: Let XEN/PV use topology from CPUID/MADT
  x86/xen/smp_pv: Count number of vCPUs early
  x86/cpu/topology: Assign hotpluggable CPUIDs during init
  x86/cpu/topology: Reject unknown APIC IDs on ACPI hotplug
  x86/topology: Add a mechanism to track topology via APIC IDs
  ...
2024-03-11 15:45:55 -07:00
..
occ hwmon: (occ/p9_sbe) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
peci hwmon: (peci/dimmtemp) Bump timeout 2023-12-11 06:21:01 -08:00
pmbus hwmon: (pmbus/mp2975) Correct comment inside 'mp2975_read_byte_data' 2024-01-27 08:03:18 -08:00
abituguru3.c hwmon: (abituguru3) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
abituguru.c hwmon: (abituguru) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
acpi_power_meter.c hwmon: (acpi_power_meter) Fix 4.29 MW bug 2023-11-30 20:12:28 -08:00
ad7314.c
ad7414.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ad7418.c hwmon: (ad7418) fix Wvoid-pointer-to-enum-cast warning 2023-08-21 06:04:30 -07:00
adc128d818.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adcxx.c spi: make remove callback a void function 2022-02-09 13:00:45 +00:00
adm1021.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adm1025.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adm1026.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adm1029.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adm1031.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adm1177.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adm9240.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ads7828.c hwmon: (ads7828) fix Wvoid-pointer-to-enum-cast warning 2023-08-21 06:04:30 -07:00
ads7871.c
adt7x10.c hwmon: adt7x10: constify pointers to hwmon_channel_info 2023-04-19 07:08:34 -07:00
adt7x10.h hwmon: (adt7x10) Switch to EXPORT_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() 2022-09-25 14:22:12 -07:00
adt7310.c hwmon: (adt7x10) Switch to EXPORT_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() 2022-09-25 14:22:12 -07:00
adt7410.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adt7411.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adt7462.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adt7470.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
adt7475.c hwmon: (adt7475) Add support for Imon readout on ADT7490 2023-10-27 07:27:25 -07:00
aht10.c hwmon: (aht10) Add support for compatible aht20 2023-06-08 06:41:18 -07:00
amc6821.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
applesmc.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
aquacomputer_d5next.c hwmon: (aquacomputer_d5next) Remove unneeded CONFIG_DEBUG_FS #ifdef 2024-01-02 08:44:57 -08:00
as370-hwmon.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
asb100.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
asc7621.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
aspeed-pwm-tacho.c hwmon: (aspeed-pwm-tacho) mutex for tach reading 2024-02-04 06:43:44 -08:00
asus_atk0110.c ACPI: make remove callback of ACPI driver void 2022-11-23 19:11:22 +01:00
asus_wmi_sensors.c hwmon: (asus_wmi_sensors) Replace deprecated strncpy() with strscpy() 2023-09-29 14:48:31 -07:00
asus-ec-sensors.c hwmon: (asus-ec-sensors) add ROG Crosshair X670E Gene. 2023-10-28 09:21:59 -07:00
atxp1.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
axi-fan-control.c hwmon: (axi-fan-control) Fix possible NULL pointer dereference 2023-10-25 11:56:22 -07:00
bt1-pvt.c hwmon: (bt1-pvt) Convert to devm_platform_ioremap_resource() 2023-08-21 06:04:29 -07:00
bt1-pvt.h
coretemp.c x86/cpu/topology: Rename topology_max_die_per_package() 2024-02-15 22:07:45 +01:00
corsair-cpro.c hwmon: (corsair-cpro) use NULL instead of 0 2023-12-11 06:42:31 -08:00
corsair-psu.c hwmon: (corsair-psu) Fix probe when built-in 2023-12-08 10:36:02 -08:00
da9052-hwmon.c hwmon: (da9052-hwmon) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
da9055-hwmon.c
dell-smm-hwmon.c hwmon: (dell-smm) Add Optiplex 7000 to fan control whitelist 2023-12-11 06:21:01 -08:00
dme1737.c hwmon: (dme1737) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
drivetemp.c Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
ds620.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ds1621.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
emc6w201.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
emc1403.c hwmon: (emc1403) Add support for EMC1442 2023-12-11 06:20:28 -08:00
emc2103.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
emc2305.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
f71805f.c hwmon: (f71805f) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
f71882fg.c hwmon: (f71882fg) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
f75375s.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
fam15h_power.c x86/cpu/topology: Get rid of cpuinfo::x86_max_cores 2024-02-16 15:51:32 +01:00
fschmd.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ftsteutates.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
g760a.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
g762.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
gigabyte_waterforce.c hwmon: gigabyte_waterforce: Fix locking bug in waterforce_get_status() 2024-01-26 10:39:53 -08:00
gl518sm.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
gl520sm.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
gpio-fan.c hwmon: (gpio-fan) drop of_match_ptr for ID table 2023-04-19 07:08:31 -07:00
gsc-hwmon.c hwmon: (gsc-hwmon) fix fan pwm temperature scaling 2023-06-08 06:35:52 -07:00
gxp-fan-ctrl.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
hih6130.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
hp-wmi-sensors.c hwmon: (hp-wmi-sensors) Fix failure to load on EliteDesk 800 G6 2023-12-11 06:21:01 -08:00
hs3001.c hwmon: (hs3001) remove redundant store on division 2023-10-28 09:21:22 -07:00
hwmon-vid.c
hwmon.c hwmon: (core) Finish renaming groups parameter in API to extra_groups 2023-06-08 06:41:18 -07:00
i5k_amb.c hwmon: (i5k_amb) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
i5500_temp.c hwmon: i5500_temp: constify pointers to hwmon_channel_info 2023-04-19 07:08:35 -07:00
ibmaem.c hwmon: (ibmaem) don't call platform_device_del() if platform_device_add() fails 2022-07-01 11:53:29 -07:00
ibmpex.c hwmon: ibmpex: remove unnecessary (void*) conversions 2023-02-03 07:30:10 -08:00
ibmpowernv.c hwmon: (ibmpowernv) Replace deprecated strncpy() with memcpy() 2023-09-29 14:48:31 -07:00
iio_hwmon.c hwmon: (iio_hwmon) use dev_err_probe 2023-02-03 07:30:11 -08:00
ina2xx.c hwmon: (ina2xx) fix Wvoid-pointer-to-enum-cast warning 2023-08-21 06:04:30 -07:00
ina209.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ina238.c hwmon: (ina238) add ina237 support 2023-10-28 09:21:59 -07:00
ina3221.c hwmon: (ina3221) Add support for channel summation disable 2023-10-28 09:21:48 -07:00
intel-m10-bmc-hwmon.c mfd: intel-m10-bmc: Move m10bmc_sys_read() away from header 2023-06-15 09:19:36 +01:00
it87.c hwmon: (it87) Add support to detect sensor type AMDTSI 2023-08-21 06:04:29 -07:00
jc42.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
k8temp.c hwmon: k8temp: constify pointers to hwmon_channel_info 2023-04-19 07:08:36 -07:00
k10temp.c hwmon: (k10temp) Add support for AMD Family 19h Model 8h 2024-01-02 08:44:57 -08:00
Kconfig hwmon: Add driver for Gigabyte AORUS Waterforce AIO coolers 2024-01-02 08:44:57 -08:00
lan966x-hwmon.c hwmon: (lan966x) Use the devm_clk_get_enabled() helper function 2023-08-21 06:04:29 -07:00
lineage-pem.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm63.c hwmon: (lm63) fix Wvoid-pointer-to-enum-cast warning 2023-08-21 06:04:30 -07:00
lm70.c hwmon: (lm70) Add ti,tmp125 support 2022-02-27 17:03:19 -08:00
lm73.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm75.c hwmon: (lm75) Fix tmp112 default config 2024-01-08 07:26:34 -08:00
lm75.h hwmon: (lm75) Replace kernel.h with the necessary inclusions 2022-07-13 08:38:19 -07:00
lm77.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm78.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm80.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm83.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm85.c hwmon: (lm85) fix Wvoid-pointer-to-enum-cast warning 2023-08-21 06:04:30 -07:00
lm87.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm90.c hwmon: (lm90) fix Wvoid-pointer-to-enum-cast warning 2023-08-21 06:04:30 -07:00
lm92.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm93.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm95234.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm95241.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
lm95245.c hwmon: (lm95245) Use maple tree register cache 2023-06-10 07:37:02 -07:00
lochnagar-hwmon.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
ltc2945.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltc2947-core.c hwmon: ltc2947: constify pointers to hwmon_channel_info 2023-04-19 07:08:36 -07:00
ltc2947-i2c.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltc2947-spi.c hwmon: (ltc2947) Switch to EXPORT_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() 2022-09-25 14:22:12 -07:00
ltc2947.h
ltc2990.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltc2991.c hwmon: (ltc2991) remove device reference from state 2023-12-11 06:20:28 -08:00
ltc2992.c hwmon: (ltc2992) Avoid division by zero 2023-10-28 09:21:36 -07:00
ltc4151.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltc4215.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltc4222.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltc4245.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltc4260.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltc4261.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
ltq-cputemp.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
Makefile hwmon: Add driver for Gigabyte AORUS Waterforce AIO coolers 2024-01-02 08:44:57 -08:00
max127.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
max197.c hwmon: (max197) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
max1111.c ARM: pxa: fix missing-prototypes warnings 2023-05-26 13:33:05 +02:00
max1619.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
max1668.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
max6620.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
max6621.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
max6639.c hwmon: (max6639) Add compatible string 2023-08-21 06:04:30 -07:00
max6642.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
max6650.c hwmon: (max6650) Use i2c_get_match_data() 2023-12-11 06:20:28 -08:00
max6697.c hwmon: (max6697) fix Wvoid-pointer-to-enum-cast warning 2023-08-21 06:04:31 -07:00
max16065.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
max31722.c hwmon: (max31722) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() 2022-09-25 14:22:12 -07:00
max31730.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
max31760.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
max31790.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
max31827.c hwmon: (max31827) Add custom attribute for resolution 2023-12-11 06:42:58 -08:00
mc34vr500.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
mc13783-adc.c hwmon: (mc13783-adc) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
mcp3021.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
menf21bmc_hwmon.c
mlxreg-fan.c hwmon: (mlxreg-fan) Extend number of supported fans 2023-08-25 07:43:04 -07:00
mr75203.c hwmon: Include <linux/kstrtox.h> when appropriate 2022-12-04 16:45:02 -08:00
nct6683.c hwmon: (nct6683) Add another customer ID for ASRock X670E Taichi 2023-10-28 09:21:36 -07:00
nct6775-core.c hwmon: (nct6775) Fix access to temperature configuration registers 2024-02-21 13:56:33 -08:00
nct6775-i2c.c hwmon: (nct6775-i2c) Use i2c_get_match_data() 2023-12-11 06:20:28 -08:00
nct6775-platform.c hwmon: (nct6775-platform) Explicitly initialize nct6775_sio_names indexes 2023-12-11 06:20:28 -08:00
nct6775.h hwmon: (nct6775-i2c) Use i2c_get_match_data() 2023-12-11 06:20:28 -08:00
nct7802.c hwmon: (nct7802) Fix for temp6 (PECI1) processed even if PECI1 disabled 2023-07-24 07:01:40 -07:00
nct7904.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
npcm750-pwm-fan.c hwmon: (npcm750-pwm-fan) Fix crash observed when instantiating nuvoton,npcm750-pwm-fan 2024-01-14 07:44:38 -08:00
nsa320-hwmon.c hwmon: (nsa320-hwmon) Remove redundant of_match_ptr() 2023-08-21 06:04:31 -07:00
ntc_thermistor.c hwmon: ntc_thermistor: constify pointers to hwmon_channel_info 2023-04-19 07:08:37 -07:00
nzxt-kraken2.c hwmon: (nzxt-kraken2) Fix error handling path in kraken2_probe() 2023-12-03 09:07:26 -08:00
nzxt-smart2.c hwmon: nzxt: constify pointers to hwmon_channel_info 2023-04-19 07:08:37 -07:00
oxp-sensors.c hwmon: (oxp-sensors) Move board detection to the init function 2023-08-21 06:04:29 -07:00
pc87360.c hwmon: (pc87360) Bounds check data->innr usage 2023-12-11 06:21:01 -08:00
pc87427.c hwmon: (pc87427) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
pcf8591.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
powerz.c hwmon: (powerz) add support for ChargerLAB KM002C 2023-10-27 07:27:25 -07:00
powr1220.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
pwm-fan.c pwm: Rename pwm_apply_state() to pwm_apply_might_sleep() 2023-12-20 16:07:04 +01:00
raspberrypi-hwmon.c hwmon: raspberrypi: constify pointers to hwmon_channel_info 2023-04-19 07:08:38 -07:00
sbrmi.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
sbtsi_temp.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
sch56xx-common.c hwmon: (sch5627) Add support for writing limit registers 2023-10-27 07:27:24 -07:00
sch56xx-common.h hwmon: (sch5627) Add support for writing limit registers 2023-10-27 07:27:24 -07:00
sch5627.c hwmon: (sch5627) Add support for writing limit registers 2023-10-27 07:27:24 -07:00
sch5636.c hwmon: (sch5636) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
scmi-hwmon.c thermal: Add a thermal zone id accessor 2023-03-03 20:45:02 +01:00
scpi-hwmon.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
sfctemp.c hwmon: (sfctemp) Simplify error message 2023-04-19 07:08:40 -07:00
sht3x.c hwmon: (sht3x) convert some of sysfs interface to hwmon 2023-08-21 06:04:30 -07:00
sht4x.c hwmon: Fix some kernel-doc comments 2023-12-11 06:20:28 -08:00
sht15.c hwmon: (sht15) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
sht21.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
shtc1.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
sis5595.c hwmon: (sis5595) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
sl28cpld-hwmon.c hwmon: sl28cpld: constify pointers to hwmon_channel_info 2023-04-19 07:08:38 -07:00
smpro-hwmon.c hwmon: smpro: constify pointers to hwmon_channel_info 2023-04-19 07:08:38 -07:00
smsc47b397.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
smsc47m1.c hwmon: (smsc47m1) Rename global platform device variable 2024-01-02 08:44:57 -08:00
smsc47m192.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
sparx5-temp.c hwmon: sparx5-temp: constify pointers to hwmon_channel_info 2023-04-19 07:08:38 -07:00
stts751.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
sy7636a-hwmon.c hwmon: sy7636a: constify pointers to hwmon_channel_info 2023-04-19 07:08:38 -07:00
tc74.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
tc654.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
thmc50.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
tmp102.c hwmon: (tmp102) Use maple tree register cache 2023-06-10 07:37:02 -07:00
tmp103.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
tmp108.c hwmon: (tmp108) Use maple tree register cache 2023-06-10 07:37:02 -07:00
tmp401.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
tmp421.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
tmp464.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
tmp513.c hwmon: (tmp513) Use SI constants from units.h 2023-12-11 06:21:01 -08:00
tps23861.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
ultra45_env.c hwmon: (ultra45_env) Convert to platform remove callback returning void 2023-10-27 07:27:24 -07:00
vexpress-hwmon.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
via686a.c hwmon: (via686a) Convert to platform remove callback returning void 2023-10-27 07:27:25 -07:00
via-cputemp.c hwmon: (via-cputemp) Convert to platform remove callback returning void 2023-10-27 07:27:25 -07:00
vt1211.c hwmon: (vt1211) Convert to platform remove callback returning void 2023-10-27 07:27:25 -07:00
vt8231.c hwmon: (vt8231) Convert to platform remove callback returning void 2023-10-27 07:27:25 -07:00
w83l785ts.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
w83l786ng.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
w83627ehf.c hwmon: w83627ehf: constify pointers to hwmon_channel_info 2023-04-19 07:08:39 -07:00
w83627hf.c hwmon: (w83627hf) Convert to platform remove callback returning void 2023-10-27 07:27:25 -07:00
w83773g.c hwmon: Explicitly include correct DT includes 2023-08-21 06:04:29 -07:00
w83781d.c hwmon: (w83781d) Convert to platform remove callback returning void 2023-10-27 07:27:25 -07:00
w83791d.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
w83792d.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
w83793.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
w83795.c hwmon: Switch i2c drivers back to use .probe() 2023-06-08 06:41:17 -07:00
wm831x-hwmon.c
wm8350-hwmon.c
xgene-hwmon.c hwmon updates for v6.7-rc1 2023-10-31 17:44:17 -10:00