Commit b53cde35 authored by Dmitry Baryshkov's avatar Dmitry Baryshkov Committed by Linus Torvalds

fbdev: add new TMIO framebuffer driver

Add driver for TMIO framebuffer cells as found e.g. in Toshiba TC6393XB
chips.
Signed-off-by: default avatarDmitry Baryshkov <dbaryshkov@gmail.com>
Cc: Ian Molton <spyro@f2s.com>
Acked-by: default avatarSamuel Ortiz <sameo@openedhand.com>
Acked-by: default avatarKrzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent d5ca9006
...@@ -1896,6 +1896,28 @@ config FB_SH_MOBILE_LCDC ...@@ -1896,6 +1896,28 @@ config FB_SH_MOBILE_LCDC
---help--- ---help---
Frame buffer driver for the on-chip SH-Mobile LCD controller. Frame buffer driver for the on-chip SH-Mobile LCD controller.
config FB_TMIO
tristate "Toshiba Mobile IO FrameBuffer support"
depends on FB && MFD_CORE
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
---help---
Frame buffer driver for the Toshiba Mobile IO integrated as found
on the Sharp SL-6000 series
This driver is also available as a module ( = code which can be
inserted and removed from the running kernel whenever you want). The
module will be called tmiofb. If you want to compile it as a module,
say M here and read <file:Documentation/kbuild/modules.txt>.
If unsure, say N.
config FB_TMIO_ACCELL
bool "tmiofb acceleration"
depends on FB_TMIO
default y
config FB_S3C2410 config FB_S3C2410
tristate "S3C2410 LCD framebuffer support" tristate "S3C2410 LCD framebuffer support"
depends on FB && ARCH_S3C2410 depends on FB && ARCH_S3C2410
......
...@@ -98,6 +98,7 @@ obj-$(CONFIG_FB_CIRRUS) += cirrusfb.o ...@@ -98,6 +98,7 @@ obj-$(CONFIG_FB_CIRRUS) += cirrusfb.o
obj-$(CONFIG_FB_ASILIANT) += asiliantfb.o obj-$(CONFIG_FB_ASILIANT) += asiliantfb.o
obj-$(CONFIG_FB_PXA) += pxafb.o obj-$(CONFIG_FB_PXA) += pxafb.o
obj-$(CONFIG_FB_W100) += w100fb.o obj-$(CONFIG_FB_W100) += w100fb.o
obj-$(CONFIG_FB_TMIO) += tmiofb.o
obj-$(CONFIG_FB_AU1100) += au1100fb.o obj-$(CONFIG_FB_AU1100) += au1100fb.o
obj-$(CONFIG_FB_AU1200) += au1200fb.o obj-$(CONFIG_FB_AU1200) += au1200fb.o
obj-$(CONFIG_FB_PMAG_AA) += pmag-aa-fb.o obj-$(CONFIG_FB_PMAG_AA) += pmag-aa-fb.o
......
This diff is collapsed.
#ifndef MFD_TMIO_H #ifndef MFD_TMIO_H
#define MFD_TMIO_H #define MFD_TMIO_H
#include <linux/fb.h>
#define tmio_ioread8(addr) readb(addr) #define tmio_ioread8(addr) readb(addr)
#define tmio_ioread16(addr) readw(addr) #define tmio_ioread16(addr) readw(addr)
#define tmio_ioread16_rep(r, b, l) readsw(r, b, l) #define tmio_ioread16_rep(r, b, l) readsw(r, b, l)
...@@ -25,4 +27,21 @@ struct tmio_nand_data { ...@@ -25,4 +27,21 @@ struct tmio_nand_data {
unsigned int num_partitions; unsigned int num_partitions;
}; };
#define FBIO_TMIO_ACC_WRITE 0x7C639300
#define FBIO_TMIO_ACC_SYNC 0x7C639301
struct tmio_fb_data {
int (*lcd_set_power)(struct platform_device *fb_dev,
bool on);
int (*lcd_mode)(struct platform_device *fb_dev,
const struct fb_videomode *mode);
int num_modes;
struct fb_videomode *modes;
/* in mm: size of screen */
int height;
int width;
};
#endif #endif
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