Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754858AbZC1UxB (ORCPT ); Sat, 28 Mar 2009 16:53:01 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752526AbZC1Uwu (ORCPT ); Sat, 28 Mar 2009 16:52:50 -0400 Received: from rv-out-0506.google.com ([209.85.198.235]:5310 "EHLO rv-out-0506.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751211AbZC1Uwr convert rfc822-to-8bit (ORCPT ); Sat, 28 Mar 2009 16:52:47 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=PFhngdNKksf4ltz9Agy44y731lVOzOKmXme/sBbe6m2gZE2bq+U2YjqGSaA1mlvR5H vntIFABm0Fs6f56FEHTGqOORagD21evPYAgijnJsy6+smoWPs0mi78tkj2Ko4XWrYyXl AfS3KIdmd4IFSme3fu0WQ9PJznZ4K177bz2cU= MIME-Version: 1.0 In-Reply-To: <200903281431.36572.prakash@punnoor.de> References: <20090326161001.526354ed@hobbes> <200903281334.51490.prakash@punnoor.de> <200903281431.36572.prakash@punnoor.de> Date: Sat, 28 Mar 2009 13:52:45 -0700 X-Google-Sender-Auth: c41848450f746717 Message-ID: <86802c440903281352v1a12a5a2kbda5a039d72aa26f@mail.gmail.com> Subject: Re: [PATCH] pci: don't enable too much HT MSI mapping -v5 -resend From: Yinghai Lu To: Prakash Punnoor Cc: Jesse Barnes , Matthew Wilcox , Andrew Morton , Ingo Molnar , "Eric W. Biederman" , Robert Hancock , david@lang.hm, linux-kernel , linux-pci@vger.kernel.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 41981 Lines: 883 On Sat, Mar 28, 2009 at 6:31 AM, Prakash Punnoor wrote: > On Samstag 28 M?rz 2009 13:34:44 Prakash Punnoor wrote: >> On Freitag 27 M?rz 2009 00:10:01 Jesse Barnes wrote: >> > On Fri, 20 Mar 2009 19:29:41 -0700 >> > >> > Yinghai Lu wrote: >> > > Impact: fix bug >> > > >> > > Prakash reported that his c51-mcp51 system ondie sound card doesn't >> > > work MSI but if he hack out the HT-MSI on mcp51, the MSI will work >> > > well with sound card. >> > > >> > > this patch rework the nv_msi_ht_cap_quirk() >> > > and will only try to avoid to enable ht_msi on device following that >> > > root dev, and don't touch that root dev >> > > >> > > v3: will enable c51... >> > > v4: will enable c51 kind of without leaf too. >> > > v5: update to mainline >> > > >> > > Reported-by: Prakash Punnoor >> > > Signed-off-by: Yinghai Lu >> > >> > Applied, thanks. ?Prakash if you get a chance can you try testing my >> > linux-next branch (or just linux-next in general tomorrow) to make sure >> > this is still ok for you? >> > >> > Thanks, >> >> Finally I am able to test the linux-next branch of pci tree after Jesse >> gave some help with git.(Is it correct that the kernel calls itself >> 2.6.28-rc8? I looked into quirks.c and it seems to be correctly patched.) >> Unfortunately it doesn't seem to work for me (and I am wondering why as the >> old v4 version seemed to work ontop of one of the 2.6.29-rc versions): >> >> dmesg|grep HT >> pci 0000:00:00.0: Found disabled HT MSI Mapping >> pci 0000:00:03.0: Enabling HT MSI Mapping >> pci 0000:00:09.0: Found disabled HT MSI Mapping >> pci 0000:00:0e.0: Enabling HT MSI Mapping >> pci 0000:00:09.0: Found disabled HT MSI Mapping >> pci 0000:00:0f.0: Enabling HT MSI Mapping >> pci 0000:00:09.0: Found disabled HT MSI Mapping >> pci 0000:00:10.0: Enabling HT MSI Mapping >> pci 0000:00:09.0: Found disabled HT MSI Mapping >> pci 0000:00:10.1: Enabling HT MSI Mapping >> >> Device 09.0 doesn't get enabled (good) but 00.0 also not (bad). Then my >> Intel HDA cannot use MSI. > > I sprinkeld a few debugging messages around in the code and looking at that > I don't see how the code can enable NMSI for device 00.0, but not for 09.0: > > Both will exit here: > > if (host_bridge == dev && host_bridge_with_leaf(host_bridge)) > where is 0000:00:03.0: Enabling HT MSI Mapping from? last time you report: A full lspci listing: 00:00.0 RAM memory: nVidia Corporation C51 Host Bridge (rev a2) Subsystem: ASUSTeK Computer Inc. Device 81c0 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- SERR- TAbort- SERR+ TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- Reset- FastB2B- PriDiscTmr- SecDiscTmr+ DiscTmrStat- DiscTmrSERREn- Capabilities: [b8] Subsystem: Gammagraphx, Inc. (or missing ID) Device 0000 Capabilities: [8c] HyperTransport: MSI Mapping Enable+ Fixed- Mapping Address Base: 00000000fee00000 00: de 10 6f 02 07 00 b0 00 a2 01 04 06 00 00 81 00 10: 00 00 00 00 00 00 00 00 00 01 01 80 b0 b0 80 02 20: d0 fd d0 fd e0 fd e0 fd 00 00 00 00 00 00 00 00 30: 00 00 00 00 b8 00 00 00 00 00 00 00 ff 00 04 02 40: 00 00 03 00 01 00 02 00 07 00 00 00 00 00 44 00 50: 00 00 fe cf 00 00 00 00 ff 1f ff 1f 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 08 00 01 a8 90: 00 00 e0 fe 00 00 00 00 00 00 00 00 00 00 00 00 a0: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 ff ff 00 00 0d 8c 00 00 00 00 00 00 c0: 00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:10.1 Audio device: nVidia Corporation MCP51 High Definition Audio (rev a2) Subsystem: ASUSTeK Computer Inc. Device 81cb Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- 00: 22 10 03 11 00 00 10 00 00 00 00 06 00 00 80 00 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 f0 00 00 00 00 00 00 00 00 00 00 00 40: 00 01 00 00 40 00 10 0a 00 00 00 00 00 00 00 00 50: 80 e4 a8 85 19 00 00 00 00 00 00 00 00 00 26 08 60: 4a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 11 01 32 51 21 40 70 50 00 2a 00 08 17 21 00 00 80: 00 00 07 23 13 21 13 21 00 00 00 00 00 00 00 00 90: 03 00 00 00 10 00 00 00 00 ac 2f 01 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 30 35 22 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 01 a7 0d 00 00 00 c0 08 26 26 26 00 e0: 00 00 00 00 20 1a 52 00 19 17 00 00 00 00 00 00 f0: 0f 00 10 00 00 00 00 00 00 00 00 00 b2 0f 04 00 01:05.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link) (prog-if 10 [OHCI]) Subsystem: ASUSTeK Computer Inc. K8N4-E Mainboard Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR-