2
0
mirror of https://github.com/lm-sensors/lm-sensors synced 2025-08-29 21:38:17 +00:00

2505 Commits

Author SHA1 Message Date
Jean Delvare
50e0fc00ee Preliminary pc87366 section.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2497 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-30 21:18:31 +00:00
Jean Delvare
d51832bad3 Simplify temperature conversions.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2496 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-30 17:37:09 +00:00
Jean Delvare
b46272cb2a Add some temporary PWM debugging stuff.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2495 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-30 16:57:14 +00:00
Jean Delvare
ab201099f6 Support GeForce FX 5900 video cards.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2494 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-30 16:56:41 +00:00
Jean Delvare
16de9f7fc4 Remove mysterious pseudo-white-space characters.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2493 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-30 16:46:39 +00:00
Jean Delvare
bb5da5b8a8 Ignore fan invert configuration bits.
Do not depend on "new data ready" bit for fan speed update.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2492 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-29 21:34:39 +00:00
Jean Delvare
dbc993ac93 Default configuration section for LM85-like chips.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2491 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-29 19:53:27 +00:00
Jean Delvare
4d095e0921 New manual page for isaset.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2490 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-29 17:43:50 +00:00
Jean Delvare
62b7916019 Add missing include.
Discard unused hexchar function.
        Massive reindent.
        Rework the command line parameters handling.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2489 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-29 17:24:45 +00:00
Mark D. Studebaker
6f821d2ad8 new isaset program. Warning - lightly tested.
Please test and improve as necessary.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2488 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-28 23:54:09 +00:00
Jean Delvare
acbe389aa9 Use the correct alarm bits for pc87366 temperatures and voltages.
Refactor pc87366 temperatures and voltages code.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2487 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-28 18:10:47 +00:00
Jean Delvare
352fb41c68 Fix fan configuration being read from the wrong registers.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2486 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-28 18:07:52 +00:00
Jean Delvare
084a788bc6 Mask voltage and temperature alarm registers.
Fix temp status sysctl values.
        Clear fan alarms after we read them.
        Do not read invalid or old fan values.
        Do not read voltage and temperature alarms on fan-only chips.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2485 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-27 18:56:06 +00:00
Jean Delvare
23eed72eb1 Fix pc87366 temp alarms.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2484 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-27 18:24:29 +00:00
Mark D. Studebaker
cf3e2b8cef remove unused variables
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2483 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-27 01:11:32 +00:00
Mark D. Studebaker
b0295fe904 move initialization to kernel thread to fix oops
Ticket #1573

--------------

Another update for his issue [kernel panic triggered by bmcsensors}:

The source of the problem are the non-atomic kernel mallocs for device
registration called from an interrupt context - this doesn't seem to be
supported and as observed can crash the kernel.

A possible solution  is to create a kernel thread on initialisation,
leave that thread hanging round while the device scan runs, and finaly
signal the init thread when device scan is complete to finish
initialisation be registing the sensors found during scan.

A patch implementing such a scheme was created by Yvon JEGOU, I'll post
it here again.

Thanks, Martin

--------------

Hi Mark,


>> I don't fully understand... sorry if I'm slow.
>> is the problem doing mallocs from an interrupt context or non-atomic
>> mallocs?
>> what's non-atomic about the malloc?
>> how did we get in an interrupt context?


Being no kernel programmer this is fairly hard form me to answer; lets
see how far I get

The problem is non-atomic kmallocs from an interrupt context.

