mirror of
https://github.com/adulau/aha.git
synced 2024-12-27 03:06:10 +00:00
arkfb: new framebuffer driver for ARK Logic cards
This patch adds fbdev driver for graphics cards with ARK Logic 2000PV graphics chip with ICS 5342 ramdac. [adaplas@gmail.com: build fixes] Signed-off-by: Ondrej Zajicek <santiago@crfreenet.org> Signed-off-by: Antonino Daplas <adaplas@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
558b7bd86c
commit
681e14730c
4 changed files with 1282 additions and 0 deletions
68
Documentation/fb/arkfb.txt
Normal file
68
Documentation/fb/arkfb.txt
Normal file
|
@ -0,0 +1,68 @@
|
|||
|
||||
arkfb - fbdev driver for ARK Logic chips
|
||||
========================================
|
||||
|
||||
|
||||
Supported Hardware
|
||||
==================
|
||||
|
||||
ARK 2000PV chip
|
||||
ICS 5342 ramdac
|
||||
|
||||
- only BIOS initialized VGA devices supported
|
||||
- probably not working on big endian
|
||||
|
||||
|
||||
Supported Features
|
||||
==================
|
||||
|
||||
* 4 bpp pseudocolor modes (with 18bit palette, two variants)
|
||||
* 8 bpp pseudocolor mode (with 18bit palette)
|
||||
* 16 bpp truecolor modes (RGB 555 and RGB 565)
|
||||
* 24 bpp truecolor mode (RGB 888)
|
||||
* 32 bpp truecolor mode (RGB 888)
|
||||
* text mode (activated by bpp = 0)
|
||||
* doublescan mode variant (not available in text mode)
|
||||
* panning in both directions
|
||||
* suspend/resume support
|
||||
|
||||
Text mode is supported even in higher resolutions, but there is limitation to
|
||||
lower pixclocks (i got maximum about 70 MHz, it is dependent on specific
|
||||
hardware). This limitation is not enforced by driver. Text mode supports 8bit
|
||||
wide fonts only (hardware limitation) and 16bit tall fonts (driver
|
||||
limitation). Unfortunately character attributes (like color) in text mode are
|
||||
broken for unknown reason, so its usefulness is limited.
|
||||
|
||||
There are two 4 bpp modes. First mode (selected if nonstd == 0) is mode with
|
||||
packed pixels, high nibble first. Second mode (selected if nonstd == 1) is mode
|
||||
with interleaved planes (1 byte interleave), MSB first. Both modes support
|
||||
8bit wide fonts only (driver limitation).
|
||||
|
||||
Suspend/resume works on systems that initialize video card during resume and
|
||||
if device is active (for example used by fbcon).
|
||||
|
||||
|
||||
Missing Features
|
||||
================
|
||||
(alias TODO list)
|
||||
|
||||
* secondary (not initialized by BIOS) device support
|
||||
* big endian support
|
||||
* DPMS support
|
||||
* MMIO support
|
||||
* interlaced mode variant
|
||||
* support for fontwidths != 8 in 4 bpp modes
|
||||
* support for fontheight != 16 in text mode
|
||||
* hardware cursor
|
||||
* vsync synchronization
|
||||
* feature connector support
|
||||
* acceleration support (8514-like 2D)
|
||||
|
||||
|
||||
Known bugs
|
||||
==========
|
||||
|
||||
* character attributes (and cursor) in text mode are broken
|
||||
|
||||
--
|
||||
Ondrej Zajicek <santiago@crfreenet.org>
|
|
@ -1415,6 +1415,20 @@ config FB_TRIDENT_ACCEL
|
|||
This will compile the Trident frame buffer device with
|
||||
acceleration functions.
|
||||
|
||||
config FB_ARK
|
||||
tristate "ARK 2000PV support"
|
||||
depends on FB && PCI
|
||||
select FB_CFB_FILLRECT
|
||||
select FB_CFB_COPYAREA
|
||||
select FB_CFB_IMAGEBLIT
|
||||
select FB_TILEBLITTING
|
||||
select FB_SVGALIB
|
||||
select VGASTATE
|
||||
select FONT_8x16 if FRAMEBUFFER_CONSOLE
|
||||
---help---
|
||||
Driver for PCI graphics boards with ARK 2000PV chip
|
||||
and ICS 5342 RAMDAC.
|
||||
|
||||
config FB_PM3
|
||||
tristate "Permedia3 support"
|
||||
depends on FB && PCI && BROKEN
|
||||
|
|
|
@ -59,6 +59,7 @@ obj-$(CONFIG_FB_CYBLA) += cyblafb.o
|
|||
obj-$(CONFIG_FB_TRIDENT) += tridentfb.o
|
||||
obj-$(CONFIG_FB_LE80578) += vermilion/
|
||||
obj-$(CONFIG_FB_S3) += s3fb.o
|
||||
obj-$(CONFIG_FB_ARK) += arkfb.o
|
||||
obj-$(CONFIG_FB_STI) += stifb.o
|
||||
obj-$(CONFIG_FB_FFB) += ffb.o sbuslib.o
|
||||
obj-$(CONFIG_FB_CG6) += cg6.o sbuslib.o
|
||||
|
|
1199
drivers/video/arkfb.c
Normal file
1199
drivers/video/arkfb.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue