The i2c-ali1563 initialization looks quite broken to me:
* If the I/O space isn't enabled, we forcibly set 3 bits in
the PCI configuration space instead of just the one enabling
the I/O space.
* After that we pretend to check if the write worked, but we
don't actually read the new value from the register.
* It's probably not a good idea to enable the I/O space if no
base address has been set.
So I propose the following changes to that part of the driver:
* Merge ali1563_enable() into ali1563_setup().
* Check the base address before the I/O space enabled bit.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4324 7894878c-1315-0410-8ee3-d5d059ff63e0
* Add an explicit mask when writing the low byte of a word.
* Use I2C_SMBUS_BLOCK_MAX instead of hardcoding 32.
* Use boolean not instead of bitwise not for bit tests, it's clearer.
* Return proper error values rather than -1.
* Fix a race on device registration, initialization should be done
before the bus is registered.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4318 7894878c-1315-0410-8ee3-d5d059ff63e0
easier to find out which specific address causes problem if the system
freezes or the SMBus locks itself, for example.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4316 7894878c-1315-0410-8ee3-d5d059ff63e0
focus of the script, so their handling shouldn't take more time and
code than strictly necessary.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4313 7894878c-1315-0410-8ee3-d5d059ff63e0
was using a brute force approach, quite reliable but very slow. The new
code should be just as reliable but about ten times faster.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4312 7894878c-1315-0410-8ee3-d5d059ff63e0
easier to see what is being tried in real time, in particular if the
probing locks for any reason.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4311 7894878c-1315-0410-8ee3-d5d059ff63e0
- Only probe I2C addresses for which we know at least one device. This will
speed up the probing a bit, and hopefully limit both user and hardware
confusion.
- Drop ARP-capable device detection, we don't do anything useful with
the information and we have no other reason to probe I2C address 0x61.
i2cdetect can be used instead when we want to know more about a given
I2C bus.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4304 7894878c-1315-0410-8ee3-d5d059ff63e0
* Disable debugging by default
* Add support for non-i2c drivers
* More tolerant config file parsing (for some reason pwmconfig
adds unneeded spaces, it should probably be fixed but it's always
better to be tolrant nevertheless)
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4295 7894878c-1315-0410-8ee3-d5d059ff63e0
memory as part of another structure. This rather large patch fixes that by
making the smaller piece an explicit member of the larger.
I brought this patch into sync with the latest SVN, and tested it by comparing
objects files from the tree pre- and post- patch.
The remaining 99% of the credit goes to Bob Schlärmann <bob2@dsv.nl> for
creating the original patch... thanks Bob!
* Bob Schlärmann <bob2@dsv.nl> [2006-12-24 18:29:39 +0100]:
> The following patch changes all of the lib/chips.c entries and any function
> that uses sensors_chip_feature. Most of the conversion was done through a
> perl script, so if you don't agree with the syntax it'll be easy to change.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4287 7894878c-1315-0410-8ee3-d5d059ff63e0
scripts were assuming that all drivers were i2c-based. As we want to
get rid of i2c-isa in Linux 2.6 soon, it's important to ensure that
platform drivers are handled properly.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4286 7894878c-1315-0410-8ee3-d5d059ff63e0
* check that the user is root
* check if the SMBus is already there
* only load i2c-i801 if needed
* show the SMBus device line on success
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4285 7894878c-1315-0410-8ee3-d5d059ff63e0
was given to our project by Winbond has its SMBus hidden and needs this.
Also update the documentation a bit.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4282 7894878c-1315-0410-8ee3-d5d059ff63e0
* add -8
When using -Cf, flex defaults to generating a 7-bit scanner instead of 8-bit.
That's a bug, since we want the scanner to handle any character. Using -8 restores
the proper behavior.
* change -Cf to -Cfe
This allows a nice reduction in object size (from ~60KiB to ~15KiB) with almost
no impact to speed (adds < 100 cycles to scanner, where total cycles is > 1M).
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4272 7894878c-1315-0410-8ee3-d5d059ff63e0