All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ralf Gerbig <rge@hsp-law.de>
To: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: lkml <linux-kernel@vger.kernel.org>,
	Ralf Gerbig <rge-news@quengel.org>,
	linux-dvb-maintainer@linuxtv.org
Subject: ACPI interrupt routing
Date: Mon, 23 Aug 2004 21:01:45 +0200	[thread overview]
Message-ID: <m0isb9ispy.fsf@test3.hsp-law.de> (raw)

Moins,

starting with 2.6.8.1-mm4, I get the following with my DVB card:

modprobe bttv 
modprobe dvb-bt8xx
modprobe dst

bttv: driver version 0.9.15 loaded
bttv: using 8 buffers with 2080k (520 pages) each for capture
bttv: Bt8xx card found (0).
ACPI: PCI Interrupt Link [APC3] enabled at IRQ 18
ACPI: PCI interrupt 0000:01:06.0[A] -> GSI 18 (level, high) -> IRQ 18
bttv0: Bt878 (rev 17) at 0000:01:06.0, irq: 18, latency: 32, mmio: 0xe4000000
bttv0: detected: Twinhan VisionPlus DVB-T [card=113], PCI subsystem IDis 1822:0001
bttv0: using: Twinhan DST + clones [card=113,autodetected]
bttv0: using tuner=4
tuner: Ignoring new-style parameters in presence of obsolete ones
bttv0: add subdevice "dvb0"
bt878: AUDIO driver version 0.0.0 loaded
bt878: Bt878 AUDIO function found (0).
ACPI: PCI interrupt 0000:01:06.1[A] -> GSI 18 (level, high) -> IRQ 18
bt878(0): Bt878 (rev 17) at 01:06.1, irq: 10, <====================================
latency: 32, memory: 0xe4001000 
attach: checking "bt878 #0 [hw]"
find by pci: checking "bt878 #0 [hw]"
attach: "bt878 #0 [hw]", to card 0
DVB: registering new adapter (DST).
bt878 find by dvb adap: checking "DST"
irq 18: nobody cared!
 [<c01066b4>] __report_bad_irq+0x24/0x80
 [<c01067ab>] note_interrupt+0x7b/0xa0
 [<c0106660>] handle_IRQ_event+0x30/0x60
 [<c0106a51>] do_IRQ+0x101/0x140
 [<c01049e8>] common_interrupt+0x18/0x20
 [<c0102053>] default_idle+0x23/0x30
 [<c01020cd>] cpu_idle+0x2d/0x40
 [<c03f278a>] start_kernel+0x14a/0x170
 [<c03f2390>] unknown_bootoption+0x0/0x170
handlers:
[<e0b5e580>] (bttv_irq+0x0/0x3a0 [bttv])
Disabling IRQ #18


after 

rmmod -f dst
rmmod  dvb_bt8xx dvb_core bt878 tuner bttv  video_buf i2c_algo_bit
v4l2_common  btcx_risc i2c_core videodev

find by i2c adap: checking "bt878 #0 [hw]" 
detach: "bt878 #0 [hw]", for card 0 removed 
bt878(0): unloading 
bttv0: unloading 

and

modprobe bttv  
modprobe dvb-bt8xx 
modprobe dst 
 
find by i2c adap: checking "bt878 #0 [hw]"
detach: "bt878 #0 [hw]", for card 0 removed
bt878(0): unloading
bttv0: unloading
Linux video capture interface: v1.00
bttv: driver version 0.9.15 loaded
bttv: using 8 buffers with 2080k (520 pages) each for capture
bttv: Bt8xx card found (0).
ACPI: PCI interrupt 0000:01:06.0[A] -> GSI 18 (level, high) -> IRQ 18
bttv0: Bt878 (rev 17) at 0000:01:06.0, irq: 18, <==================================
latency: 32, mmio: 0xe4000000
bttv0: detected: Twinhan VisionPlus DVB-T [card=113], PCI subsystem IDis 1822:0001
bttv0: using: Twinhan DST + clones [card=113,autodetected]
bttv0: using tuner=4
tuner: Ignoring new-style parameters in presence of obsolete ones
bttv0: add subdevice "dvb0"
bt878: AUDIO driver version 0.0.0 loaded
bt878: Bt878 AUDIO function found (0).
ACPI: PCI interrupt 0000:01:06.1[A] -> GSI 18 (level, high) -> IRQ 18
bt878(0): Bt878 (rev 17) at 01:06.1, irq: 18, latency: 32, memory:
0xe4001000
attach: checking "bt878 #0 [hw]"
find by pci: checking "bt878 #0 [hw]"
attach: "bt878 #0 [hw]", to card 0
DVB: registering new adapter (DST).
bt878 find by dvb adap: checking "DST"
dst_check_ci: recognize DTTDIG
DST type : terrestial TV
DST type flags :
DVB: registering frontend 0:0 (DST TERR)...

