Re: VRAM protection in setup.c

From: Jeff Garzik (jgarzik@mandrakesoft.com)
Date: Sat Feb 19 2000 - 14:25:26 EST


Akira YOSHIYAMA wrote:
>
> Hi all,
>
> I wanted to use VGA16 framebuffer on 2.3.x but couldn't. I've read
> some codes, and found the reason in arch/i386/kernel/setup.c:
>
> static struct resource vram_resource =
> { "Video RAM area", 0xa0000, 0xbffff, IORESOURCE_BUSY };
> ~~~~~~~~~~~~~~~
> (This protects any other requests, even in drivers/video/vfa16fb.c.)
>
> Then, I changed it as:
>
> static struct resource vram_resource =
> { "Video RAM area", 0xa0000, 0xbffff, IORESOURCE_MEM | IORESOURCE_AUTO };
>
> and I met Tux penguin again. But, my box did hang up when loading
> pcmcia modules. Perhaps, my change might occur this problem. So,
> tell me more smart fix.

Linus has explained his reasoning for leaving it at _BUSY. I disagree
but c'est la vie.

The solution is to remove all resource checks for that region from all
drivers, and hope and pray that everything plays nice together. :)

Since this region is really a special case, we might wind up with some
sort of resource access controller which arbitrates access to this
region. We need to do this so that PCI VGA cards may share regions...

-- 
Jeff Garzik         | I never vote for anyone.
Building 1024       | I always vote against.
MandrakeSoft, Inc.  |       -- W.C. Fields

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Feb 23 2000 - 21:00:24 EST