TianoCore EDK2 master
Loading...
Searching...
No Matches
ArmMaliDp.c File Reference

Go to the source code of this file.

Functions

STATIC VOID LayerGraphicsDisable (VOID)
 
STATIC VOID LayerGraphicsEnable (VOID)
 
STATIC VOID LayerGraphicsSetFrame (IN CONST EFI_PHYSICAL_ADDRESS FrameBaseAddress)
 
STATIC VOID LayerGraphicsConfig (IN CONST EFI_GRAPHICS_PIXEL_FORMAT UefiGfxPixelFormat, IN CONST UINT32 HRes, IN CONST UINT32 VRes)
 
STATIC VOID SetDisplayEngineTiming (IN CONST SCAN_TIMINGS *CONST Horizontal, IN CONST SCAN_TIMINGS *CONST Vertical)
 
STATIC UINT32 ArmMaliDpGetCoreId ()
 
EFI_STATUS LcdIdentify (VOID)
 
EFI_STATUS LcdInitialize (IN CONST EFI_PHYSICAL_ADDRESS FrameBaseAddress)
 
STATIC VOID SetConfigurationMode (VOID)
 
STATIC VOID SetNormalMode (VOID)
 
STATIC VOID SetConfigValid (VOID)
 
EFI_STATUS LcdSetMode (IN CONST UINT32 ModeNumber)
 
VOID LcdShutdown (VOID)
 

Variables

STATIC UINT32 mDpDeviceId
 

Detailed Description

ARM Mali DP 500/550/650 display controller driver

Copyright (c) 2017-2018, Arm Limited. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file ArmMaliDp.c.

Function Documentation

◆ ArmMaliDpGetCoreId()

STATIC UINT32 ArmMaliDpGetCoreId ( )

Return CORE_ID of the ARM Mali DP.

Return values
0xFFFNo Mali DP found.
0x500Mali DP core id for DP500.
0x550Mali DP core id for DP550.
0x650Mali DP core id for DP650.

Definition at line 198 of file ArmMaliDp.c.

◆ LayerGraphicsConfig()

STATIC VOID LayerGraphicsConfig ( IN CONST EFI_GRAPHICS_PIXEL_FORMAT  UefiGfxPixelFormat,
IN CONST UINT32  HRes,
IN CONST UINT32  VRes 
)

Configures various graphics layer characteristics.

Parameters
[in]UefiGfxPixelFormatThis must be either PixelBlueGreenRedReserved8BitPerColor OR PixelRedGreenBlueReserved8BitPerColor
[in]HResHorizontal resolution of the graphics layer.
[in]VResVertical resolution of the graphics layer.

Definition at line 90 of file ArmMaliDp.c.

◆ LayerGraphicsDisable()

STATIC VOID LayerGraphicsDisable ( VOID  )

Disable the graphics layer

This is done by clearing the EN bit of the LG_CONTROL register.

Definition at line 28 of file ArmMaliDp.c.

◆ LayerGraphicsEnable()

STATIC VOID LayerGraphicsEnable ( VOID  )

Enable the graphics layer

This is done by setting the EN bit of the LG_CONTROL register.

Definition at line 41 of file ArmMaliDp.c.

◆ LayerGraphicsSetFrame()

STATIC VOID LayerGraphicsSetFrame ( IN CONST EFI_PHYSICAL_ADDRESS  FrameBaseAddress)

Set the frame address of the graphics layer.

Parameters
[in]FrameBaseAddressAddress of the data buffer to be used as a framebuffer.

Definition at line 55 of file ArmMaliDp.c.

◆ LcdIdentify()

EFI_STATUS LcdIdentify ( VOID  )

Check for presence of MALI.

This function returns success if the platform implements DP500/DP550/DP650 ARM Mali display processor.

Return values
EFI_SUCCESSDP500/DP550/DP650 display processor found on the platform.
EFI_NOT_FOUNDDP500/DP550/DP650 display processor not found on the platform.

Definition at line 234 of file ArmMaliDp.c.

◆ LcdInitialize()

EFI_STATUS LcdInitialize ( IN CONST EFI_PHYSICAL_ADDRESS  FrameBaseAddress)

Initialize platform display.

Parameters
[in]FrameBaseAddressAddress of the frame buffer.
Return values
EFI_SUCCESSDisplay initialization successful.
!(EFI_SUCCESS)Display initialization failure.

Definition at line 265 of file ArmMaliDp.c.

◆ LcdSetMode()

EFI_STATUS LcdSetMode ( IN CONST UINT32  ModeNumber)

Set requested mode of the display.

Parameters
[in]ModeNumberDisplay mode number.
Return values
EFI_SUCCESSDisplay mode set successful.
EFI_DEVICE_ERRORDisplay mode not found/supported.

Definition at line 357 of file ArmMaliDp.c.

◆ LcdShutdown()

VOID LcdShutdown ( VOID  )

This function de-initializes the display.

Definition at line 415 of file ArmMaliDp.c.

◆ SetConfigurationMode()

STATIC VOID SetConfigurationMode ( VOID  )

Set ARM Mali DP in configuration mode.

The ARM Mali DP must be in the configuration mode for configuration of the H_INTERVALS, V_INTERVALS, SYNC_CONTROL and HV_ACTIVESIZE.

Definition at line 298 of file ArmMaliDp.c.

◆ SetConfigValid()

STATIC VOID SetConfigValid ( VOID  )

Set the global configuration valid flag.

Any new configuration parameters written to the display engine are not activated until the global configuration valid flag is set in the CONFIG_VALID register.

Definition at line 338 of file ArmMaliDp.c.

◆ SetDisplayEngineTiming()

STATIC VOID SetDisplayEngineTiming ( IN CONST SCAN_TIMINGS *CONST  Horizontal,
IN CONST SCAN_TIMINGS *CONST  Vertical 
)

Configure timing information of the display.

Parameters
[in]HorizontalPointer to horizontal timing parameters. (Resolution, Sync, Back porch, Front porch)
[in]VerticalPointer to vertical timing parameters. (Resolution, Sync, Back porch, Front porch)

Definition at line 140 of file ArmMaliDp.c.

◆ SetNormalMode()

STATIC VOID SetNormalMode ( VOID  )

Set ARM Mali DP in normal mode.

Normal mode is the main operating mode of the display processor in which display layer data is fetched from framebuffer and displayed.

Definition at line 318 of file ArmMaliDp.c.

Variable Documentation

◆ mDpDeviceId

STATIC UINT32 mDpDeviceId

Definition at line 20 of file ArmMaliDp.c.