Commit 681e1473 authored by Ondrej Zajicek's avatar Ondrej Zajicek Committed by Linus Torvalds

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: default avatarOndrej Zajicek <santiago@crfreenet.org>
Signed-off-by: default avatarAntonino Daplas <adaplas@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 558b7bd8
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 ...@@ -1415,6 +1415,20 @@ config FB_TRIDENT_ACCEL
This will compile the Trident frame buffer device with This will compile the Trident frame buffer device with
acceleration functions. 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 config FB_PM3
tristate "Permedia3 support" tristate "Permedia3 support"
depends on FB && PCI && BROKEN depends on FB && PCI && BROKEN
......
...@@ -59,6 +59,7 @@ obj-$(CONFIG_FB_CYBLA) += cyblafb.o ...@@ -59,6 +59,7 @@ obj-$(CONFIG_FB_CYBLA) += cyblafb.o
obj-$(CONFIG_FB_TRIDENT) += tridentfb.o obj-$(CONFIG_FB_TRIDENT) += tridentfb.o
obj-$(CONFIG_FB_LE80578) += vermilion/ obj-$(CONFIG_FB_LE80578) += vermilion/
obj-$(CONFIG_FB_S3) += s3fb.o obj-$(CONFIG_FB_S3) += s3fb.o
obj-$(CONFIG_FB_ARK) += arkfb.o
obj-$(CONFIG_FB_STI) += stifb.o obj-$(CONFIG_FB_STI) += stifb.o
obj-$(CONFIG_FB_FFB) += ffb.o sbuslib.o obj-$(CONFIG_FB_FFB) += ffb.o sbuslib.o
obj-$(CONFIG_FB_CG6) += cg6.o sbuslib.o obj-$(CONFIG_FB_CG6) += cg6.o sbuslib.o
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment