History log of /haiku/src/add-ons/kernel/drivers/graphics/vesa/driver.cpp
Revision Date Author Comments
# 66415cd2 19-Oct-2021 Augustin Cavalier <waddlesplash@gmail.com>

Remove dumb-framebuffer handling logic from the VESA driver.

This reverts commit a0db7ef2729955d83f002b51034f0dedd39b4a0a.
This reverts commit 40cdf7d607211c5f27854cd3048ac00e8baf20ab.
This reverts commit 2ff22d6734176a2cf93a05c6842f69ef59d27a26.
This reverts commit b9eacd390dbdf776561062b324dab4c6f5a0dc80.
This partially reverts commit 5ae7ac5fd9957b3ff9faf211fd66976170c21b2c.

This was all added in the run-up to the removal of the framebuffer driver,
or was added since then to enhance framebuffer-only support in that driver.

Change-Id: I32ab8199f22cf6846545ae19e943c98012b2a1d0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4615
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 5ae7ac5f 23-May-2021 X512 <danger_mail@list.ru>

drivers/vesa: fix for RISC-V

* Make ISA bus optional in vesa driver

Change-Id: I1f38f92d81fbfe47224893e1d9dbf6a74306e2f0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3986
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>


# b9eacd39 11-Jun-2017 Jessica Hamilton <jessica.l.hamilton@gmail.com>

vesa: fold framebuffer driver into vesa driver.

* The app_server isn't designed to support two fallback drivers, so
on systems using UEFI to boot, the framebuffer driver will often
win when other drivers would likely work on those systems.


# 48494219 13-Dec-2016 Jessica Hamilton <jessica.l.hamilton@gmail.com>

Add a dumb framebuffer driver.

This is separate to the VESA driver, as the VESA driver requires
using the VBE BIOS. Under UEFI, we don't have the VBE BIOS, nor
are we able to switch modes after leaving UEFI Boot Services, so
a dumb framebuffer driver seemed like the easier way to approach
the problem.

The framebuffer & vesa drivers now test for the presence of the
VESA_MODES_BOOT_INFO boot item to distinguish between which driver
to use. Also added check for the VESA mode count to determine
whether to add the VESA_MODES_BOOT_INFO item.

UEFI video updated to explicitly zero out the VESA and EDID
boot data.


# 4ea01167 24-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Turned the benaphore into a mutex, and removed the now unused lock.h.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34205 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6328832f 30-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

* Changed get_boot_item() API: it now also can retrieve the size of the boot
item entry.
* The bios_ia32 video platform code now stores the available VESA modes in
the new vesa_modes kernel_args field.
* When configuring a VESA mode via settings file, it's no longer needed to
specify the exact mode - the closest available mode is now used. This should
help with bug #1962.
* frame_buffer_console_init() now also creates a boot_item for the VESA modes
in the kernel_args.
* The VESA accelerant now filters the mode list to only contain modes that
are actually supported.
* Moved non-shared vesa driver data into its own file vesa_private.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24675 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 696eddc8 19-Sep-2007 Jérôme Duval <korli@users.berlios.de>

free ressources on error or uninit
for vmware, actually checks if the device was found


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22260 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0c6f7795 19-Dec-2006 Axel Dörfler <axeld@pinc-software.de>

* Moved VGA planar mode blitting into the VESA kernel driver.
* In grayscale mode, the AccelerantHWInterface now sets the palette correctly.
* HWInterface now has a fVGADevice set by AccelerantHWInterface which will be used
to talk to the VESA driver.
* Completed planar blitting for all 4 planes; we now have a perfect 16 color
grayscale mode when you choose "Standard VGA mode" in the boot loader with
an unsupported graphics card (such as in Qemu).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19567 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 93ee2104 08-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Added very basic VESA driver. Will be improved in the future (right now
it doesn't really do anything, it just passes the initial frame buffer
on to the app_server).
While it seems to work on real hardware (if you set the video mode to
640x480x32, app_server restriction), under Bochs, the app_server crashes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12273 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4ea01167bd2382520e8bb9ffc8eb9fc075b3a843 24-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Turned the benaphore into a mutex, and removed the now unused lock.h.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34205 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6328832fba8f149074dbe7502dc0c180ff013263 30-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

* Changed get_boot_item() API: it now also can retrieve the size of the boot
item entry.
* The bios_ia32 video platform code now stores the available VESA modes in
the new vesa_modes kernel_args field.
* When configuring a VESA mode via settings file, it's no longer needed to
specify the exact mode - the closest available mode is now used. This should
help with bug #1962.
* frame_buffer_console_init() now also creates a boot_item for the VESA modes
in the kernel_args.
* The VESA accelerant now filters the mode list to only contain modes that
are actually supported.
* Moved non-shared vesa driver data into its own file vesa_private.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24675 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 696eddc837495363cb1330519c9de76eb43d8dfa 19-Sep-2007 Jérôme Duval <korli@users.berlios.de>

free ressources on error or uninit
for vmware, actually checks if the device was found


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22260 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0c6f77951ed2366737266cae1bf0c2f98842e6f5 19-Dec-2006 Axel Dörfler <axeld@pinc-software.de>

* Moved VGA planar mode blitting into the VESA kernel driver.
* In grayscale mode, the AccelerantHWInterface now sets the palette correctly.
* HWInterface now has a fVGADevice set by AccelerantHWInterface which will be used
to talk to the VESA driver.
* Completed planar blitting for all 4 planes; we now have a perfect 16 color
grayscale mode when you choose "Standard VGA mode" in the boot loader with
an unsupported graphics card (such as in Qemu).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19567 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 93ee21046d225f4f58eeeade87a937b8c10da6f1 08-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Added very basic VESA driver. Will be improved in the future (right now
it doesn't really do anything, it just passes the initial frame buffer
on to the app_server).
While it seems to work on real hardware (if you set the video mode to
640x480x32, app_server restriction), under Bochs, the app_server crashes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12273 a95241bf-73f2-0310-859d-f6bbb57e9c96