lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 10 Mar 2014 18:00:17 +0000
From:	Laszlo Papp <lpapp@....org>
To:	Guenter Roeck <linux@...ck-us.net>
Cc:	LKML <linux-kernel@...r.kernel.org>, lm-sensors@...sensors.org
Subject: Re: [lm-sensors] Tachometer speed returned rather than absolute fan speed?

On Mon, Mar 10, 2014 at 3:11 PM, Guenter Roeck <linux@...ck-us.net> wrote:
> On Mon, Mar 10, 2014 at 01:50:01PM +0000, Laszlo Papp wrote:
>> On Mon, Mar 10, 2014 at 1:26 PM, Guenter Roeck <linux@...ck-us.net> wrote:
>> > On 03/10/2014 02:59 AM, Laszlo Papp wrote:
>> >>>
>> >>> The reason is (most likely) that your fan input does not have a pull-up
>> >>> resistor. Per datasheet, the fan inputs need a 10kOhm pull-up resistor. I
>> >>> confirmed this with my test board - with the pull-up resistor, inputs read
>> >>> 0, Without pull-up, the reported value is 1, which translates to 30 RPM. You
>> >>> might also need the 10 uF capacitor on the FB pin.
>> >>
>> >>
>> >> We have both of them in place as per requirement for the chip as far
>> >> as I understand the datasheet. The circuit would not work properly
>> >> without it.
>> >>>
>> >>> sudo i2cdump -y -f 1 0x48
>> >>> No size specified (using byte-data access)
>> >>>       0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
>> >>> 00: 00 00 0a 0a ff ff 00 00 00 00 00 00 01 01 00 00    ..??........??..
>> >>> 10: 01 01 01 01 1f 1f 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >>> 20: 00 00 0a 0a ff ff 00 00 00 00 00 00 01 01 00 00    ..??........??..
>> >>
>> >>
>> >> /usr/sbin/i2cdump -y -f 1 0x48
>> >> No size specified (using byte-data access)
>> >>       0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
>> >> 00: 00 00 3a 3a fc fc b4 b4 00 00 00 00 01 01 01 01    ..::????....????
>> >> 10: 09 09 01 01 1c 1c 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >> 20: 00 00 3a 3a fc fc b4 b4 00 00 00 00 01 01 01 01    ..::????....????
>> >> 30: 09 09 01 01 1c 1c 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >> 40: 00 00 3a 3a fc fc b4 b4 00 00 00 00 01 01 01 01    ..::????....????
>> >> 50: 08 08 01 01 1c 1c 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >> 60: 00 00 3a 3a fc fc b4 b4 00 00 00 00 01 01 01 01    ..::????....????
>> >> 70: 08 08 01 01 1c 1c 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >> 80: 00 00 3a 3a fc fc b4 b4 00 00 00 00 01 01 01 01    ..::????....????
>> >> 90: 08 08 01 01 1c 1c 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >> a0: 00 00 3a 3a fc fc b4 b4 00 00 00 00 01 01 01 01    ..::????....????
>> >> b0: 08 08 01 01 1c 1c 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >> c0: 00 00 3a 3a fc fc b4 b4 00 00 00 00 01 01 01 01    ..::????....????
>> >> d0: 08 08 01 01 1c 1c 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >> e0: 00 00 3a 3a fc fc b4 b4 00 00 00 00 01 01 01 01    ..::????....????
>> >> f0: 08 08 01 01 1c 1c 02 02 91 91 91 91 91 91 91 91    ????????????????
>> >>
>> >>> groeck@...ktop:~$ sensors max6651-i2c-1-48
>> >>> max6651-i2c-1-48
>> >>> Adapter: i2c-diolan-u2c at bus 003 device 002
>> >>> fan1:          30 RPM  (div = 4)
>> >>> fan2:           0 RPM
>> >>> fan3:          30 RPM
>> >>> fan4:          30 RPM
>> >>
>> >>
>> >> sensors max6651-i2c-1-48
>> >> max6651-i2c-1-48
>> >> Adapter: DaVinci I2C adapter
>> >> fan1:          30 RPM  (div = 4)
>> >> fan2:          30 RPM
>> >> fan3:         420 RPM
>> >> fan4:          30 RPM
>> >>
>> >>> Only fan2 (TACH1 chip input) has the resistor installed.
>> >>
>> >>
>> >> We have it both on fan1 and fan4.
>> >>
>> >> If I use our scope for checking the tachometer, I see level zero on
>> >> the scope, but 1 when checking the open collector level, since that is
>> >> the purpose of the pull-up resistor.
>> >>
>> > With the pull-up installed, you should always see a high voltage on the
>> > scope or with a volt meter. The scope would not see or be able to know
>> > that the pin is OC if the pull-up resistor is there.
>> >
>> > If it is truly OC, it would be floating and might show low. If you can,
>> > I would suggest to manually add a 10k resistor against VCC to the open
>> > connector and see what happens.
>> >
>> > Another way to find out for sure might be to disconnect power and
>> > measure resistance between the tachometer pin and VCC.
>>
>> Perhaps I was not clear. So, we do have both the resistors and
>> capacitor as required. I double checked the schematics as well as the
>> pins coming from the fan and that was zero. The tacho0 input, however,
>> was 1.
>>
>
> How can the pin coming from the fan be zero, and the tach0 input be 1
> at the same time ? Those should be the same ?

Nope, that is what the pull-up resistor is for. It will pull the level up to 1.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