Unit PL110

From Ultibo.org
Revision as of 02:44, 30 December 2016 by Ultibo (Talk | contribs)

Jump to: navigation, search

Return to Unit Reference


Description


ARM PrimeCell PL110 Color LCD Controller Driver unit

The ARM PrimeCell PL110 Color LCD Controller is an 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



[Expand]
PL110 specific constants PL110_*


[Expand]
PL110 mode constants PL110_MODE_*


[Expand]
PL110 register offset constants PL110_CLCD_*


[Expand]
PL110 CLCD Timing0 constants PL110_CLCD_TIMING0_*


[Expand]
PL110 CLCD Timing1 constants PL110_CLCD_TIMING1_*


[Expand]
PL110 CLCD Timing2 constants PL110_CLCD_TIMING2_*


[Expand]
PL110 CLCD Timing3 constants PL110_CLCD_TIMING3_*


[Expand]
PL110 CLCD control constants PL110_CLCD_CONTROL_*


[Expand]
PL110 control constants PL110_CONTROL_*


[Expand]
PL110 timing0 constants PL110_TIMING0_*


[Expand]
PL110 timing1 constants PL110_TIMING1_*


[Expand]
PL110 timing2 constants PL110_TIMING2_*


Type definitions


To be documented

Public variables


None defined

Function declarations



PL110 functions

[Expand]
function PL110FramebufferCreateVGA(Address:LongWord; const Name:String; Rotation,Width,Height,Depth:LongWord):PFramebufferDevice;
Description: Create, register and allocate a new PL110 Framebuffer device which can be accessed using the framebuffer API


[Expand]
function PL110FramebufferCreateSVGA(Address:LongWord; const Name:String; Rotation,Width,Height,Depth:LongWord):PFramebufferDevice;
Description: Create, register and allocate a new PL110 Framebuffer device which can be accessed using the framebuffer API


[Expand]
function PL110FramebufferDestroy(Framebuffer:PFramebufferDevice):LongWord;
Description: Release, deregister and destroy a PL110 Framebuffer device created by this driver


PL110 framebuffer functions

[Expand]
function PL110FramebufferAllocate(Framebuffer:PFramebufferDevice; Properties:PFramebufferProperties):LongWord;
Description: Implementation of FramebufferDeviceAllocate API for PL110 Framebuffer


[Expand]
function PL110FramebufferRelease(Framebuffer:PFramebufferDevice):LongWord;
Description: Implementation of FramebufferDeviceRelease API for PL110 Framebuffer


[Expand]
function PL110FramebufferBlank(Framebuffer:PFramebufferDevice; Blank:Boolean):LongWord;
Description: Implementation of FramebufferDevicBlank API for PL110 Framebuffer


[Expand]
function PL110FramebufferCommit(Framebuffer:PFramebufferDevice; Address,Size,Flags:LongWord):LongWord;
Description: Implementation of FramebufferDeviceCommit API for PL110 Framebuffer


[Expand]
function PL110FramebufferSetOffset(Framebuffer:PFramebufferDevice; X,Y:LongWord; Pan:Boolean):LongWord;
Description: Implementation of FramebufferDeviceSetOffset API for PL110 Framebuffer


[Expand]
function PL110FramebufferSetProperties(Framebuffer:PFramebufferDevice; Properties:PFramebufferProperties):LongWord;
Description: Implementation of FramebufferDeviceSetProperties API for PL110 Framebuffer


Return to Unit Reference