[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: XFree86 4.1.0: call for help



Benjamin Herrenschmidt wrote:
> 
> >> We need a way to use multiple ioBases from inside xfree to fix the
> >> problem. The best solution will be to disable ISA I/O for now and get a
> >> better fix later on.
> >
> >No, that's not the solution.  The solution is to get the kernel to return
> >the *correct* iobase for the sepecific devfn, right now it returns one for
> >any and all pci devices.  Since these strange UniN boards have multiple
> >bases, it should take into consideration the devfn (which it currently
> >ignores totally).
> >
> >Michel, find out your 2 (or 3?) iobases and try each one (hardcode it in
> >X, set it for ioBase_phys) and see which one works.  When you find the
> >right one, add that to the kernel syscall, or find a generic way to find
> >the mask which sets those on that bus apart from others.
> 
> What kernel is this ?

Your 2.4.5-pre3. I follow your 2.4 tree pretty closely you know. :)

> The kernel syscall is supposed to return the proper iobase for the card
> and does indeed handle uninorth properly, at least on 2.4. I have to check
> what's up with 2.2 (didn't play with it for a long time).
> 
> The "ultimate" fix is however to implement davem /proc stuff properly.
> However, this would probably require more hacking as even internally, the
> PPC kernel is currently unable to properly do inx/outx-like IOs on anything
> but the external PCI bus.

That's the problem, it doesn't work on AGP. outb works but inb segfaults.

The syscall should only return an iobase for known working busses IMHO. At the
very least, it shouldn't return any for busses known not to work.


-- 
Earthling Michel Dänzer (MrCooper)    \   Debian GNU/Linux (powerpc) developer
CS student, Free Software enthusiast   \        XFree86 and DRI project member



Reply to: