On Wed, 3 Jan 2007 16:56:00 -0800
Greg KH <[email protected]> wrote:
> On Wed, Jan 03, 2007 at 04:50:20PM -0800, Stephen Hemminger wrote:
> > Is there some missing magic (udev rule?) that keeps i2c device modules
> > from loading? For example: the Intel i2c-i801 module ought to get loaded
> > automatically on boot up since it has a set of PCI id's that generate
> > the necessary module aliases. It would be better if I2C device's autoloaded
> > like other PCI devices.
>
> No, it should autoload, if it has a MODULE_DEVICE_TABLE() in it. In
> fact, the i2c-i801 autoloads on one of my machines just fine. Are you
> sure your pci ids match properly?
>
> thanks,
>
> greg k-h
This laptop is running Ubuntu Edgy (6.10) and it doesn't autoload.
Everything works fine if I manually load the module with modprobe.
This device should match:
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
00: 86 80 da 27 01 00 80 02 02 00 05 0c 00 00 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: a1 18 00 00 00 00 00 00 00 00 00 00 cf 10 88 13
30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 02 00 00
This driver modinfo:
filename: /lib/modules/2.6.20-rc3/kernel/drivers/i2c/busses/i2c-i801.ko
author: Frodo Looijaard <[email protected]>, Philip Edelbrock <[email protected]>, and Mark D. Studebaker <[email protected]>
description: I801 SMBus driver
license: GPL
vermagic: 2.6.20-rc3 mod_unload PENTIUMM 4KSTACKS
depends: i2c-core
alias: pci:v00008086d00002413sv*sd*bc*sc*i*
alias: pci:v00008086d00002423sv*sd*bc*sc*i*
alias: pci:v00008086d00002443sv*sd*bc*sc*i*
alias: pci:v00008086d00002483sv*sd*bc*sc*i*
alias: pci:v00008086d000024C3sv*sd*bc*sc*i*
alias: pci:v00008086d000024D3sv*sd*bc*sc*i*
alias: pci:v00008086d000025A4sv*sd*bc*sc*i*
alias: pci:v00008086d0000266Asv*sd*bc*sc*i*
alias: pci:v00008086d000027DAsv*sd*bc*sc*i* <------- should match
alias: pci:v00008086d0000269Bsv*sd*bc*sc*i*
alias: pci:v00008086d0000283Esv*sd*bc*sc*i*
alias: pci:v00008086d00002930sv*sd*bc*sc*i*
Table in drivers/i2c/busses/i2c-i801.c
static struct pci_device_id i801_ids[] = {
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801AA_3) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801AB_3) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801BA_2) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801CA_3) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801DB_3) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801EB_3) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ESB_4) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH6_16) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH7_17) }, <------ should match
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ESB2_17) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_5) },
{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9_6) },
{ 0, }
};
MODULE_DEVICE_TABLE (pci, i801_ids);
--
Stephen Hemminger <[email protected]>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]