summaryrefslogtreecommitdiff
path: root/sys/dev/i2c/i2c_scan.c
AgeCommit message (Collapse)Author
2006-02-08add a member to the i2c_attach args so that a controller can pass aDavid Gwynne
cookie down to the device. the most obvious use of this is to pass a device its ofw node on sparc64 and macppc so it can configure itself more appropriately. ok kettenis@ henning@ deraadt@
2006-02-08Fix lm75 check.Mark Kettenis
ok deraadt@
2006-02-04s/amd1032cloneprobe/adm1032cloneprobe/gMark Kettenis
2006-01-29Don't probe address 0x4f.Mark Kettenis
ok deraadt@
2006-01-28Move address checks forward. Cleanup comments.Mark Kettenis
2006-01-28Disable ds1624/ds1631/ds1721 probe.Mark Kettenis
requested by deraadt@
2006-01-23The GL518SM is a real piece of shit, and if we don't detect it bad thingsMark Kettenis
will happen. The comment in the code has all the gory details. tested by jmc@
2006-01-18Fix typo; w83l785ts-l has chip ID 0x70.Mark Kettenis
2006-01-17AS99127F rev 1 doesn't have i2c address in register 0x48.Mark Kettenis
2006-01-15Fix typo.Mark Kettenis
2006-01-14Detect more Winbond chips.Mark Kettenis
"Of course!" deraadt@
2006-01-13damn, on the ds1721 we can be sure of even fewer known bitsTheo de Raadt
2006-01-13introduce the most stupid basic scan check for the maximally braindeadTheo de Raadt
ds1631/1624/1721 chips. this will need improvement -- we MUST check for more registers that alias or don't -- because we tend to write these chips ok grange
2006-01-12attempt to probe for the ds1624; ok grangeTheo de Raadt
2006-01-11Identify Winbond chips that are in a non-zero register bank as w83781d.Mark Kettenis
Let the driver sort out the proper chip detection in that case. "I like it" deraadt@, tested by robert@
2006-01-09do a lot more careful register checking for echos and roll-around andTheo de Raadt
nonsense values in the lm75 probe. while there, make it look for a significant difference the lm77 has, ok grange
2006-01-06pick some register with a known value, to try to tell a lm96000 apartTheo de Raadt
from any of a variety of National superio chipsets for which documention is very hard to find
2006-01-05if both debug and verbose defined, only spit out the dump onceTheo de Raadt
2006-01-04detect lm96000Theo de Raadt
2006-01-04split out I2C_DEBUG into I2C_VERBOSE. VERBOSE is on. Turn on DEBUG toTheo de Raadt
show more information to i2c developers. thanks.
2006-01-03Use "official" chip part names/numbers for matching.Mark Kettenis
ok deraadt@
2005-12-31Better bounds for the lm7x register repeat test; ok deraadt@Miod Vallat
2005-12-31we do not look at the proberegs anymore, always full dumpsTheo de Raadt
2005-12-31if a register dump is going to find that all the registers are the same,Theo de Raadt
then skip it. it's some quirky piece of garbage we can never support
2005-12-31we think we can now probe chips correctly. only print the register dumpTheo de Raadt
if we fail to attach a driver to a chip name. this means that if we incorrectly diagnose a chip, someone will have to compile a debug kernel. i think we are ready for this, but we will see what the next week brings.
2005-12-31add lots of comments. run the xeontemp probe stuff on other architectures asTheo de Raadt
well since we are seeing some of these crummy adm1021/maxim1617 clones on other architectures. (Intel specified that there was a sensor chip with a certain register layout on their Xeon processors. That register layout is a subset of the maxim1617, ie. without ID registers. I guess they wanted to be able to change them later. But the result is that just as the industry was starting to move towards all new chips having ID registers, Intel pushed them all the other way... and now lots of vendors make chips like this without ID registers. Typical vendor power politics.)
2005-12-31reyk, touching a file I am actively hacking on without talking to me is a ↵Theo de Raadt
serious mistake
2005-12-30add i2c driver for Asus ASB100 sensors using register info from lm_sensorsDamien Miller
driver (Asus believe this chip is such critically important IP they won't release docs for it); feedback deraadt@ and kettenis@, ok kettenis@
2005-12-30knf (replace lines of c++/c99 '//' comments with #if 0)Reyk Floeter
2005-12-30Initial W83791D support for lm(4).Mark Kettenis
ok krw@
2005-12-30check for another sign that a lm75 is not thereTheo de Raadt
2005-12-29Match a few more lm(4) Winbond and ASUS chips.Mark Kettenis
2005-12-29stop using I2C_F_POLL; it is a bus driver responsibility nowTheo de Raadt
2005-12-29insanity debugged with djm -- here is the comment from the code:Theo de Raadt
+ * Some Maxim 1617 clones MAY NOT even read cmd 0xfc! When it is + * read, they will power-on-reset. Their default condition + * (control register bit 0x80) therefore will be that they assert + * /ALERT for the 5 potential errors that may occur. One of those + * errors is that the external temperature diode is missing. This + * is unfortunately a common choice of system designers, except + * suddenly now we get a /ALERT, which may on some chipsets cause + * us to receive an entirely unexpected SMI .. and then an NMI. + * + * As we probe each device, if we hit something which looks suspiciously + * like it may potentially be a 1617 or clone, we immediately set this + * variable to avoid reading that register offset.
2005-12-29static functions suckTheo de Raadt
2005-12-28probe for adm1032, a stupid stupid adm1021Theo de Raadt
2005-12-28correct copyrightTheo de Raadt
2005-12-28probe true lm90, lm99, lm89, lm86 devicesTheo de Raadt
2005-12-28if many regs in a "xeontemp" appear the same, it is not oneTheo de Raadt
2005-12-28some chips (especially those crazy i2c/lpc/isa gross things) expose theirTheo de Raadt
banks at other addresses, but there are issues with accessing these other devices. so allow a driver to "knock" these out from future probing. tested by kettenis -- unfortunate enough to have one of these winbond pieces of poo
2005-12-27correct probe for ds1780 (lm87 clone)Theo de Raadt
2005-12-27if too many of the early regs on a adm1021 are zero, it cannot be one..Theo de Raadt
2005-12-27adjust truth in adm commentTheo de Raadt
2005-12-27Don't touch ic_exec callback directly since it can be missed for someAlexander Yurchenko
controllers. Use iic_exec() instead. ok deraadt@
2005-12-27more paranoid checking for 47m192Theo de Raadt
2005-12-27correct adm2940 probeTheo de Raadt
2005-12-27no longer use ia_compat; tested by a fewTheo de Raadt
2005-12-27match about 15 more clone chipsTheo de Raadt
2005-12-27completely bogus adm1021 check; it is much more like the xeon-styleTheo de Raadt
thingies; except for now i only want to do that rather loose check chip on i386 machines with this, i get sensors on a sparc64 v120. hurray
2005-12-26split out debug codeTheo de Raadt