Non-atomic refers to the flags specified in the kmalloc call (GFP_ATOMIC
vs. GFP_KERNEL) (Ref. http://lwn.net/Articles/22909/)

Scanning for sensors is triggered by sending an ipmi message in
bmcsensors_reserve_sdr. Building the list of sensors and finally
creating the required proc entries happens on subsequent reception of
ipmi messages in the ipmi call-back. If I understand correctly how
things interact, that would be in an interrupt context.

Where bmcsensors blows up when trying to register lots of sensors is the

-> bmcsensors_command (which is the i2c-ipmi call-back)
-> bmcsensors_msg_handler
-> bmcsensors_rcv_msg
-> bmcsensors_rcv_sdr_msg
-> bmcsensors_build_proc_table
-> i2c_register_entry
-> create_proc_entry
-> proc_create
-> kmalloc

sequence.

My limited understanding of kernel programming is that if memory is
allocated in an interrupt context, GFP_ATOMIC must be used.

While the kmallocs done directly by bmcsensors_build_proc_table would be
fixable, the calls in proc_create_entry are obviously not changeable.
This makes proc_create and its callers unsafe for use in an interrupt
context.

The patch works around this limitation by creating a separate kernel
thread from sm_bmcsensors_init and calling bmcsensors_build_proc_table
from this thread after scanning for sesnsors has finished.

Hope I've managed to adequately explain what I think is wrong.

Bye, Martin


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2482 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-27 01:10:49 +00:00
Jean Delvare
eb13a07e48 Be concurrent-access safe (i.e. ensure than no bank change occurs
in our back).
        Fix compilation without DEBUG.
        Do not read in and temp alarms more than needed.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2481 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-26 17:53:43 +00:00
Jean Delvare
cc405777c3 Misc fixes.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2480 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-26 17:01:24 +00:00
Jean Delvare
f33169d5cd Retrieve fans configuration from Super-I/O space; export
pwm_enable (read-only); handle fan invert.
        Fix temp_crit being read from temp_min register.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2479 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-26 16:58:52 +00:00
Jean Delvare
80968de0a9 Fix setting voltage limits. This got broken by my previous
fix of inaccurate voltage roundings.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2478 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-25 19:43:54 +00:00
Jean Delvare
f5a0f7d493 Add some debug output.
Show more status bits (voltages and temperatures).
        Fix incorrect use of const.
        Clear status bits on update.
        Fix temperature reads (min, crit and current).
        Fix temperature writes (min).


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2477 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-25 15:23:32 +00:00
Jean Delvare
0738cd0915 Document the new flat address options.
Add a few notes.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2476 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-25 13:30:21 +00:00
Jean Delvare
ad91c909d8 Add bank support to flat address space mode.
Default to bank register 0x07 for Super-I/O chips.
        Move default bank register selection to a separate function.
        Move setting/restoring bank to a separate function.
        Allow dumping of shorter ranges (flat address space mode).
        Limit I2C-like dumps to addresses up to 0x3fff.
        Print expected ranges on range errors.

        This should allow us to work with the PC87360 family of chips.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2475 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-25 13:26:45 +00:00
Jean Delvare
44014e8b70 Correctly handle the case where some of the logical devices are
disabled.
        Add KERN constants to printks.
        Reindent.
        Fix error path in detect function.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2474 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-25 06:53:07 +00:00
Jean Delvare
7c8db8e5ff Fix driver not being called by i2c-proc.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2473 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-24 21:29:01 +00:00
Mark D. Studebaker
39d1d4dfa5 remove old library versions in make clean
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2472 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-24 17:31:34 +00:00
Jean Delvare
635b1b06bc Support the LM99 (and LM89).
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2471 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-24 08:10:48 +00:00
Jean Delvare
07575dbb7f Update via686a section, new lm99 section.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2470 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-24 08:10:16 +00:00
Jean Delvare
b3ccf0787c Improve LM89/LM99 support.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2469 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-23 16:25:56 +00:00
Jean Delvare
c142542ae2 Updates.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2468 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-22 20:00:38 +00:00
Jean Delvare
1f40482fd7 Move i2c device opening to a separate function.
Move actual scanning to a separate function.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2467 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-22 19:47:08 +00:00
Jean Delvare
60d0048763 Fix lm80 displaying HOT alarm instead of OS alarm. Caught by
Shawn Starr.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2466 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-22 18:47:48 +00:00
Jean Delvare
783c6a0ed6 Adapt probing method to address. Should prevent any kind of
EEPROM corruption. Previous method (quick writes for every
        address) can be forced with -q. Read bytes can be forced with -r.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2465 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-21 20:58:05 +00:00
Jean Delvare
267b92db0d Do not run depmod on staged installs. Give hints instead.
Patch by Peter Breitenlohner.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2464 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-21 18:44:20 +00:00
Jean Delvare
8fa6d819ce Drop LTC1710 support.
Disable EEPROM write-protection detection by default.
        Use byte reads for probing on ranges 0x30-0x37 and 0x50-0x5F
        (where EEPROMs live). This should efficiently prevent the
        AT24RF08 corruption.
        Rephrase IBM systems warning.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2463 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-20 19:40:02 +00:00
Jean Delvare
d832ee135d More detail on how i2cdump can write to a chip.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2462 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-20 19:34:10 +00:00
Jean Delvare
61ecbe0b81 Fix min fan speed.
Update limitations.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2461 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-20 17:55:41 +00:00
Jean Delvare
a41a6d70ab Fix fan speed computations.
Fix voltage magnitudes.
        Fix voltage limits order.
        Add voltage limits write support.
        Add temperature limits write support.
        Prevent user from setting limit of nonexistent fan 3.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2460 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-20 17:55:10 +00:00
Jean Delvare
d492526cc2 (Axel Thimm) Support 82801BAM and 82801DBM.
Some fixes and cleanups.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2459 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-20 17:42:48 +00:00
Jean Delvare
48e0e22aea Fix voltage roundings.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2458 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-20 17:12:55 +00:00
Jean Delvare
621de3361a Misc fixes to lm80 default configuration.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2457 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-20 16:52:57 +00:00
Mark D. Studebaker
379a2143d3 add code authors to man pages
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2456 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-20 01:25:22 +00:00
Jean Delvare
f32d63565a Support ALi 1563 bus (Linux 2.6 only).
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2455 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-19 19:53:23 +00:00
Jean Delvare
e9d2d1aa95 Bump version.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2454 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-19 19:47:46 +00:00
Jean Delvare
db71a2a1a4 Support voltages and temperatures of National Semiconductor
PC87365 and PC87366 (read-only).


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2453 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-19 19:46:14 +00:00
Jean Delvare
0c01cd9544 Stop being Winbond-specific about banks: don't mask high bit.
Allow forcing of bank 0. Restore bank after dump.
        This allows proper operation on Super-I/O chips.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2452 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-19 18:02:10 +00:00
Mark D. Studebaker
588589924f restore slave addr in eeprom_detect()
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2451 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-18 14:31:21 +00:00
Mark D. Studebaker
f3c310b5ea regenerated with makeinfo 4.7
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2450 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-18 13:46:16 +00:00
Mark D. Studebaker
af334e9f99 add manhtml target to generate html man pages for copying to the website
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2449 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-18 03:37:28 +00:00
Mark D. Studebaker
49754b948f support detection of eeprom shadows we now know are
software write-protect registers.
      prevent Vaio detection from running more than once.
      update eeprom driver documentation.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2448 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-04-18 00:38:28 +00:00