linux/drivers/video
York Sun 9b53a9e28a fbdev: powerpc: driver for Freescale 8610 and 5121 DIU
The following features are supported:
plane 0 works as a regular frame buffer, can be accessed by /dev/fb0
plane 1 has two AOIs (area of interest), can be accessed by /dev/fb1 and /dev/fb2
plane 2 has two AOIs, can be accessed by /dev/fb3 and /dev/fb4
Special ioctls support AOIs

All /dev/fb* can be used as regular frame buffer devices, except hardware
change can only be made through /dev/fb0.  Changing pixel clock has no effect
on other fbs.

Limitation of usage of AOIs:
AOIs on the same plane can not be horizonally overlapped
AOIs have horizonal order, i.e. AOI0 should be always on top of AOI1
AOIs can not beyond phisical display area. Application should check AOI geometry
before changing physical resolution on /dev/fb0

required command line parameters to preallocate memory for frame buffer diufb.

optional command line parameters to set modes and monitor
video=fslfb:[resolution][,bpp][,monitor]
Syntax:

Resolution
xres x yres-bpp@refresh_rate, the -bpp and @refresh_rate are optional
eg, 1024x768, 1280x1024, 1280x1024-32, 1280x1024@60, 1280x1024-32@60, 1280x480-32@60

Bpp
bpp=32, bpp=24, or bpp=16

Monitor
monitor=0, monitor=1, monitor=2
0 is DVI
1 is Single link LVDS
2 is Double link LVDS

Note: switching monitor is a board feather, not DIU feather. MPC8610HPCD has three
monitor ports to swtich to. MPC5121ADS doesn't have additional monitor port. So switching
monirot port for MPC5121ADS has no effect.

