Name
----
phStbFB

Overview
--------
GPL kernel module used to create, display and control graphics framebuffers

Associated Device(s)
--------------------
/dev/fb0
/dev/fb1

Parameters
----------
background      : Framebuffer background colour to be used (32 bit ARGB) [default transparent 0x00000000]
gfx_memory      : The Maximum amount of GFX memory allowed for use by 
                  DirectFB specified in bytes
num_fb          : Set the number of framebuffers to be created [default 2]
width           : Set the width of the framebuffer
height          : Set the height of the framebuffer
dest_rect       : Destination Rectangle of the framebuffer (x y width height) [default 0,0 to screen width and height]
double_buffered : Enable double buffered framebuffer [default 1 - true]

Description
-----------
This module is used to create and control linux graphics framebuffers which
are implemented on the hardware using the 2 graphics layers. It uses the 
standard Linux framebuffer operations for the majority of its operations, with
the following extensions:

1. All framebuffers are created with sufficient memory to allow double 
   buffering if the double_buffer module parameter is set.
2. Framebuffers can be upscaled to any output resolution.
3. Additional memory can be associated with the framebuffer for packages 
   such as DirectFB to take advantage of.
4. Framebuffer 0 can have an initial 'logo' displayed. This will be the
   same as the uBoot splash screen image. The logo is enabled using the
   Linux config option 'CONFIG_LOGO'.

For a worked example of framebuffer manipulation see exStbResolution

IOCTLs
------
As per a standard Linux framebuffer plus:

PHSTBFB_IOCTL_GET_DEST_RECT : Get the current scaled output dimensions
PHSTBFB_IOCTL_SET_DEST_RECT : Set new scaled output dimensions

Associated files
----------------

comps/phStbFB/inc/phStbFB.h
apps/exStbResolution/src/exStbResolution.c