and it works!

with pci=routeirq it works the first time around:

Linux video capture interface: v1.00
bttv: driver version 0.9.15 loaded
bttv: using 8 buffers with 2080k (520 pages) each for capture
bttv: Bt8xx card found (0).
ACPI: PCI interrupt 0000:01:06.0[A] -> GSI 18 (level, high) -> IRQ 18
bttv0: Bt878 (rev 17) at 0000:01:06.0, irq: 18, latency: 32, mmio:
0xe4000000
bttv0: detected: Twinhan VisionPlus DVB-T [card=113], PCI subsystem ID
is 1822:0001
bttv0: using: Twinhan DST + clones [card=113,autodetected]
bttv0: using tuner=4
tuner: Ignoring new-style parameters in presence of obsolete ones
bttv0: add subdevice "dvb0"
bt878: AUDIO driver version 0.0.0 loaded
bt878: Bt878 AUDIO function found (0).
ACPI: PCI interrupt 0000:01:06.1[A] -> GSI 18 (level, high) -> IRQ 18
bt878(0): Bt878 (rev 17) at 01:06.1, irq: 18, latency: 32, memory:
0xe4001000
attach: checking "bt878 #0 [hw]"
find by pci: checking "bt878 #0 [hw]"
attach: "bt878 #0 [hw]", to card 0
DVB: registering new adapter (DST).
bt878 find by dvb adap: checking "DST"
dst_check_ci: recognize DTTDIG
DST type : terrestial TV
DST type flags :
DVB: registering frontend 0:0 (DST TERR)...


lspci:

0000:00:00.0 Host bridge: nVidia Corporation nForce2 AGP (different version?) (rev c1)
0000:00:00.1 RAM memory: nVidia Corporation nForce2 Memory Controller 1 (rev c1)
0000:00:00.2 RAM memory: nVidia Corporation nForce2 Memory Controller 4 (rev c1)
0000:00:00.3 RAM memory: nVidia Corporation nForce2 Memory Controller 3 (rev c1)
0000:00:00.4 RAM memory: nVidia Corporation nForce2 Memory Controller 2 (rev c1)
0000:00:00.5 RAM memory: nVidia Corporation nForce2 Memory Controller 5 (rev c1)
0000:00:01.0 ISA bridge: nVidia Corporation nForce2 ISA Bridge (rev a4)
0000:00:01.1 SMBus: nVidia Corporation nForce2 SMBus (MCP) (rev a2)
0000:00:02.0 USB Controller: nVidia Corporation nForce2 USB Controller(rev a4)
0000:00:02.1 USB Controller: nVidia Corporation nForce2 USB Controller(rev a4)
0000:00:02.2 USB Controller: nVidia Corporation nForce2 USB Controller(rev a4)
0000:00:04.0 Ethernet controller: nVidia Corporation nForce2 Ethernet Controller (rev a1)
0000:00:06.0 Multimedia audio controller: nVidia Corporation nForce2AC97 Audio Controler (MCP) (rev a1)
0000:00:08.0 PCI bridge: nVidia Corporation nForce2 External PCI Bridge (rev a3)
0000:00:09.0 IDE interface: nVidia Corporation nForce2 IDE (rev a2)
0000:00:1e.0 PCI bridge: nVidia Corporation nForce2 AGP (rev c1)
0000:01:06.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)
0000:01:06.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)
0000:01:07.0 Network controller: AVM Audiovisuelles MKTG & Computer System GmbH Fritz!PCI v2.0 ISDN (rev 01)
0000:01:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
0000:01:09.0 Unknown mass storage controller: Promise Technology, Inc. 20268 (rev 02)
0000:01:0b.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
0000:01:0c.0 RAID bus controller: CMD Technology Inc Silicon Image SiI3112 SATARaid Controller (rev 02)
0000:01:0d.0 FireWire (IEEE 1394): Lucent Microelectronics FW323 (rev61)
0000:02:00.0 VGA compatible controller: ATI Technologies Inc Radeon RV280 [Radeon 9200] (rev 01)

