From: Otto Solares <solca@guug.org>
To: Jon Smirl <jonsmirl@yahoo.com>
Cc: linux-fbdev-devel@lists.sourceforge.net
Subject: Re: ioremap problem on highmem
Date: Mon, 13 Oct 2003 19:56:56 -0600 [thread overview]
Message-ID: <20031014015656.GE454@guug.org> (raw)
In-Reply-To: <20031014004651.36307.qmail@web14914.mail.yahoo.com>
On Mon, Oct 13, 2003 at 05:46:51PM -0700, Jon Smirl wrote:
> Fix is not that simple. There is a basic conflict with mapping framebuffers
> into the kernel address space and the kernel's need of that address space for
> other purposes. Drivers need to be rewritten to do one of:
>
> 1) Map the frame buffer into the kernel address space a few pages at a time.
> This is how kernel high mem support works.
> 2) Map the minimal amount of address space necessary for visible framebuffer.
> This is what the VGA driver does. It works most of the time.
> 3) Use a user space program to map the framebuffer and do the drawing.
> 4) Use the reserve= to reserve the needed address space. This boots performance
> sensitive page tables into highmem while keeping your slow framebuffer in
> lowmem.
I agree with point 3.
> It is only fbconsole that uses the kernel mapped framebuffer. If you aren't
> using fbconsole you could just delete the ioremap code from the framebuffer
> driver. Another quick fix would be to eliminate the framebuffer ioremaps from
> each driver and instead do it in the fbconsole driver. This would let people
> still load fb drivers and not load fbconsole.
>
> The more I learn about fbconsole the more I think it is a bad idea. This is no
> comment on the skill of the people writing it, I just think the whole concept
> of mapping the framebuffer in to kernel space needs to be eliminated. There is
> only 1GB of kernel space and it make no sense to chew up 128MB or 256MB of it
> mapping a framebuffer just to get a penguin at boot. I do think penguin is
> cute, but not cute enough to waste kernel address space on.
Without fbcon, where the printk goes?
> Right now I am exploring this alternative:
> 1) System boots using VGA mode or whatever BIOS provides.
I think you are talking x86 specific, i currently use sparc and powerpc too,
for sparc i use dummycon and works nicely, i have not tried dummycon in
powerpc but i assume it should work, so i assume you are talking something
so simple and dumb like dummycon in this point.
> 2) DRI drivers are loaded. They have been modified to use PCI subsys to find
> hardware.
Good.
> 3) Run a console program. This program uses a user level lib (from standalone
> mesa) to switch to graphics mode and draw the console. Like gnome-terminal does
> under X.
Yea, i think too that console should be userspace but terminal management should stay in
the kernel side as i like all the useful vt ioctls :-)
> 4) Run X or standalone mesa on another VT. Everything shares DRI driver for
> hardware interface.
Nice.
> The advantage to this is that there is a single hardware driver in the system -
> the DRI one; the fb driver is gone. The only loss I see is no penguin at boot.
>
> Standalone Mesa is using the fb driver to 1) find the hardware, 2) change
> modes. Under the new system the DRI driver finds the hardware. Mode
> setting/EDID is done with a user level library - like X does. Once get this
> finished Standalone Mesa won't need FB any more.
Hey, this sound too cool to be true ;) any code yet? i would like to develop
on such beast.
-solca
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
SourceForge.net hosts over 70,000 Open Source Projects.
See the people who have HELPED US provide better services:
Click here: http://sourceforge.net/supporters.php
next prev parent reply other threads:[~2003-10-14 2:03 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-13 19:18 ioremap problem on highmem Otto Solares
2003-10-13 20:30 ` Jon Smirl
2003-10-14 0:14 ` Otto Solares
2003-10-14 0:46 ` Jon Smirl
2003-10-14 1:56 ` Otto Solares [this message]
2003-10-14 4:51 ` Jon Smirl
2003-10-15 1:13 ` Otto Solares
2003-10-15 1:37 ` Jon Smirl
2003-10-15 23:11 ` James Simmons
2003-10-16 10:15 ` Benjamin Herrenschmidt
2003-10-16 16:56 ` Otto Solares
2003-10-17 16:58 ` James Simmons
2003-10-14 8:30 ` Geert Uytterhoeven
2003-10-14 8:34 ` Geert Uytterhoeven
2003-10-14 14:42 ` Jon Smirl
2003-10-14 17:25 ` James Simmons
2003-10-14 17:23 ` James Simmons
2003-10-14 16:49 ` James Simmons
2003-10-14 17:59 ` Jon Smirl
2003-10-15 23:17 ` James Simmons
2003-10-16 0:34 ` Jon Smirl
2003-10-16 10:12 ` Benjamin Herrenschmidt
2003-10-16 0:43 ` I2C standalone vs integrated? Jon Smirl
2003-10-16 10:14 ` Benjamin Herrenschmidt
2003-10-17 16:43 ` James Simmons
2003-10-16 10:09 ` ioremap problem on highmem Benjamin Herrenschmidt
2003-10-15 16:46 ` Benjamin Herrenschmidt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20031014015656.GE454@guug.org \
--to=solca@guug.org \
--cc=jonsmirl@yahoo.com \
--cc=linux-fbdev-devel@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).