1. 09 Apr, 2015 3 commits
    • Guenter Roeck's avatar
      hwmon: (it87) Use feature macros on sio_data · f83a9cb6
      Guenter Roeck authored
      Feature macros work on sio_data as well, so use them there.
      Reviewed-by: default avatarJean Delvare <jdelvare@suse.de>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      f83a9cb6
    • Guenter Roeck's avatar
      hwmon: (ibmpowernv) Fix build error seen for some configurations · 8416915c
      Guenter Roeck authored
      Fix
      drivers/hwmon/ibmpowernv.c: In function 'get_logical_cpu':
      drivers/hwmon/ibmpowernv.c:121:3:
      	error: implicit declaration of function 'get_hard_smp_processor_id'
      
      seen for some configurations, possibly if SMP is not configured.
      
      Fixes: 3df2f59f ("hwmon: (ibmpowernv) pretty print labels")
      Cc: Cédric Le Goater <clg@fr.ibm.com>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      8416915c
    • Nishanth Menon's avatar
      hwmon: (gpio-fan) Move the thermal registration after registration is complete · e76ea261
      Nishanth Menon authored
      Thermal framework may already be ready and cooling policies might
      already be functional when we are attempting to register gpio fan as
      a cooling device. This can be reproduced by changing probe order in
      which registration of various modules are done in a system. In such
      a case, kernel generates an oops since the data structures are not
      completely populated with the wrong assumption that thermal framework
      is not yet ready. Fix this by reordering the thermal framework
      registration to occur after hwmon registration of the fan is complete.
      
      Example kernel oops:
      [  149.005828] Unable to handle kernel NULL pointer dereference at virtual address 0000008c
      [  149.014369] pgd = ecf48000
      [  149.017204] [0000008c] *pgd=ac065831, *pte=00000000, *ppte=00000000
      [  149.023820] Internal error: Oops: 17 [#1] SMP ARM
      [  149.028745] Modules linked in: gpio_fan(+) cpufreq_dt ipv6 evdev leds_gpio led_class omap_wdt phy_omap_usb2 rtc_palmas palmas_pwrbutton tmp102 ti_soc_thermal dwc3_omap thermal_sys extcon rtc_omap rtc_ds1307 hwmon
      [  149.048629] CPU: 1 PID: 1183 Comm: modprobe Not tainted 4.0.0-rc7-next-20150407-00002-g7a82da074c99 #3
      [  149.058383] Hardware name: Generic DRA74X (Flattened Device Tree)
      [  149.064763] task: edec1240 ti: ec0e0000 task.ti: ec0e0000
      [  149.070421] PC is at dev_driver_string+0x0/0x38
      [  149.075165] LR is at __dev_printk+0x24/0x70
      [  149.079540] pc : [<c03d6cd0>]    lr : [<c03d72c4>]    psr: 20000013
      [  149.079540] sp : ec0e1c28  ip : edec1240  fp : 00000000
      [  149.091568] r10: edf3eee0  r9 : 00000000  r8 : ffffffff
      [  149.097040] r7 : edf3eea0  r6 : 00000034  r5 : 00000010  r4 : ec0e1c44
      [  149.103871] r3 : ec0e1c4c  r2 : ec0e1c44  r1 : c079d800  r0 : 00000010
      [  149.110709] Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
      [  149.118182] Control: 10c5387d  Table: acf4806a  DAC: 00000015
      [  149.124198] Process modprobe (pid: 1183, stack limit = 0xec0e0218)
      [  149.130673] Stack: (0xec0e1c28 to 0xec0e2000)
      [  149.135235] 1c20:                   60000013 c05e2ae0 00000000 edf3ec00 ec934a10 c03d73d4
      ...
      [  149.392230] 1fe0: befe1888 befe1878 00019418 b6ea08f0 80000010 00000003 00000000 00000000
      [  149.400798] [<c03d6cd0>] (dev_driver_string) from [<c03d72c4>] (__dev_printk+0x24/0x70)
      [  149.409193] [<c03d72c4>] (__dev_printk) from [<c03d73d4>] (dev_warn+0x34/0x48)
      [  149.416767] [<c03d73d4>] (dev_warn) from [<bf0f54fc>] (get_fan_speed_index+0x94/0xa4 [gpio_fan])
      [  149.425980] [<bf0f54fc>] (get_fan_speed_index [gpio_fan]) from [<bf0f5524>] (gpio_fan_get_cur_state+0x18/0x30 [gpio_fan])
      [  149.437476] [<bf0f5524>] (gpio_fan_get_cur_state [gpio_fan]) from [<bf02767c>] (thermal_zone_trip_update+0xe8/0x2a4 [thermal_sys])
      [  149.449794] [<bf02767c>] (thermal_zone_trip_update [thermal_sys]) from [<bf027844>] (step_wise_throttle+0xc/0x74 [thermal_sys])
      [  149.461832] [<bf027844>] (step_wise_throttle [thermal_sys]) from [<bf024ff4>] (handle_thermal_trip+0x5c/0x188 [thermal_sys])
      [  149.473603] [<bf024ff4>] (handle_thermal_trip [thermal_sys]) from [<bf0256c4>] (thermal_zone_device_update+0x94/0x108 [thermal_sys])
      [  149.486104] [<bf0256c4>] (thermal_zone_device_update [thermal_sys]) from [<bf026470>] (__thermal_cooling_device_register+0x2e8/0x374 [thermal_sys])
      [  149.499956] [<bf026470>] (__thermal_cooling_device_register [thermal_sys]) from [<bf0f58e4>] (gpio_fan_probe+0x350/0x4d0 [gpio_fan])
      [  149.512438] [<bf0f58e4>] (gpio_fan_probe [gpio_fan]) from [<c03db8a0>] (platform_drv_probe+0x48/0x98)
      [  149.522109] [<c03db8a0>] (platform_drv_probe) from [<c03da30c>] (driver_probe_device+0x1b0/0x26c)
      [  149.531399] [<c03da30c>] (driver_probe_device) from [<c03da45c>] (__driver_attach+0x94/0x98)
      [  149.540238] [<c03da45c>] (__driver_attach) from [<c03d8bb0>] (bus_for_each_dev+0x54/0x88)
      [  149.548814] [<c03d8bb0>] (bus_for_each_dev) from [<c03d9a34>] (bus_add_driver+0xdc/0x1d4)
      [  149.557381] [<c03d9a34>] (bus_add_driver) from [<c03dac30>] (driver_register+0x78/0xf4)
      [  149.565765] [<c03dac30>] (driver_register) from [<c0009784>] (do_one_initcall+0x80/0x1d8)
      [  149.574340] [<c0009784>] (do_one_initcall) from [<c00c2278>] (do_init_module+0x5c/0x1b8)
      [  149.582833] [<c00c2278>] (do_init_module) from [<c00c3bbc>] (load_module+0x1720/0x1dcc)
      [  149.591212] [<c00c3bbc>] (load_module) from [<c00c43d0>] (SyS_finit_module+0x68/0x6c)
      [  149.599418] [<c00c43d0>] (SyS_finit_module) from [<c000f3c0>] (ret_fast_syscall+0x0/0x4c)
      [  149.607994] Code: 15830000 e1a00006 e28dd008 e8bd8070 (e590307c)
      
      Cc: Eduardo Valentin <edubezval@gmail.com>
      Fixes: b5cf88e4 ("(gpio-fan): Add thermal control hooks")
      Signed-off-by: default avatarNishanth Menon <nm@ti.com>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      e76ea261
  2. 08 Apr, 2015 4 commits
  3. 05 Apr, 2015 6 commits
  4. 30 Mar, 2015 1 commit
  5. 20 Mar, 2015 5 commits
  6. 16 Mar, 2015 1 commit
  7. 15 Mar, 2015 3 commits
  8. 11 Mar, 2015 1 commit
    • Randy Dunlap's avatar
      hwmon: (gpio-fan) Fix build with CONFIG_THERMAL=m and SENSORS_GPIO_FAN=y · f6906ede
      Randy Dunlap authored
      Fix build error when CONFIG_THERMAL=m and SENSORS_GPIO_FAN=y
      by preventing that combination.
      
      Fixes these build errors:
      
      drivers/built-in.o: In function `gpio_fan_remove':
      gpio-fan.c:(.text+0x21e97e): undefined reference to `thermal_cooling_device_unregister'
      drivers/built-in.o: In function `gpio_fan_probe':
      gpio-fan.c:(.text+0x21efbc): undefined reference to `thermal_cooling_device_register'
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Cc:	Jean Delvare <jdelvare@suse.de>
      Cc:	Guenter Roeck <linux@roeck-us.net>
      Cc:	lm-sensors@lm-sensors.org
      Cc:	Simon Guinot <sguinot@lacie.com>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      f6906ede
  9. 09 Mar, 2015 16 commits