[lm-sensors] Compaq Evo D51S hidden sensor

Jean Delvare khali at linux-fr.org
Sat Jan 10 22:34:37 CET 2009

Hi David,

On Thu, 8 Jan 2009 20:33:42 +1000, David O'Shea wrote:
> Hi all,
> I have a Compaq Evo D51S (D510 Small Form Factor) running Fedora 10.  sensors-detect says it can't find any sensors.  From reading http://www.lm-sensors.org/ticket/2304 I got the impression that this particular model of PC should be supported in 2.6.27-rc1 and I am running
> >From looking at http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=drivers/pci/quirks.c;h=93faf84e4ec47c81fb10a2b6389f324c9e08c50e;hb=10260d9ab702454460242ef4d3ecfc49fcb96a5b (commit of patch referenced by the ticket above) it looks like this code is meant to address this model of PC:
> >>>
> 1043         } else if (unlikely(dev->subsystem_vendor == PCI_VENDOR_ID_COMPAQ)) {
> [...]
> 1057                 else if (dev->device == PCI_DEVICE_ID_INTEL_82845G_IG)
> 1058                         switch(dev->subsystem_device) {
> 1059                         case 0x00b8: /* Compaq Evo D510 CMT */
> 1060                         case 0x00b9: /* Compaq Evo D510 SFF */
> 1061                                 asus_hides_smbus = 1;
> 1062                         }
> <<<
> In the attachment http://www.lm-sensors.org/attachment/ticket/2304/lspci-after-fakephp to the support ticket, I see:
> >>>
> 00:02.0 VGA compatible controller [0300]: Intel Corporation
> 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device
> [8086:2562] (rev 01) (prog-if 00 [VGA controller])
>         Subsystem: Compaq Computer Corporation Evo D510 SFF [0e11:00b9]
> <<<
> which seems to correspond to the values that the kernel code checks for (apologies if I'm wrong - I'm making lots of assumptions here).

Your assumptions are correct.

> When I run 'lspci -vvxnn' I don't see the same thing.  I see a few items with the same "Subsystem:" line - 3 USB controllers and an IDE interface - but my VGA controller is:
> >>>
> 01:00.0 VGA compatible controller [0300]: nVidia Corporation NV44A [GeForce 6200] [10de:0221] (rev a1) (prog-if 00 [VGA controller])
>         Subsystem: XFX Pine Group Inc. Device [1682:2152]
> <<<
> I'm using an AGP card I added to the PC instead of the on-board video.  I am assuming that the on-board video is not appearing because I added the AGP card - would that be a normal thing to happen?

Yes, that makes sense. Maybe there's an option in the BIOS to forcibly
enable the on-board video controller to stay visible. But most likely
it is hidden automatically and you can't work around it. Just check in
the BIOS if you can find any option controlling this behavior.

> I am assuming that pci/quirks.c above just happens to check for the onboard video as a way to detect this model of PC and it could check for something else instead - would that be true?  If so (and there's no other investigation that might be needed), is this likely to be "fixed"/enhanced anytime soon or should I try kernel hacking myself?  I'm assuming I could add a check for the IDE or USB (I'll try and check the BIOS settings or documentation to see if one of these in particular can't be disabled and therefore would always be present).

You are correct, we used this device as a mean to detect these
machines, but another device could do as well. What matters is to find
a device with subvendor and subdevice values properly defined. Both the
IDE and the USB controllers meet this condition as far as I can see. I
think I'd use IDE. If you write a patch that does this and it fixes the
problem on your system, I'll be happy to review it and push it upstream.

Jean Delvare

More information about the lm-sensors mailing list