diff of boot messages:

--- boot5.log	2004-08-23 19:51:45.187502000 +0200
+++ boot6-routeirg.log	2004-08-23 19:58:50.057502000 +0200
@@ -29,9 +29,9 @@
 Using ACPI (MADT) for SMP configuration information
 Built 1 zonelists
 Initializing CPU#0
-Kernel command line: root=/dev/hde2 acpi_skip_timer_override console=ttyS1,9600 console=tty0 3
+Kernel command line: root=/dev/hde2 acpi_skip_timer_override console=ttyS1,9600 console=tty0 pci=routeirq 3
 PID hash table entries: 2048 (order: 11, 32768 bytes)
-Detected 2091.010 MHz processor.
+Detected 2091.400 MHz processor.
 Using pmtmr for high-res timesource
 Console: colour VGA+ 80x25
 Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
@@ -112,13 +112,35 @@
 usbcore: registered new driver usbfs
 usbcore: registered new driver hub
 PCI: Using ACPI for IRQ routing
-** PCI interrupts are no longer routed automatically.  If this
-** causes a device to stop working, it is probably because the
-** driver failed to call pci_enable_device().  As a temporary
-** workaround, the "pci=routeirq" argument restores the old
-** behavior.  If this argument makes the device work again,
+** Routing PCI interrupts for all devices because "pci=routeirq"
+** was specified.  If this was required to make a driver work,
 ** please email the output of "lspci" to bjorn.helgaas@hp.com
 ** so I can fix the driver.
+ACPI: PCI Interrupt Link [APCS] enabled at IRQ 23
+ACPI: PCI interrupt 0000:00:01.1[A] -> GSI 23 (level, high) -> IRQ 23
+ACPI: PCI Interrupt Link [APCF] enabled at IRQ 22
+ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 22 (level, high) -> IRQ 22
+ACPI: PCI Interrupt Link [APCG] enabled at IRQ 21
+ACPI: PCI interrupt 0000:00:02.1[B] -> GSI 21 (level, high) -> IRQ 21
+ACPI: PCI Interrupt Link [APCL] enabled at IRQ 20
+ACPI: PCI interrupt 0000:00:02.2[C] -> GSI 20 (level, high) -> IRQ 20
+ACPI: PCI Interrupt Link [APCH] enabled at IRQ 22
+ACPI: PCI interrupt 0000:00:04.0[A] -> GSI 22 (level, high) -> IRQ 22
+ACPI: PCI Interrupt Link [APCJ] enabled at IRQ 21
+ACPI: PCI interrupt 0000:00:06.0[A] -> GSI 21 (level, high) -> IRQ 21
+ACPI: PCI Interrupt Link [APC3] enabled at IRQ 18
+ACPI: PCI interrupt 0000:01:06.0[A] -> GSI 18 (level, high) -> IRQ 18
+ACPI: PCI interrupt 0000:01:06.1[A] -> GSI 18 (level, high) -> IRQ 18
+ACPI: PCI Interrupt Link [APC4] enabled at IRQ 19
+ACPI: PCI interrupt 0000:01:07.0[A] -> GSI 19 (level, high) -> IRQ 19
+ACPI: PCI Interrupt Link [APC1] enabled at IRQ 16
+ACPI: PCI interrupt 0000:01:08.0[A] -> GSI 16 (level, high) -> IRQ 16
+ACPI: PCI Interrupt Link [APC2] enabled at IRQ 17
+ACPI: PCI interrupt 0000:01:09.0[A] -> GSI 17 (level, high) -> IRQ 17
+ACPI: PCI interrupt 0000:01:0b.0[A] -> GSI 19 (level, high) -> IRQ 19
+ACPI: PCI interrupt 0000:01:0c.0[A] -> GSI 16 (level, high) -> IRQ 16
+ACPI: PCI interrupt 0000:01:0d.0[A] -> GSI 17 (level, high) -> IRQ 17
+ACPI: PCI interrupt 0000:02:00.0[A] -> GSI 19 (level, high) -> IRQ 19
 vesafb: probe of vesafb0 failed with error -6
 Machine check exception polling timer started.
 cpufreq: Detected nForce2 chipset revision C1
