[PATCH 2.6.31-rc2] hwmon: add support for GM/GME965 IGP temperature report.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jean,


>2009/7/13 Jean Delvare <khali at linux-fr.org>:

>> intel-agp.c has 2432 LOC and only deals with AGP/GART table management. I
>> don't think anybody would be amused to see other code in there.
>
> Well, the driver posted by Lu was rather small, and most of it is for
> device management, not functionality. Adding temperature reading to
> another driver would probably fit in 250 lines.

I agree with you.
While, as there is not GM965 North Bridge driver direct process
MCHBAR_I965 (MCH Memory Mapped Register BAR), if any driver module try
to support GM965 thermal sensor, it need to call "pci_get_device",
read the MCHBAR base address, and do ioremap_nocache to access the
Thermal sensor register.

If it doesn't do on drivers/hwmon, it need to do on drivers/char/agp
or some how.


>2009/7/12 Jean Delvare <khali at linux-fr.org>:
>It's a limitation of the device driver model to only let one driver bind to a given device at any given time.

I understand what you means, it DID has PCI driver conflict when two
driver register as PCI device.
While, apggart-intel is registed as PCI driver, gm965temp is as
Platfrom devices driver. Gm965temp uses "pseudo-bus".

Take a "tree -d /sys/device" snapshot:

|-- pci0000:00
| ? |-- 0000:00:00.0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?***
| ? | ? |-- bus -> ../../../bus/pci ? ? ? ? ? ? ? ? ? ? ? ?***
| ? | ? |-- driver -> ../../../bus/pci/drivers/agpgart-intel ? ***
| ? | ? |-- firmware_node -> ../../LNXSYSTM:00/device:00/PNP0A08:00/PNP0C02:00
| ? | ? |-- power
| ? | ? `-- subsystem -> ../../../bus/pci
| ? |-- 0000:00:02.0
| ? | ? |-- bus -> ../../../bus/pci
| ? | ? |-- driver -> ../../../bus/pci/drivers/i915
| ? | ? |-- drm:card0 -> ../../../class/drm/card0
| ? | ? |-- drm:controlD64 -> ../../../class/drm/controlD64
| ? | ? |-- firmware_node -> ../../LNXSYSTM:00/device:00/PNP0A08:00/device:07
| ? | ? |-- graphics:fb1 -> ../../../class/graphics/fb1
| ? | ? |-- i2c-adapter:i2c-1 -> ../../../class/i2c-adapter/i2c-1
| ? | ? |-- i2c-adapter:i2c-2 -> ../../../class/i2c-adapter/i2c-2
| ? | ? |-- power
| ? | ? `-- subsystem -> ../../../bus/pci
...
|-- platform
| ? |-- gm965temp.0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ***
| ? | ? |-- bus -> ../../../bus/platform ? ? ? ? ? ? ? ? ? **
| ? | ? |-- driver -> ../../../bus/platform/drivers/gm965temp ?***
| ? | ? |-- hwmon:hwmon1 -> ../../../class/hwmon/hwmon1
| ? | ? |-- power
| ? | ? `-- subsystem -> ../../../bus/platform
...

In this sysfs layout, I don't think agpgart-intel and gm965temp will conflict.

--
Thx

Lu Zhihe



[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux