All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH 4/9] fbdev: add linux framebuffer display driver.
Date: Wed, 19 Sep 2012 07:19:57 +0200	[thread overview]
Message-ID: <505955FD.6010304@redhat.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1209181520030.29232@kaball.uk.xensource.com>

On 09/18/12 17:01, Stefano Stabellini wrote:
> On Tue, 18 Sep 2012, Gerd Hoffmann wrote:
>> Display works, requires truecolor framebuffer with 16 or 32 bpp on the
>> host.  32bpp is recommended.  The framebuffer is used as-is, qemu
>> doesn't try to switch modes.  With LCD displays mode switching is pretty
>> pointless IMHO, also it wouldn't work anyway with the most common
>> fbdev drivers (vesafb, KMS).  Guest display is centered on the host
>> screen.
>>
>> Mouse works, uses /dev/input/mice.
>>
>> Keyboard works.  Guest screen has whatever keymap you load inside
>> the guest.  Text windows (monitor, serial, ...) have a simple en-us
>> keymap.  Good enough to type monitor commands.  Not goot enough to
>> work seriously on a serial terminal.  But the qemu terminal emulation
>> isn't good enough for that anyway ;)
>>
>> Hot keys:
>>   Ctrl-Alt-F<nr>  -> host console switching.
>>   Ctrl-Alt-<nr>   -> qemu console switching.
>>   Ctrl-Alt-ESC    -> exit qemu.
>>
>> Special feature:  Sane console switching.  Switching away stops screen
>> updates.  Switching back redraws the screen.  When started from the
>> linux console qemu uses the vt you've started it from (requires just
>> read/write access to /dev/fb0).  When starting from somewhere else qemu
>> tries to open a unused virtual terminal and switch to it (usually
>> requires root privileges to open /dev/tty<nr>).
>>
>> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> 
> This series is not bisectable: this patch references functions and
> variables only defined in later patches (surface,
> pixman_from_displaystate). Please make it bisectable.

Oops, that wasn't intentionally, squashed bugfix into the wrong patch,
will fixup.

>> +static void fbdev_setdata(DisplayState *ds)
>> +{
>> +    if (surface) {
>             ^ where is this coming from?
> 

See above ;)

>> +int fbdev_display_init(DisplayState *ds, const char *device)
>> +{
>> +    if (dcl != NULL) {
>> +        return 0;
>> +    }
> 
> is it actually possible that fbdev_display_init gets called multiple
> times?

With the next patch (enable/disable fbdev via monitor) yes.

>> +    fbdev_resize(ds);
>> +    dcl = g_new0(DisplayChangeListener, 1);
>> +    dcl->dpy_update  = fbdev_update;
>> +    dcl->dpy_resize  = fbdev_resize;
>> +    dcl->dpy_setdata = fbdev_setdata;
>> +    dcl->dpy_refresh = fbdev_refresh;
>> +    register_displaychangelistener(ds, dcl);
> 
> The fbdev driver could benefit from registering a DisplayAllocator (see
> sdl.c).

I don't think so, at least not once the whole series is applied and
support for scaling & cursor rendering is there.

cheers,
  Gerd

  reply	other threads:[~2012-09-19  5:20 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-18  7:17 [Qemu-devel] [PULL 0/9] linux framebuffer display driver Gerd Hoffmann
2012-09-18  7:17 ` [Qemu-devel] [PATCH 1/9] QLIST-ify display change listeners Gerd Hoffmann
2012-09-18  7:17 ` [Qemu-devel] [PATCH 2/9] add unregister_displaychangelistener Gerd Hoffmann
2012-09-18 10:54   ` Stefano Stabellini
2012-09-18  7:17 ` [Qemu-devel] [PATCH 3/9] move set_mouse + cursor_define callbacks Gerd Hoffmann
2012-09-18 14:10   ` Stefano Stabellini
2012-09-18 16:31     ` Gerd Hoffmann
2012-09-18 16:44       ` Stefano Stabellini
2012-09-18  7:17 ` [Qemu-devel] [PATCH 4/9] fbdev: add linux framebuffer display driver Gerd Hoffmann
2012-09-18 15:01   ` Stefano Stabellini
2012-09-19  5:19     ` Gerd Hoffmann [this message]
2012-09-19 18:37   ` Blue Swirl
2012-09-18  7:17 ` [Qemu-devel] [PATCH 5/9] fbdev: add monitor command to enable/disable Gerd Hoffmann
2012-09-18 12:47   ` Luiz Capitulino
2012-09-18  7:17 ` [Qemu-devel] [PATCH 6/9] fbdev: make configurable at compile time Gerd Hoffmann
2012-09-18  7:17 ` [Qemu-devel] [PATCH 7/9] fbdev: move to pixman Gerd Hoffmann
2012-09-18 15:01   ` Stefano Stabellini
2012-09-19  5:51     ` Gerd Hoffmann
2012-09-18 19:14   ` Anthony Liguori
2012-09-18 21:08     ` Anthony Liguori
2012-11-26 18:42     ` Alexander Graf
2012-11-26 20:01       ` Gerd Hoffmann
2012-11-26 20:05         ` Alexander Graf
2012-09-18 20:30   ` Søren Sandmann
2012-09-19  5:56     ` Gerd Hoffmann
2012-09-18  7:17 ` [Qemu-devel] [PATCH 8/9] fbdev: add mouse pointer support Gerd Hoffmann
2012-09-18  7:17 ` [Qemu-devel] [PATCH 9/9] fbdev: add display scaling support Gerd Hoffmann
2012-09-18 15:02   ` Stefano Stabellini
2012-09-19  5:52     ` Gerd Hoffmann
  -- strict thread matches above, loose matches on Subject: below --
2012-09-19 11:15 [Qemu-devel] [PATCH v4 0/9] linux framebuffer display driver Gerd Hoffmann
2012-09-19 11:15 ` [Qemu-devel] [PATCH 4/9] fbdev: add " Gerd Hoffmann
2012-09-19 18:09   ` Stefano Stabellini
2012-09-21 12:28     ` Gerd Hoffmann
2012-09-24 11:06       ` Stefano Stabellini
2012-09-24 13:09         ` Gerd Hoffmann

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=505955FD.6010304@redhat.com \
    --to=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefano.stabellini@eu.citrix.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.