[prev in list] [next in list] [prev in thread] [next in thread]
List: bluesmoke-devel
Subject: Re: [patch 4/5] pci-quirks: unhide 'Overflow' device on i828{6,
From: Bjorn Helgaas <bjorn.helgaas () hp ! com>
Date: 2009-01-13 16:54:57
Message-ID: 200901130954.57575.bjorn.helgaas () hp ! com
[Download RAW message or body]
On Saturday 10 January 2009 06:21:38 am Michał Mirosław wrote:
> On Fri, Jan 09, 2009 at 01:40:02PM -0800, Jesse Barnes wrote:
> > On Friday, January 9, 2009 12:26 pm akpm@linux-foundation.org wrote:
> > > From: Michal Miroslaw <mirq-linux@rere.qmqm.pl>
> > > As I found out from EDAC driver sources for i82875P some BIOSes for
> > > i82875P/PE hide 'overflow' device 6. The same thing happens for
> > > i82865P/PE chipsets.
> > >
> > > After testing this patch for couple of days on my laptop (i82856P) it
> > > looks like something is resetting device 0 (MCH) config register 0xF4 to
> > > zero and effectively disabling the device again. The delay looks random
> > > to me. I can easily update the register using 'hexedit
> > > /sys/bus/pci/devices/0000\:00\:00.0/config' and see correct values in
> > > lspci output afterwards.
> > This one already got a NAK until Michal can figure out a way to prevent the
> > SMM code on his machine from hiding this device periodically.
>
> I looked at it again and it turns out that actually nothing is touching
> this register after bootup. The problem lies in ACPI PNP code from my BIOS
> it accesses one register from MCH overflow device (installed memory size)
> and disables it after access. There are no other references to DEV6 in
> the DSDT disassembly. The quick fix for me is to just remove accesses to
> DEV6 bit from DSDT.
Changing the DSDT doesn't work for mainline, of course. We have to
run with the standard BIOS.
> A better workaround would be a hook after ACPI PNP
> resource discovery phase.
In general, _CRS can be evaluated at any time, not just at boot-time
when PNP discovers things.
> Maybe EDAC guys have some more examples of what
> happens on 875P chipsets where the DEV6 is disabled?
>
> ---snip---
> Device (PCI0)
> {
> [...]
> OperationRegion (REGS, PCI_Config, 0x40, 0xC0)
> Field (REGS, ByteAcc, NoLock, Preserve)
> {
> Offset (0xB4),
> , 1,
> DEV6, 1
> }
> [...]
> Method (_CRS, 0, Serialized)
> {
> [...]
> CreateDWordField (RSRC, \_SB.PCI0._Y00._MIN, BTMN)
> Store (One, DEV6)
> Multiply (0x04000000, DRB7, BTMN)
> Store (Zero, DEV6)
> [...]
> ---snip---
>
> Best Regards,
> Michał Mirosław
> --
> To unsubscribe from this list: send the line "unsubscribe linux-pci" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
bluesmoke-devel mailing list
bluesmoke-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluesmoke-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic