linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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

  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).