@@ -158,7 +180,6 @@
 hdd: SAMSUNG DVD-ROM SD-616E, ATAPI CD/DVD-ROM drive
 ide1 at 0x170-0x177,0x376 on irq 15
 PDC20268: IDE controller at PCI slot 0000:01:09.0
-ACPI: PCI Interrupt Link [APC2] enabled at IRQ 17
 ACPI: PCI interrupt 0000:01:09.0[A] -> GSI 17 (level, high) -> IRQ 17
 PDC20268: chipset revision 2
 PDC20268: 100% native mode on irq 17
@@ -186,7 +207,6 @@
 hde: 78242976 sectors (40060 MB) w/1945KiB Cache, CHS=65535/16/63, UDMA(100)
 hde: cache flushes supported
  hde: hde1 hde2
-ACPI: PCI Interrupt Link [APC1] enabled at IRQ 16
 ACPI: PCI interrupt 0000:01:0c.0[A] -> GSI 16 (level, high) -> IRQ 16
 ata1: SATA max UDMA/100 cmd 0xE0802080 ctl 0xE080208A bmdma 0xE0802000 irq 16
 ata2: SATA max UDMA/100 cmd 0xE08020C0 ctl 0xE08020CA bmdma 0xE0802008 irq 16
@@ -215,8 +235,6 @@
 EXT3-fs: INFO: recovery required on readonly filesystem.
 EXT3-fs: write access will be enabled during recovery.
 kjournald starting.  Commit interval 5 seconds
-EXT3-fs: hde2: orphan cleanup on readonly fs
-EXT3-fs: hde2: 1 orphan inode deleted
 EXT3-fs: recovery complete.
 EXT3-fs: mounted filesystem with ordered data mode.
 VFS: Mounted root (ext3 filesystem) readonly.
@@ -258,38 +276,36 @@
 HiSax: DSS1 Rev. 2.32.2.3
 HiSax: 2 channels added
 HiSax: MAX_WAITING_CALLS added
-ACPI: PCI Interrupt Link [APC4] enabled at IRQ 19
 ACPI: PCI interrupt 0000:01:07.0[A] -> GSI 19 (level, high) -> IRQ 19
 hisax_fcpcipnp: found adapter Fritz!Card PCI v2 at 0000:01:07.0
 forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.28.
-ACPI: PCI Interrupt Link [APCH] enabled at IRQ 22
 ACPI: PCI interrupt 0000:00:04.0[A] -> GSI 22 (level, high) -> IRQ 22
 eth0: forcedeth.c: subsystem: 01695:1000 bound to 0000:00:04.0
+eth0: no link during initialization.
 8139too Fast Ethernet driver 0.9.27
 ACPI: PCI interrupt 0000:01:08.0[A] -> GSI 16 (level, high) -> IRQ 16
 eth1: RealTek RTL8139 at 0xe08ea000, 00:00:1c:d7:58:77, IRQ 16
 ACPI: PCI interrupt 0000:01:0b.0[A] -> GSI 19 (level, high) -> IRQ 19
 eth1: link up, 10Mbps, full-duplex, lpa 0x4061
 eth2: RealTek RTL8139 at 0xe090e000, 00:04:61:4a:11:a5, IRQ 19
+PPP generic driver version 2.4.2
+NET: Registered protocol family 24
 Linux agpgart interface v0.100 (c) Dave Jones
