All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] x86/PCI: use host bridge _CRS info on MSI MS-7253
@ 2012-02-28 18:51 Bjorn Helgaas
  2012-02-28 18:55 ` Bjorn Helgaas
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Bjorn Helgaas @ 2012-02-28 18:51 UTC (permalink / raw)
  To: Jesse Barnes; +Cc: Jonathan Nieder, linux-pci, Svante Signell

From: Jonathan Nieder <jrnieder@gmail.com>

In the spirit of commit 29cf7a30f8a0 ("x86/PCI: use host bridge _CRS
info on ASUS M2V-MX SE"), this DMI quirk turns on "pci_use_crs" by
default on a board that needs it.

This fixes boot failures and oopses introduced in 3e3da00c01d0
("x86/pci: AMD one chain system to use pci read out res").  The quirk
is quite targetted (to a specific board and BIOS version) for two
reasons:

 (1) to emphasize that this method of tackling the problem one quirk
     at a time is a little insane

 (2) to give BIOS vendors an opportunity to use simpler tables and
     allow us to return to generic behavior (whatever that happens to
     be) with a later BIOS update

In other words, I am not at all happy with having quirks like this.
But it is even worse for the kernel not to work out of the box on
these machines, so...

Reference: https://bugzilla.kernel.org/show_bug.cgi?id=42619
Reported-by: Svante Signell <svante.signell@telia.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
---
 arch/x86/pci/acpi.c |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
index a312e76..2c5cbdb 100644
--- a/arch/x86/pci/acpi.c
+++ b/arch/x86/pci/acpi.c
@@ -60,6 +60,17 @@ static const struct dmi_system_id pci_use_crs_table[] __initconst = {
 			DMI_MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."),
 		},
 	},
+	/* https://bugzilla.kernel.org/show_bug.cgi?id=42619 */
+	{
+		.callback = set_use_crs,
+		.ident = "MSI MS-7253",
+		.matches = {
+			DMI_MATCH(DMI_BOARD_VENDOR, "MICRO-STAR INTERNATIONAL CO., LTD"),
+			DMI_MATCH(DMI_BOARD_NAME, "MS-7253"),
+			DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies, LTD"),
+			DMI_MATCH(DMI_BIOS_VERSION, "V1.6"),
+		},
+	},
 
 	/* Now for the blacklist.. */
 


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH] x86/PCI: use host bridge _CRS info on MSI MS-7253
  2012-02-28 18:51 [PATCH] x86/PCI: use host bridge _CRS info on MSI MS-7253 Bjorn Helgaas
@ 2012-02-28 18:55 ` Bjorn Helgaas
  2012-02-28 19:09 ` Jesse Barnes
  2012-02-28 21:31 ` [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version Jonathan Nieder
  2 siblings, 0 replies; 11+ messages in thread
From: Bjorn Helgaas @ 2012-02-28 18:55 UTC (permalink / raw)
  To: Jesse Barnes; +Cc: Jonathan Nieder, linux-pci, Svante Signell, caralu74

On Tue, Feb 28, 2012 at 11:51 AM, Bjorn Helgaas <bhelgaas@google.com> wrote:
> From: Jonathan Nieder <jrnieder@gmail.com>
>
> In the spirit of commit 29cf7a30f8a0 ("x86/PCI: use host bridge _CRS
> info on ASUS M2V-MX SE"), this DMI quirk turns on "pci_use_crs" by
> default on a board that needs it.

Hi Jesse,

This patch is against upstream (891003abb0d), and I think it also
applies cleanly on your linux-next branch.  It fixes a regression and
shouldn't affect other machines, so you might consider it even for
3.3.  Otherwise it can go in the merge window.

Bjorn

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] x86/PCI: use host bridge _CRS info on MSI MS-7253
  2012-02-28 18:51 [PATCH] x86/PCI: use host bridge _CRS info on MSI MS-7253 Bjorn Helgaas
  2012-02-28 18:55 ` Bjorn Helgaas
@ 2012-02-28 19:09 ` Jesse Barnes
  2012-02-28 21:31 ` [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version Jonathan Nieder
  2 siblings, 0 replies; 11+ messages in thread
From: Jesse Barnes @ 2012-02-28 19:09 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: Jonathan Nieder, linux-pci, Svante Signell

[-- Attachment #1: Type: text/plain, Size: 1102 bytes --]

On Tue, 28 Feb 2012 11:51:10 -0700
Bjorn Helgaas <bhelgaas@google.com> wrote:

> From: Jonathan Nieder <jrnieder@gmail.com>
> 
> In the spirit of commit 29cf7a30f8a0 ("x86/PCI: use host bridge _CRS
> info on ASUS M2V-MX SE"), this DMI quirk turns on "pci_use_crs" by
> default on a board that needs it.
> 
> This fixes boot failures and oopses introduced in 3e3da00c01d0
> ("x86/pci: AMD one chain system to use pci read out res").  The quirk
> is quite targetted (to a specific board and BIOS version) for two
> reasons:
> 
>  (1) to emphasize that this method of tackling the problem one quirk
>      at a time is a little insane
> 
>  (2) to give BIOS vendors an opportunity to use simpler tables and
>      allow us to return to generic behavior (whatever that happens to
>      be) with a later BIOS update
> 
> In other words, I am not at all happy with having quirks like this.
> But it is even worse for the kernel not to work out of the box on
> these machines, so...

Applied to my for-linus branch, thanks.

-- 
Jesse Barnes, Intel Open Source Technology Center

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version
  2012-02-28 18:51 [PATCH] x86/PCI: use host bridge _CRS info on MSI MS-7253 Bjorn Helgaas
  2012-02-28 18:55 ` Bjorn Helgaas
  2012-02-28 19:09 ` Jesse Barnes
@ 2012-02-28 21:31 ` Jonathan Nieder
  2012-02-28 21:35   ` Bjorn Helgaas
  2012-03-01 18:57   ` Jesse Barnes
  2 siblings, 2 replies; 11+ messages in thread
From: Jonathan Nieder @ 2012-02-28 21:31 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: Jesse Barnes, linux-pci, Svante Signell, Carlos Luna

Carlos was getting

	WARNING: at drivers/pci/pci.c:118 pci_ioremap_bar+0x24/0x52()

when probing his sound card, and sound did not work.  After adding
pci=use_crs to the kernel command line, no more trouble.

Ok, we can add a quirk.  dmidecode output reveals that this is an MSI
MS-7253, for which we already have a quirk, but the short-sighted
author tied the quirk to a single BIOS version, making it not kick in
on Carlos's machine with BIOS V1.2.  If a later BIOS update makes it
no longer necessary to look at the _CRS info it will still be
harmless, so let's stop trying to guess which versions have and don't
have accurate _CRS tables.

Addresses https://bugtrack.alsa-project.org/alsa-bug/view.php?id=5533
Also see <https://bugzilla.kernel.org/show_bug.cgi?id=42619>.

Reported-by: Carlos Luna <caralu74@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
---
Hi,

Could you squash this into the patch "x86/PCI: use host bridge _CRS
info on MSI MS-7253", if it's not too late?  Sorry for the thinko.

Thanks,
Jonathan

 arch/x86/pci/acpi.c |    1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
index 2c5cbdb5d602..d066e11159f3 100644
--- a/arch/x86/pci/acpi.c
+++ b/arch/x86/pci/acpi.c
@@ -68,7 +68,6 @@ static const struct dmi_system_id pci_use_crs_table[] __initconst = {
 			DMI_MATCH(DMI_BOARD_VENDOR, "MICRO-STAR INTERNATIONAL CO., LTD"),
 			DMI_MATCH(DMI_BOARD_NAME, "MS-7253"),
 			DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies, LTD"),
-			DMI_MATCH(DMI_BIOS_VERSION, "V1.6"),
 		},
 	},
 
