Difference between revisions of "Unit PL110"
Line 31: | Line 31: | ||
---- | ---- | ||
− | |||
+ | '''PL110 functions''' | ||
+ | |||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
+ | <pre style="border: 0; padding-bottom:0px;">function PL110FramebufferCreateVGA(Address:LongWord; const Name:String; Rotation,Width,Height,Depth:LongWord):PFramebufferDevice;</pre> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create, register and allocate a new PL110 Framebuffer device which can be accessed using the framebuffer API</div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | ! '''Address''' | ||
+ | | The address of the PL110 registers | ||
+ | |- | ||
+ | ! '''Name''' | ||
+ | | The text description of this device which will show in the device list (Optional) | ||
+ | |- | ||
+ | ! '''Rotation''' | ||
+ | | The rotation value for the framebuffer device (eg FRAMEBUFFER_ROTATION_180) | ||
+ | |- | ||
+ | ! '''Width''' | ||
+ | | The width of the framebuffer in pixels | ||
+ | |- | ||
+ | ! '''Height''' | ||
+ | | The height of the framebuffer in pixels | ||
+ | |- | ||
+ | ! '''Depth''' | ||
+ | | The color depth (bits per pixel) for the framebuffer (eg FRAMEBUFFER_DEPTH_16) | ||
+ | |- | ||
+ | ! '''Return''' | ||
+ | | Pointer to the new Framebuffer device or nil if the framebuffer device could not be created | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
+ | <pre style="border: 0; padding-bottom:0px;">function PL110FramebufferCreateSVGA(Address:LongWord; const Name:String; Rotation,Width,Height,Depth:LongWord):PFramebufferDevice;</pre> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create, register and allocate a new PL110 Framebuffer device which can be accessed using the framebuffer API</div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | ! '''Address''' | ||
+ | | The address of the PL110 registers | ||
+ | |- | ||
+ | ! '''Name''' | ||
+ | | The text description of this device which will show in the device list (Optional) | ||
+ | |- | ||
+ | ! '''Rotation''' | ||
+ | | The rotation value for the framebuffer device (eg FRAMEBUFFER_ROTATION_180) | ||
+ | |- | ||
+ | ! '''Width''' | ||
+ | | The width of the framebuffer in pixels | ||
+ | |- | ||
+ | ! '''Height''' | ||
+ | | The height of the framebuffer in pixels | ||
+ | |- | ||
+ | ! '''Depth''' | ||
+ | | The color depth (bits per pixel) for the framebuffer (eg FRAMEBUFFER_DEPTH_16) | ||
+ | |- | ||
+ | ! '''Return''' | ||
+ | | Pointer to the new Framebuffer device or nil if the framebuffer device could not be created | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
+ | <pre style="border: 0; padding-bottom:0px;">function PL110FramebufferDestroy(Framebuffer:PFramebufferDevice):LongWord;</pre> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Release, deregister and destroy a PL110 Framebuffer device created by this driver</div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | ! '''Framebuffer''' | ||
+ | | The Framebuffer device to destroy | ||
+ | |- | ||
+ | ! '''Return''' | ||
+ | | ERROR_SUCCESS if completed or another error code on failure | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
Return to [[Unit_Reference|Unit Reference]] | Return to [[Unit_Reference|Unit Reference]] |
Revision as of 03:27, 23 November 2016
Return to Unit Reference
Description
The ARM PrimeCell PL110 Color LCD Controller is a AMBA compliant module that provides LCD display support for both TFT and STN displays in a variety of configurations.
While the controller supports TFT displays it differs from other TFT display controllers because it has a DMA interface to system memory rather than using SPI or other serial transfer protocols.
Currently this driver only supports the setup required for the QEMU VersatilePB target however it is possible to support additional configurations by adding more variations of the PL110FramebufferCreate functions (eg PL110FramebufferCreateSTN etc).
Note: The driver does not include support for FRAMEBUFFER_FLAG_SYNC as the QEMU emulation of the device does not provide interrupt support at present.
Constants
To be documented
Type definitions
To be documented
Public variables
To be documented
Function declarations
PL110 functions
function PL110FramebufferCreateVGA(Address:LongWord; const Name:String; Rotation,Width,Height,Depth:LongWord):PFramebufferDevice;
Address | The address of the PL110 registers |
---|---|
Name | The text description of this device which will show in the device list (Optional) |
Rotation | The rotation value for the framebuffer device (eg FRAMEBUFFER_ROTATION_180) |
Width | The width of the framebuffer in pixels |
Height | The height of the framebuffer in pixels |
Depth | The color depth (bits per pixel) for the framebuffer (eg FRAMEBUFFER_DEPTH_16) |
Return | Pointer to the new Framebuffer device or nil if the framebuffer device could not be created |
function PL110FramebufferCreateSVGA(Address:LongWord; const Name:String; Rotation,Width,Height,Depth:LongWord):PFramebufferDevice;
Address | The address of the PL110 registers |
---|---|
Name | The text description of this device which will show in the device list (Optional) |
Rotation | The rotation value for the framebuffer device (eg FRAMEBUFFER_ROTATION_180) |
Width | The width of the framebuffer in pixels |
Height | The height of the framebuffer in pixels |
Depth | The color depth (bits per pixel) for the framebuffer (eg FRAMEBUFFER_DEPTH_16) |
Return | Pointer to the new Framebuffer device or nil if the framebuffer device could not be created |
function PL110FramebufferDestroy(Framebuffer:PFramebufferDevice):LongWord;
Framebuffer | The Framebuffer device to destroy |
---|---|
Return | ERROR_SUCCESS if completed or another error code on failure |
Return to Unit Reference