How agp memory, stencil buffer for Intel i810 graphics
Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
How agp memory, stencil buffer for Intel i810 graphics
I think my i810 graphics chip is pretty nice, for the 0 extra it cost me -- it's on my motherboard. But there are a couple of frustrating things about it. First, with some games it runs out of texture memory. I'd like to give it some more system memory, but I don't know how. I have VideoRam set to 24600 in my XF86Config file, and that's as high as I can get it. Higher, and XFree86 aborts and complains it couldn't allocate agp memory. I think my agp aperture is 64M, so why can't I get more than 24.6? (Kernel bootup messages used to say the aperture was 64M, but after I installed extra memory, I no longer get messages about the aperture.) Maybe the i180 is already using some agp memory?
And second, whenever an SDL-based program asks for some bits of stencil buffer, it aborts, complaining that it can't find a matching glx visual. Yet glxinfo reports that I do have visuals available with 8 bits of stencil buffer. So why can't I use stencil buffer?
Stencil buffers could be a problem with the driver, or it can't allocate enough continuious memory for the buffers.
AGP apperture isn't the memory used bu the GFX chip (Its a shared memory thing, used by GFX cards with there own memory, through the AGP slot ), The memory actually taken for the GFX is a seprate setting. Look under chipset stuff in the bios to assign more memory to the GFX chip. ( You din't mention your motherboard so poke around. )
Originally posted by leonscape AGP apperture isn't the memory used bu the GFX chip (Its a shared memory thing, used by GFX cards with there own memory, through the AGP slot ), ...
I suppose the way I put it did confuse the i810 chip and the X Windows i810 driver. But it's the driver that needs to allocate agp memory for various purposes (and it also runs out of room for textures). And I want to give it more. (The i810 is just a chip, not a card -- it doesn't have any memory of its own.)
The memory actually taken for the GFX is a seprate setting. Look under chipset stuff in the bios to assign more memory to the GFX chip. ( You din't mention your motherboard so poke around. )
Its allocated a boot by the BIOS. It will be under something like Graphics memory, usually under the chipset part.
Originally posted by leonscape You can't do this dynamically. as I said ...
I'm just not understanding what you're saying. Can't do what dynamically? I asked about increasing the amount of AGP memory allocated by the driver. That's done dynamically. The driver reports on what it has allocated. Now, it says
Quote:
(II) I810(0): I810CheckAvailableMemory: 323512k available
(**) I810(0): Will alloc AGP framebuffer: 24600 kByte
...
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmGetBusid returned ''
(II) I810(0): [drm] loaded kernel module for "i810" driver
(II) I810(0): [drm] created "i810" driver at busid "PCI:0:1:0"
(II) I810(0): [drm] added 8192 byte SAREA at 0xdcdf6000
(II) I810(0): [drm] mapped SAREA 0xdcdf6000 to 0x401ec000
(II) I810(0): [drm] framebuffer handle = 0xf8000000
(II) I810(0): [drm] added 1 reserved context for kernel
(II) I810(0): [drm] Registers = 0xf4000000
(II) I810(0): [agp] dcacheHandle : 0x0
(II) I810(0): [agp] GART: no dcache memory found
(II) I810(0): [agp] Bound backbuffer memory
(II) I810(0): [agp] Bound depthbuffer memory
(II) I810(0): GART: Allocated 7MB for HWMC
(II) I810(0): [agp] GART: Allocated 4K for mouse cursor image
(II) I810(0): Adding 384 scanlines for pixmap caching
(II) I810(0): Allocated Scratch Memory
My question was: why can it only allocate 24600K?
I understand that memory is also allocated for the i810 framebuffer at boot up. I don't see what good it would do me to change that.
BIOS assigns to that chip it can have so much memory. I've never got it working dynamically with the i810. ( Ignore AGP for this its nothing to do with it ).
You can only do it dynamically with the 830M chips or later with the agp/agpart drivers. ( kernel settings ).
Increasing the Value in BIOS works for all chips.
The manual page is slightly confusing on the point. But this is how I got it working for my friend with this chipset. Setting values dynamically doesn't always work, it needs to be supported by the chip/BIOS/Kernel and driver to work.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.