lkml.org 
[lkml]   [2008]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: iommu breaks usb after resume
On Thu, Mar 27, 2008 at 02:29:23PM +0100, Pavel Machek wrote:
> Hi!
>
> > > ...this sounds like it needs to be done during resume, too, no?
> >
> > This is only a workaround for BIOS that don't set up an aperture,
> > but yes if they don't do that it is likely needed on resume too.
> >
> > You would need to add a resume handler to aperture.c
>
> Probably this needs to be redone during resume, right?

Yes, but using the standard pci access functions to avoid races which
the early boot code can ignore.

>
> /* Fix up the north bridges */
> for (num = 24; num < 32; num++) {
> if (!early_is_k8_nb(read_pci_config(0, num, 3, 0x00)))
> continue;
>
> /*
> * Don't enable translation yet. That is done later.
> * Assume this BIOS didn't initialise the GART so
> * just overwrite all previous bits
> */
> write_pci_config(0, num, 3, 0x90, aper_order<<1);
> write_pci_config(0, num, 3, 0x94, aper_alloc>>25);
> }
>
> ....plus the "enable translation" part... but where is that hiding?

Both pci-gart and the AGP driver have code for this.

-Andi



\
 
 \ /
  Last update: 2008-03-27 14:37    [W:0.037 / U:0.232 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site