-ACPI: PCI Interrupt Link [APCF] enabled at IRQ 21
-ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 21 (level, high) -> IRQ 21
+ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 22 (level, high) -> IRQ 22
 ohci_hcd 0000:00:02.0: nVidia Corporation nForce2 USB Controller
-ohci_hcd 0000:00:02.0: irq 21, pci mem e0912000
+ohci_hcd 0000:00:02.0: irq 22, pci mem e0934000
 ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 1
 hub 1-0:1.0: USB hub found
 hub 1-0:1.0: 3 ports detected
-ACPI: PCI Interrupt Link [APCG] enabled at IRQ 20
-ACPI: PCI interrupt 0000:00:02.1[B] -> GSI 20 (level, high) -> IRQ 20
+ACPI: PCI interrupt 0000:00:02.1[B] -> GSI 21 (level, high) -> IRQ 21
 ohci_hcd 0000:00:02.1: nVidia Corporation nForce2 USB Controller (#2)
-ohci_hcd 0000:00:02.1: irq 20, pci mem e0926000
+ohci_hcd 0000:00:02.1: irq 21, pci mem e0936000
 ohci_hcd 0000:00:02.1: new USB bus registered, assigned bus number 2
 hub 2-0:1.0: USB hub found
 hub 2-0:1.0: 3 ports detected
-ACPI: PCI Interrupt Link [APCL] enabled at IRQ 22
-ACPI: PCI interrupt 0000:00:02.2[C] -> GSI 22 (level, high) -> IRQ 22
+ACPI: PCI interrupt 0000:00:02.2[C] -> GSI 20 (level, high) -> IRQ 20
 ehci_hcd 0000:00:02.2: nVidia Corporation nForce2 USB Controller
-ehci_hcd 0000:00:02.2: irq 22, pci mem e0910000
+ehci_hcd 0000:00:02.2: irq 20, pci mem e0938000
 ehci_hcd 0000:00:02.2: new USB bus registered, assigned bus number 3
 ehci_hcd 0000:00:02.2: USB 2.0 enabled, EHCI 1.00, driver 2004-May-10
 hub 3-0:1.0: USB hub found
@@ -301,16 +317,13 @@
 agpgart: Detected NVIDIA nForce2 chipset
 agpgart: Maximum main memory to use for agp memory: 439M
 agpgart: AGP aperture is 64M @ 0xe0000000
-PPP generic driver version 2.4.2
-NET: Registered protocol family 24
 snd_intel8x0: Unknown parameter `joystick'
-ACPI: PCI Interrupt Link [APCJ] enabled at IRQ 21
 ACPI: PCI interrupt 0000:00:06.0[A] -> GSI 21 (level, high) -> IRQ 21
 NET: Registered protocol family 10
 Disabled Privacy Extensions on device c037a160(lo)
-intel8x0_measure_ac97_clock: measured 80423 usecs
 IPv6 over IPv4 tunneling driver
-Disabled Privacy Extensions on device dc16fc00(sit0)
+Disabled Privacy Extensions on device de51e800(sit0)
+intel8x0_measure_ac97_clock: measured 55135 usecs
 intel8x0: clocking to 48000
 parport: PnPBIOS parport detected.
 parport0: PC-style at 0x378 (0x778), irq 7, dma 3 [PCSPP,TRISTATE,COMPAT,EPP,ECP,DMA]

-- 
Ralf Gerbig			// P:     Linus Torvalds
Dr. Heinz Schäfer & Partner	//-S:     Buried alive in diapers
				//+S:     Buried alive in reporters
				   patch-2.2.4

             reply	other threads:[~2004-08-23 20:16 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-23 19:01 Ralf Gerbig [this message]
2004-08-24 16:47 ` ACPI interrupt routing Bjorn Helgaas
2004-08-24 18:15   ` Ralf Gerbig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m0isb9ispy.fsf@test3.hsp-law.de \
    --to=rge@hsp-law.de \
    --cc=bjorn.helgaas@hp.com \
    --cc=linux-dvb-maintainer@linuxtv.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rge-news@quengel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.