From: Harald M. <hm...@gm...> - 2004-04-24 12:13:30
|
Hello, I'm using a MSI 875P Neo motherboard (ICH5R) and a Pinnacle DC10 V8+ card. By modprobing i2c-i801 and saa7110 (sequence don't care) the system fully crashed. It happens when the procedure saa7110_detect_client() from saa7110.c is working on the i2c-i801 i2c bus address. For my system the following patch helps: diff -Nur ori/saa7110.c patched/saa7110.c --- ori/saa7110.c 2004-04-16 12:13:08.863024384 +0200 +++ patched/saa7110.c 2004-04-16 12:15:38.510274544 +0200 @@ -567,6 +567,14 @@ static int saa7110_attach_adapter (struct i2c_adapter *adapter) { + if (!strcmp(I2C_NAME(adapter), "SMBus I801 adapter at 0c00")) + { + dprintk(1, + KERN_INFO + "saa7110c: not probing on: %s\n", + I2C_NAME(adapter)); + return -EINVAL; + } dprintk(1, KERN_INFO "saa7110.c: starting probe for adapter %s (0x%x)\n", (root@hm) 14:02:01 ~ # dmesg ... Linux video codec intermediate layer: v0.2 saa7110.c: starting probe for adapter ISA main adapter (0x0) saa7110c: not probing on: SMBus I801 adapter at 0c00 saa7110.c: starting probe for adapter DDC:fb0 #0 (0x10009) saa7110.c: starting probe for adapter DDC:fb0 #1 (0x10009) saa7110.c: starting probe for adapter MAVEN:fb0 (0x10009) saa7110.c: starting probe for adapter saa7134[0] (0x90000) Zoran MJPEG board driver version 0.9.5 MJPEG[0]: Zoran ZR36067 (rev 2) irq: 18, memory: 0xfeafe000 MJPEG[0]: subsystem vendor=0x1031 id=0x7efe ... Attention: it only works for the adaptername in the patch. (root@hm) 14:02:59 ~ # lspci 00:00.0 Host bridge: Intel Corp. 82875P Memory Controller Hub (rev 02) 00:01.0 PCI bridge: Intel Corp. 82875P Processor to AGP Controller (rev 02) 00:03.0 PCI bridge: Intel Corp. 82875P Processor to PCI to CSA Bridge (rev 02) 00:06.0 System peripheral: Intel Corp. 82875P Processor to I/O Memory Interface (rev 02) 00:1d.0 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #1 (rev 02)00:1d.1 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #2 (rev 02)00:1d.2 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #3 (rev 02)00:1d.3 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #4 (rev 02)00:1d.7 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (rev 02) 00:1e.0 PCI bridge: Intel Corp. 82801BA/CA/DB/EB/ER Hub interface to PCI Bridge (rev c2) 00:1f.0 ISA bridge: Intel Corp. 82801EB/ER (ICH5/ICH5R) LPC Bridge (rev 02) 00:1f.1 IDE interface: Intel Corp. 82801EB/ER (ICH5/ICH5R) Ultra ATA 100 Storage Controller (rev 02) 00:1f.3 SMBus: Intel Corp. 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02) 00:1f.5 Multimedia audio controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (rev 02) 01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G550 AGP (rev 01) 02:01.0 Ethernet controller: Intel Corp. 82547EI Gigabit Ethernet Controller (LOM) 03:01.0 Multimedia controller: Philips Semiconductors SAA7134 (rev 01) 03:02.0 Multimedia video controller: Zoran Corporation ZR36057PQC Video cutting chipset (rev 02) 03:03.0 Serial controller: Timedia Technology Co Ltd PCI2S550 (Dual 16550 UART) (rev 01) 03:05.0 SCSI storage controller: LSI Logic / Symbios Logic 53c810 (rev 12) 03:09.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 46) 03:0e.0 RAID bus controller: Promise Technology, Inc. PDC20378 (SATA150 TX) (rev 02) (root@hm) 14:03:33 ~ # lspci -n 00:00.0 Class 0600: 8086:2578 (rev 02) 00:01.0 Class 0604: 8086:2579 (rev 02) 00:03.0 Class 0604: 8086:257b (rev 02) 00:06.0 Class 0880: 8086:257e (rev 02) 00:1d.0 Class 0c03: 8086:24d2 (rev 02) 00:1d.1 Class 0c03: 8086:24d4 (rev 02) 00:1d.2 Class 0c03: 8086:24d7 (rev 02) 00:1d.3 Class 0c03: 8086:24de (rev 02) 00:1d.7 Class 0c03: 8086:24dd (rev 02) 00:1e.0 Class 0604: 8086:244e (rev c2) 00:1f.0 Class 0601: 8086:24d0 (rev 02) 00:1f.1 Class 0101: 8086:24db (rev 02) 00:1f.3 Class 0c05: 8086:24d3 (rev 02) <-- 00:1f.5 Class 0401: 8086:24d5 (rev 02) 01:00.0 Class 0300: 102b:2527 (rev 01) 02:01.0 Class 0200: 8086:1019 03:01.0 Class 0480: 1131:7134 (rev 01) 03:02.0 Class 0400: 11de:6057 (rev 02) 03:03.0 Class 0700: 1409:7168 (rev 01) 03:05.0 Class 0100: 1000:0001 (rev 12) 03:09.0 Class 0c00: 1106:3044 (rev 46) 03:0e.0 Class 0104: 105a:3373 (rev 02) (root@hm) 14:05:09 ~ # i2cdetect Error: No i2c-bus specified! Syntax: i2cdetect [-f] I2CBUS I2CBUS is an integer With -f, scans all addresses (NOT RECOMMENDED) i2cdetect -l lists installed busses only Installed I2C busses: i2c-6 unknown DC10plus[0] Algorithm unavailable i2c-5 unknown saa7134[0] Algorithm unavailable i2c-4 unknown MAVEN:fb0 Algorithm unavailable i2c-3 unknown DDC:fb0 #1 Algorithm unavailable i2c-2 unknown DDC:fb0 #0 Algorithm unavailable i2c-1 unknown SMBus I801 adapter at 0c00 Algorithm unavailable i2c-0 dummy ISA main adapter ISA bus algorithm I don't know enough about i2c programming. So there might be a better solution for the saa7110_detect_client() routine. Harald hm...@gm... |