Re: AGPGART driver for ArticiaS - ioremap() problem

4 messages, 2 authors, 2006-01-23 · open the first message on its own page

Re: AGPGART driver for ArticiaS - ioremap() problem

From: Gerhard Pircher <hidden>
Date: 2006-01-21 01:59:17

quoted hunk
--- Ursprüngliche Nachricht ---
Von: Benjamin Herrenschmidt [off-list ref]
An: Gerhard Pircher [off-list ref]
Kopie: linuxppc-dev@ozlabs.org, debian-powerpc@lists.debian.org
Betreff: Re: AGPGART driver for ArticiaS - ioremap() problem
Datum: Sat, 21 Jan 2006 10:00:16 +1100

On Fri, 2006-01-20 at 12:16 +0100, Gerhard Pircher wrote:
quoted
quoted
Nope... look at drivers/pci/setup-res.c how it does for allocating
new resources for PCI devices.
I guess you mean something like this code snipped from the
efficeon-agp.c source code (with pci_assign_resource()):
Something around those lines... you will probably need to use lower
level routines, not pci_* as the AGP aperture isn't generally a BAR.
Yes, I see. :( The code mostly allocates the resources for the AGPGART
driver beyond the real memory space, thus preventing the X server to work.
Sometimes the resource is also mapped to where the resource of the graphic
card resides (address 0x88000000, compare with the included iomem file).
quoted
BTW: I took a look at the PCI resources list of the AmigaOne and found
out that the resources of the AGP graphic card are allocated to bus 0
(PCI only). IMHO their allocation should be assigned to bus 1 (AGP) (at 
least this is the case on x86!?), so I think this should be fixed. Is
my assumption correct?
Hrm... sounds weird, can you send me the output of lspci -vv,
cat /proc/iomem and cat /prop/ioports ?
Please take a look to the attachments. But the allocation seems to be
different now! Strange!? At least the AGPGART driver is not allocated to bus
1.

Thanks!

Gerhard

-- 
Lust, ein paar Euro nebenbei zu verdienen? Ohne Kosten, ohne Risiko!
Satte Provisionen für GMX Partner: http://www.gmx.net/de/go/partner

Re: AGPGART driver for ArticiaS - ioremap() problem

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2006-01-21 22:48:54

On Sat, 2006-01-21 at 02:59 +0100, Gerhard Pircher wrote:
Yes, I see. :( The code mostly allocates the resources for the AGPGART
driver beyond the real memory space, thus preventing the X server to work.
Sometimes the resource is also mapped to where the resource of the graphic
card resides (address 0x88000000, compare with the included iomem file).
The AGP aperture should generally be located "outside" of those spaces.
That is above RAM and in some place where no device already resides...
It can be made to overlap RAM but that isn't a good idea (that's what
happens on Macs though due to a bug in the Apple chipset).
Please take a look to the attachments. But the allocation seems to be
different now! Strange!? At least the AGPGART driver is not allocated to bus
1.
I don't see anything related to AGP in your output... you didn't post
the lspci as root thus it's missing all the useful infos ;) Also, the
AGP base isn't generally a PCI BAR of the bridge... it is one in your
case ?

Ben.
 

Re: AGPGART driver for ArticiaS - ioremap() problem

From: Gerhard Pircher <hidden>
Date: 2006-01-23 22:12:10

quoted hunk
--- Ursprüngliche Nachricht ---
Von: Benjamin Herrenschmidt [off-list ref]
An: Gerhard Pircher [off-list ref]
Kopie: linuxppc-dev@ozlabs.org, debian-powerpc@lists.debian.org
Betreff: Re: AGPGART driver for ArticiaS - ioremap() problem
Datum: Sun, 22 Jan 2006 09:48:44 +1100

On Sat, 2006-01-21 at 02:59 +0100, Gerhard Pircher wrote:
quoted
Yes, I see. :( The code mostly allocates the resources for the AGPGART
driver beyond the real memory space, thus preventing the X server to
work. Sometimes the resource is also mapped to where the resource of
the graphic card resides (address 0x88000000, compare with the included 
iomem file).
The AGP aperture should generally be located "outside" of those spaces.
That is above RAM and in some place where no device already resides...
It can be made to overlap RAM but that isn't a good idea (that's what
happens on Macs though due to a bug in the Apple chipset).
Ahh, so the AGP aperture should not be within the memory space and any other
PCI/IO address range. Slowly but surely I become confused. ;-)
I don't see anything related to AGP in your output... you didn't post
the lspci as root thus it's missing all the useful infos ;)
I included a new lspci output log. :-) (now done as root)
Also, the AGP base isn't generally a PCI BAR of the bridge... it is one
in your case ?
I'm afraid I can't answer this question (you know, we have no datasheet for
the ArticiaS yet). From what I can see in the log, there is an unassigned
memory region (type 0, should be <4GB I guess). Could this affect AGP
operation? 

Gerhard

-- 
Lust, ein paar Euro nebenbei zu verdienen? Ohne Kosten, ohne Risiko!
Satte Provisionen für GMX Partner: http://www.gmx.net/de/go/partner

Re: AGPGART driver for ArticiaS - ioremap() problem

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2006-01-23 23:15:28

On Mon, 2006-01-23 at 23:12 +0100, Gerhard Pircher wrote:
quoted
--- Ursprüngliche Nachricht ---
Von: Benjamin Herrenschmidt [off-list ref]
An: Gerhard Pircher [off-list ref]
Kopie: linuxppc-dev@ozlabs.org, debian-powerpc@lists.debian.org
Betreff: Re: AGPGART driver for ArticiaS - ioremap() problem
Datum: Sun, 22 Jan 2006 09:48:44 +1100

On Sat, 2006-01-21 at 02:59 +0100, Gerhard Pircher wrote:
quoted
Yes, I see. :( The code mostly allocates the resources for the AGPGART
driver beyond the real memory space, thus preventing the X server to
work. Sometimes the resource is also mapped to where the resource of
the graphic card resides (address 0x88000000, compare with the included 
iomem file).
The AGP aperture should generally be located "outside" of those spaces.
That is above RAM and in some place where no device already resides...
It can be made to overlap RAM but that isn't a good idea (that's what
happens on Macs though due to a bug in the Apple chipset).
Ahh, so the AGP aperture should not be within the memory space and any other
PCI/IO address range. Slowly but surely I become confused. ;-)
quoted
I don't see anything related to AGP in your output... you didn't post
the lspci as root thus it's missing all the useful infos ;)
I included a new lspci output log. :-) (now done as root)
quoted
Also, the AGP base isn't generally a PCI BAR of the bridge... it is one
in your case ?
I'm afraid I can't answer this question (you know, we have no datasheet for
the ArticiaS yet). From what I can see in the log, there is an unassigned
memory region (type 0, should be <4GB I guess). Could this affect AGP
operation? 
No idea... memory BARs on host bridges can be anything... It might just
be the normal PCI DMA region.

Ben.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help