If compiled as a module, it takes pamameters mode, bpp, monitor with the same syntax above.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Timur Tabi <timur@freescale.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-28 08:58:40 -07:00
..
aty radeonfb: speed up the I2C buses 2008-04-28 08:58:38 -07:00
backlight backlight: Add OMAP1 PWL backlight driver 2008-02-07 09:31:52 +00:00
console fbcon: replace mono_col macro with static inline 2008-04-28 08:58:35 -07:00
display
geode OLPC: gxfb/lxfb: add DCON panel modes to framebuffer drivers 2008-04-28 08:58:40 -07:00
i810 i810fb: fix console switch regression 2008-03-19 18:53:36 -07:00
intelfb Remove pointless casts from void pointers 2008-02-06 10:41:01 -08:00
kyro fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
logo logo.c: get rid of mips_machgroup 2007-10-18 14:37:17 -07:00
matrox i2c: normal_i2c can be made const (remaining drivers) 2008-01-27 18:14:47 +01:00
mbx mbxfb: fix incorrect argument type 2008-03-10 18:01:20 -07:00
nvidia fbdev: nv: fix sparse noise 2008-04-28 08:58:40 -07:00
omap drivers/video/: Spelling fixes 2008-02-03 17:31:49 +02:00
pnx4008 define global BIT macro 2007-10-19 11:53:42 -07:00
riva fbdev: nv: fix sparse noise 2008-04-28 08:58:40 -07:00
savage savagefb: speed up the I2C bus 2008-04-28 08:58:38 -07:00
sis drivers/video: remove unnecessary pci_dev_put 2008-02-06 10:41:15 -08:00
vermilion mm: remove nopage 2008-04-28 08:58:18 -07:00
68328fb.c 68328fb: the pseudo_palette is only 16 elements long 2007-07-17 10:23:11 -07:00
Kconfig fbdev: powerpc: driver for Freescale 8610 and 5121 DIU 2008-04-28 08:58:40 -07:00
Makefile fbdev: powerpc: driver for Freescale 8610 and 5121 DIU 2008-04-28 08:58:40 -07:00
acornfb.c Remove the arm26 port 2007-07-31 15:39:39 -07:00
acornfb.h
amba-clcd.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
amifb.c Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
arcfb.c fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
arkfb.c fbdev: framebuffer_alloc() fixes 2008-04-28 08:58:38 -07:00
asiliantfb.c
atafb.c fbdev: use DIV_ROUND_UP or roundup 2008-04-28 08:58:35 -07:00
atafb.h
atafb_iplan2p2.c
atafb_iplan2p4.c
atafb_iplan2p8.c
atafb_mfb.c
atafb_utils.h
atmel_lcdfb.c atmel_lcdfb: adjust fifo size for at91sam9rl 2008-04-28 08:58:39 -07:00
au1100fb.c au1100fb: fix modpost warnings 2007-10-18 14:37:17 -07:00
au1100fb.h
au1200fb.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
au1200fb.h
bf54x-lq043fb.c blackfin video driver: fix bug when opening/reading/mmaping BF54x and BF52x framebuffer simultaneously 2008-03-28 14:45:22 -07:00
bfin-t350mcqb-fb.c blackfin video driver: fix bug when opening/reading/mmaping BF54x and BF52x framebuffer simultaneously 2008-03-28 14:45:22 -07:00
bt431.h
bt455.h
bw2.c [VIDEO]: Do not prom_halt() in cg3 and bw2 device probe. 2007-08-26 18:49:08 -07:00
c2p.c
c2p.h
cfbcopyarea.c fb: add support for foreign endianness 2008-04-28 08:58:35 -07:00
cfbfillrect.c fb: add support for foreign endianness 2008-04-28 08:58:35 -07:00
cfbimgblt.c fb: add support for foreign endianness 2008-04-28 08:58:35 -07:00
cg3.c [VIDEO]: Do not prom_halt() in cg3 and bw2 device probe. 2007-08-26 18:49:08 -07:00
cg6.c [CG6]: accelerated copyarea 2007-10-13 21:53:08 -07:00
cg14.c [SPARC]: video/cg14.c and video/sbuslib.c build fixes 2008-02-12 18:23:31 -08:00
chipsfb.c PM: Introduce PM_EVENT_HIBERNATE callback state 2008-02-23 10:40:04 -08:00
cirrusfb.c fbdev: use DIV_ROUND_UP or roundup 2008-04-28 08:58:35 -07:00
clps711xfb.c fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
controlfb.c controlfb: the pseudo_palette is only 16 elements long 2007-07-17 10:23:11 -07:00
controlfb.h
cyber2000fb.c [ARM] 4645/1: Cyberpro: Trivial fix to restore 16bpp mode. 2007-11-08 23:29:36 +00:00
cyber2000fb.h
cyblafb.c drivers/video/: Spelling fixes 2008-02-03 17:31:49 +02:00
dnfb.c
edid.h
efifb.c x86_64 EFI boot support: EFI frame buffer driver 2007-11-29 09:24:54 -08:00
epson1355fb.c fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
fb_ddc.c fb_ddc: fix DDC lines quirk 2007-11-29 09:24:52 -08:00
fb_defio.c fbdev: defio and Metronomefb 2008-03-19 18:53:37 -07:00
fb_draw.h fb: add support for foreign endianness 2008-04-28 08:58:35 -07:00
fb_notify.c
fb_sys_fops.c fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
fbcmap.c fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
fbcvt.c
fbmem.c fbmem: fix con2fbmap limit check 2008-04-28 08:58:36 -07:00
fbmon.c fbmon: cleanup trailing whitespaces 2008-02-06 10:41:15 -08:00
fbsysfs.c
ffb.c [FFB]: source cleanup 2007-10-13 21:53:08 -07:00
fm2fb.c fm2fb: the pseudo_palette is only 16 elements long 2007-07-17 10:23:12 -07:00
fsl-diu-fb.c fbdev: powerpc: driver for Freescale 8610 and 5121 DIU 2008-04-28 08:58:40 -07:00
fsl-diu-fb.h fbdev: powerpc: driver for Freescale 8610 and 5121 DIU 2008-04-28 08:58:40 -07:00
g364fb.c
gbefb.c gbefb: fix section mismatch warnings 2007-11-14 18:45:42 -08:00
gxt4500.c fbdev: use DIV_ROUND_UP or roundup 2008-04-28 08:58:35 -07:00
hecubafb.c fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
hgafb.c
hitfb.c fb: hitfb: Balance probe/remove section annotations. 2008-03-06 13:56:33 +09:00
hpfb.c video/hpfb.c section fix 2008-02-06 10:41:15 -08:00
igafb.c drivers/video: add missing pci_dev_get 2008-02-06 10:41:16 -08:00
imacfb.c imacfb: remove reference to otherwise-unused, non-existent screen_info.imacpm_seg 2007-11-29 09:24:53 -08:00
imsttfb.c drivers/video/imsttfb.c: add missing curly brackets 2008-04-28 08:58:38 -07:00
imxfb.c imxfb: fast read flag and nonstandard field configurable 2007-10-16 09:43:21 -07:00
imxfb.h
leo.c [VIDEO]: Fix OOPS in all SBUS framebuffer drivers. 2007-07-30 00:27:33 -07:00
macfb.c macfb: fix pseudo_palette size and overrun 2007-07-17 10:23:12 -07:00
macmodes.c drivers/video/macmodes.c:mac_find_mode() mustn't be __devinit 2007-07-17 10:23:13 -07:00
macmodes.h drivers/video/macmodes.c:mac_find_mode() mustn't be __devinit 2007-07-17 10:23:13 -07:00
maxinefb.c
metronomefb.c fbdev: defio and Metronomefb 2008-03-19 18:53:37 -07:00
modedb.c fbdev: make the best-fit section of fb_find_mode return the closest matching mode 2008-04-28 08:58:35 -07:00
neofb.c neofb: avoid overwriting fb_info fields 2008-02-06 10:41:16 -08:00
offb.c powerpc: offb: add support for foreign endianness 2008-04-28 08:58:35 -07:00
output.c Convert from class_device to device for drivers/video 2007-10-12 14:51:04 -07:00
p9100.c [VIDEO]: Fix OOPS in all SBUS framebuffer drivers. 2007-07-30 00:27:33 -07:00
platinumfb.c [POWERPC] Fix platinumfb framebuffer 2007-09-22 14:49:22 +10:00
platinumfb.h
pm2fb.c fbdev: add removed option "mode" to keep compatibility 2008-04-28 08:58:37 -07:00
pm3fb.c pm3fb: change option mode to mode_option 2008-04-28 08:58:37 -07:00
pmag-aa-fb.c fbcon: fix color generation for monochrome framebuffer 2008-02-06 10:41:18 -08:00
pmag-ba-fb.c drivers/video/pmag-ba-fb.c: improve diagnostics 2007-10-16 09:43:19 -07:00
pmagb-b-fb.c pmagb-b-fb: improve diagnostics 2007-10-16 09:43:20 -07:00
ps3fb.c ps3fb: fix modedb typos 2008-02-06 10:41:17 -08:00
pvr2fb.c fb: pvr2fb: Fix up remaining section mismatch. 2008-03-06 13:39:18 +09:00
pxafb.c [ARM] pxa: separate GPIOs and their mode definitions to pxa2xx-gpio.h 2008-04-19 11:29:04 +01:00
pxafb.h pxafb: Add support for other palette formats 2007-10-16 09:43:15 -07:00
q40fb.c q40fb: the pseudo_palette is only 16 elements long 2007-07-17 10:23:12 -07:00
s1d13xxxfb.c drivers/video/s1d13xxxfb.c: fix build as module with dbg 2007-11-14 18:45:38 -08:00
s3c2410fb.c FB/S3C2410: check default_display parameter passed in platform data 2008-02-06 10:41:18 -08:00
s3c2410fb.h FB/S3C2412: add S3C2412 support to S3C2410 fb driver 2008-02-06 10:41:17 -08:00
s3fb.c fbdev: framebuffer_alloc() fixes 2008-04-28 08:58:38 -07:00
sa1100fb.c fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
sa1100fb.h
sbuslib.c [SPARC]: video/cg14.c and video/sbuslib.c build fixes 2008-02-12 18:23:31 -08:00
sbuslib.h
sgivwfb.c sgivwfb: the pseudo_palette is only 16 elements long 2007-07-17 10:23:12 -07:00
skeletonfb.c skeletonfb: wrong field name fix 2007-10-16 09:43:14 -07:00
sm501fb.c sm501fb: fix timing limits 2008-03-04 16:35:13 -08:00
sstfb.c fbdev: change asm/uaccess.h to linux/uaccess.h 2007-10-16 09:43:17 -07:00
sticore.h
stifb.c stifb: fix crash A1439A CRX (Rattler) graphics card 2008-03-10 18:01:20 -07:00
sunxvr500.c [VIDEO] sunxvr500fb: Fix pseudo_palette array size 2007-06-05 13:15:26 -07:00
sunxvr2500.c [VIDEO] sunxvr2500fb: Fix pseudo_palette array size 2007-06-05 13:15:01 -07:00
svgalib.c svgalib: mode selection updates 2007-10-16 09:43:22 -07:00
syscopyarea.c fb: add support for foreign endianness 2008-04-28 08:58:35 -07:00
sysfillrect.c fb: add support for foreign endianness 2008-04-28 08:58:35 -07:00
sysimgblt.c fb: add support for foreign endianness 2008-04-28 08:58:35 -07:00
tcx.c [VIDEO]: Fix OOPS in all SBUS framebuffer drivers. 2007-07-30 00:27:33 -07:00
tdfxfb.c tdfxfb: fix section mismatch warnings 2008-02-06 10:41:16 -08:00
tgafb.c tgafb: remove a redundant non-mono test in mono imageblit 2007-10-16 09:43:23 -07:00
tridentfb.c fbdev: add removed option "mode" to keep compatibility 2008-04-28 08:58:37 -07:00
uvesafb.c uvesafb: don't treat valid modes returned byfb_find_mode() as errors 2008-04-28 08:58:38 -07:00
valkyriefb.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
valkyriefb.h
vesafb.c
vfb.c vfb: make virtual framebuffer mmapable 2007-10-16 09:43:18 -07:00
vga16fb.c Remove magic macros for screen_info structure members 2007-10-16 22:57:17 -07:00
vgastate.c
vt8623fb.c fbdev: framebuffer_alloc() fixes 2008-04-28 08:58:38 -07:00
w100fb.c w100fb: fix compile warnings 2007-05-23 20:14:13 -07:00
w100fb.h
xen-fbfront.c xen pvfb: Para-virtual framebuffer, keyboard and pointer driver 2008-04-24 23:57:33 +02:00
xilinxfb.c [POWERPC] Xilinx: Update compatible to use values generated by BSP generator. 2008-02-06 10:23:21 -07:00