-- 
1.7.9.2


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version
  2012-02-28 21:31 ` [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version Jonathan Nieder
@ 2012-02-28 21:35   ` Bjorn Helgaas
  2012-03-01 18:57   ` Jesse Barnes
  1 sibling, 0 replies; 11+ messages in thread
From: Bjorn Helgaas @ 2012-02-28 21:35 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Jesse Barnes, linux-pci, Svante Signell, Carlos Luna

On Tue, Feb 28, 2012 at 2:31 PM, Jonathan Nieder <jrnieder@gmail.com> wrote:
> Carlos was getting
>
>        WARNING: at drivers/pci/pci.c:118 pci_ioremap_bar+0x24/0x52()
>
> when probing his sound card, and sound did not work.  After adding
> pci=use_crs to the kernel command line, no more trouble.
>
> Ok, we can add a quirk.  dmidecode output reveals that this is an MSI
> MS-7253, for which we already have a quirk, but the short-sighted
> author tied the quirk to a single BIOS version, making it not kick in
> on Carlos's machine with BIOS V1.2.  If a later BIOS update makes it
> no longer necessary to look at the _CRS info it will still be
> harmless, so let's stop trying to guess which versions have and don't
> have accurate _CRS tables.
>
> Addresses https://bugtrack.alsa-project.org/alsa-bug/view.php?id=5533
> Also see <https://bugzilla.kernel.org/show_bug.cgi?id=42619>.

Thanks, Jonathan.  I was going to do this, but you saved me the trouble :)

Reviewed-by: Bjorn Helgaas <bhelgaas@google.com>

> Reported-by: Carlos Luna <caralu74@gmail.com>
> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
> ---
> Hi,
>
> Could you squash this into the patch "x86/PCI: use host bridge _CRS
> info on MSI MS-7253", if it's not too late?  Sorry for the thinko.
>
> Thanks,
> Jonathan
>
>  arch/x86/pci/acpi.c |    1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
> index 2c5cbdb5d602..d066e11159f3 100644
> --- a/arch/x86/pci/acpi.c
> +++ b/arch/x86/pci/acpi.c
> @@ -68,7 +68,6 @@ static const struct dmi_system_id pci_use_crs_table[] __initconst = {
>                        DMI_MATCH(DMI_BOARD_VENDOR, "MICRO-STAR INTERNATIONAL CO., LTD"),
>                        DMI_MATCH(DMI_BOARD_NAME, "MS-7253"),
>                        DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies, LTD"),
> -                       DMI_MATCH(DMI_BIOS_VERSION, "V1.6"),
>                },
>        },
>
> --
> 1.7.9.2
>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version
  2012-02-28 21:31 ` [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version Jonathan Nieder
  2012-02-28 21:35   ` Bjorn Helgaas
@ 2012-03-01 18:57   ` Jesse Barnes
  2012-03-02  4:25     ` Jonathan Nieder
  1 sibling, 1 reply; 11+ messages in thread
From: Jesse Barnes @ 2012-03-01 18:57 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Bjorn Helgaas, linux-pci, Svante Signell, Carlos Luna

[-- Attachment #1: Type: text/plain, Size: 1126 bytes --]

On Tue, 28 Feb 2012 15:31:35 -0600
Jonathan Nieder <jrnieder@gmail.com> wrote:

> Carlos was getting
> 
> 	WARNING: at drivers/pci/pci.c:118 pci_ioremap_bar+0x24/0x52()
> 
> when probing his sound card, and sound did not work.  After adding
> pci=use_crs to the kernel command line, no more trouble.
> 
> Ok, we can add a quirk.  dmidecode output reveals that this is an MSI
> MS-7253, for which we already have a quirk, but the short-sighted
> author tied the quirk to a single BIOS version, making it not kick in
> on Carlos's machine with BIOS V1.2.  If a later BIOS update makes it
> no longer necessary to look at the _CRS info it will still be
> harmless, so let's stop trying to guess which versions have and don't
> have accurate _CRS tables.
> 
> Addresses https://bugtrack.alsa-project.org/alsa-bug/view.php?id=5533
> Also see <https://bugzilla.kernel.org/show_bug.cgi?id=42619>.
> 
> Reported-by: Carlos Luna <caralu74@gmail.com>
> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
> ---

Applied to my for-linus branch, thanks.

-- 
Jesse Barnes, Intel Open Source Technology Center

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version
  2012-03-01 18:57   ` Jesse Barnes
@ 2012-03-02  4:25     ` Jonathan Nieder
  2012-04-09 23:47       ` [3.0.y, 3.2.y, 3.3.y] " Jonathan Nieder
  0 siblings, 1 reply; 11+ messages in thread
From: Jonathan Nieder @ 2012-03-02  4:25 UTC (permalink / raw)
  To: Jesse Barnes; +Cc: Bjorn Helgaas, linux-pci, Svante Signell, Carlos Luna

Hi Bjorn and Jesse,

Jesse Barnes wrote:

> Applied to my for-linus branch, thanks.

Thanks for taking care of it.  I'll look into submitting these to
-stable once they hit mainline if I notice.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [3.0.y, 3.2.y, 3.3.y] Re: [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version
  2012-03-02  4:25     ` Jonathan Nieder
@ 2012-04-09 23:47       ` Jonathan Nieder
  2012-04-09 23:50         ` Jonathan Nieder
  2012-04-10 23:00         ` Greg Kroah-Hartman
  0 siblings, 2 replies; 11+ messages in thread
From: Jonathan Nieder @ 2012-04-09 23:47 UTC (permalink / raw)
  To: stable
  Cc: Jesse Barnes, Bjorn Helgaas, linux-pci, Svante Signell,
	Carlos Luna, Yinghai Lu, Paul Menzel, Greg Kroah-Hartman

Hi Greg,

Jonathan Nieder wrote:
> Jesse Barnes wrote:

>> Applied to my for-linus branch, thanks.
>
> Thanks for taking care of it.  I'll look into submitting these to
> -stable once they hit mainline if I notice.

Please queue

 84113717 (x86/PCI: use host bridge _CRS info on MSI MS-7253)
 a97f4f5e (x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS
           version)

for maintained stable trees 2.6.34.y and newer.

Those two patches address a regression that bisects to
v2.6.34-rc1~218^2~26 (x86/pci: AMD one chain system to use pci read
out res, 2010-02-10) and on the affected machines (Microstar MSI
MS-7253) results in misconfiguration and instability --- some example
symptoms were audio being silenced and crashes at boot time.  They
work by automatically enabling the pci=use_crs parameter so the kernel
can pay attention to information in ACPI tables that can save it from
trouble.

The patch was applied to mainline during the 3.3 merge window.

https://bugzilla.kernel.org/show_bug.cgi?id=42619 has details.
Thanks to Svante Signell and Carlos Luna for reporting it and Bjorn
Helgas and Paul Menzel for tracking it down.

Jonathan

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [3.0.y, 3.2.y, 3.3.y] Re: [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version
  2012-04-09 23:47       ` [3.0.y, 3.2.y, 3.3.y] " Jonathan Nieder
@ 2012-04-09 23:50         ` Jonathan Nieder
  2012-04-10 23:00         ` Greg Kroah-Hartman
  1 sibling, 0 replies; 11+ messages in thread
From: Jonathan Nieder @ 2012-04-09 23:50 UTC (permalink / raw)
  To: stable
  Cc: Jesse Barnes, Bjorn Helgaas, linux-pci, Svante Signell,
	Carlos Luna, Yinghai Lu, Paul Menzel, Greg Kroah-Hartman

Jonathan Nieder wrote:

> [Subject: [3.0.y, 3.2.y, 3.3.y] Re: [PATCH] x86/PCI: do not tie MSI
> MS-7253 use_crs quirk to BIOS version]

Since v3.3 already contains the patches, 3.3.y does not need this.
3.0.y and 3.2.y do, though.  Sorry for the nonsense.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [3.0.y, 3.2.y, 3.3.y] Re: [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version
  2012-04-09 23:47       ` [3.0.y, 3.2.y, 3.3.y] " Jonathan Nieder
  2012-04-09 23:50         ` Jonathan Nieder
@ 2012-04-10 23:00         ` Greg Kroah-Hartman
  2012-04-11  1:41           ` Jonathan Nieder
  1 sibling, 1 reply; 11+ messages in thread
From: Greg Kroah-Hartman @ 2012-04-10 23:00 UTC (permalink / raw)
  To: Jonathan Nieder
  Cc: stable, Jesse Barnes, Bjorn Helgaas, linux-pci, Svante Signell,
	Carlos Luna, Yinghai Lu, Paul Menzel

On Mon, Apr 09, 2012 at 06:47:55PM -0500, Jonathan Nieder wrote:
> Hi Greg,
> 
> Jonathan Nieder wrote:
> > Jesse Barnes wrote:
> 
> >> Applied to my for-linus branch, thanks.
> >
> > Thanks for taking care of it.  I'll look into submitting these to
> > -stable once they hit mainline if I notice.
> 
> Please queue
> 
>  84113717 (x86/PCI: use host bridge _CRS info on MSI MS-7253)
>  a97f4f5e (x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS
>            version)
> 
> for maintained stable trees 2.6.34.y and newer.

Applied to 3.0-stable and newer.

greg k-h

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [3.0.y, 3.2.y, 3.3.y] Re: [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version
  2012-04-10 23:00         ` Greg Kroah-Hartman
@ 2012-04-11  1:41           ` Jonathan Nieder
  0 siblings, 0 replies; 11+ messages in thread
From: Jonathan Nieder @ 2012-04-11  1:41 UTC (permalink / raw)
  To: Paul Gortmaker
  Cc: stable, Jesse Barnes, Bjorn Helgaas, linux-pci, Svante Signell,
	Carlos Luna, Yinghai Lu, Paul Menzel, Greg Kroah-Hartman

Greg Kroah-Hartman wrote:
> On Mon, Apr 09, 2012 at 06:47:55PM -0500, Jonathan Nieder wrote:

>> Please queue
>>
>>  84113717 (x86/PCI: use host bridge _CRS info on MSI MS-7253)
>>  a97f4f5e (x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS
>>            version)
>>
>> for maintained stable trees 2.6.34.y and newer.
>
> Applied to 3.0-stable and newer.

Thanks much.

Paul Gortmaker: FYI.  [1] has context.

Ciao,
Jonathan

[1] http://thread.gmane.org/gmane.linux.kernel.pci/13825/focus=14618

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2012-04-11  1:42 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-02-28 18:51 [PATCH] x86/PCI: use host bridge _CRS info on MSI MS-7253 Bjorn Helgaas
2012-02-28 18:55 ` Bjorn Helgaas
2012-02-28 19:09 ` Jesse Barnes
2012-02-28 21:31 ` [PATCH] x86/PCI: do not tie MSI MS-7253 use_crs quirk to BIOS version Jonathan Nieder
2012-02-28 21:35   ` Bjorn Helgaas
2012-03-01 18:57   ` Jesse Barnes
2012-03-02  4:25     ` Jonathan Nieder
2012-04-09 23:47       ` [3.0.y, 3.2.y, 3.3.y] " Jonathan Nieder
2012-04-09 23:50         ` Jonathan Nieder
2012-04-10 23:00         ` Greg Kroah-Hartman
2012-04-11  1:41           ` Jonathan Nieder

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.