Synergy Software Package User's Manual

GUIX adaptation layer. More...

Data Structures

struct  sf_el_gx_instance_ctrl_t
 

Functions

ssp_err_t SF_EL_GX_Open (sf_el_gx_ctrl_t *const p_api_ctrl, sf_el_gx_cfg_t const *const p_cfg)
 GUIX adaptation framework driver for Synergy, open function to configure the framework module. The function initialize RTOS resources used by the module, initialize the control block based on user configuration, and transition the module state to SF_EL_GX_OPENED. This function calls following functions: More...
 
ssp_err_t SF_EL_GX_Close (sf_el_gx_ctrl_t *const p_api_ctrl)
 GUIX adaptation framework for Synergy, Close function. This function calls following functions: More...
 
ssp_err_t SF_EL_GX_VersionGet (ssp_version_t *p_version)
 GUIX adaptation framework for Synergy, Version get function. More...
 
UINT SF_EL_GX_Setup (GX_DISPLAY *p_display)
 GUIX adaptation framework for Synergy, Setup GUIX low level device drivers for Display and D/AVE 2D interface. This function has to be passed to the GUIX Studio display driver setup function gx_studio_display_configure() to let GUIX call this function and configure the GUIX low level device driver(s). This function calls following functions: More...
 
ssp_err_t SF_EL_GX_CanvasInit (sf_el_gx_ctrl_t *const p_api_ctrl, GX_WINDOW_ROOT *p_window_root)
 GUIX adaptation framework for Synergy, Canvas initialization, setup the memory address of first canvas to be rendered. More...
 

Detailed Description

GUIX adaptation layer.

Function Documentation

◆ SF_EL_GX_CanvasInit()

ssp_err_t SF_EL_GX_CanvasInit ( sf_el_gx_ctrl_t *const  p_api_ctrl,
GX_WINDOW_ROOT *  p_window_root 
)

GUIX adaptation framework for Synergy, Canvas initialization, setup the memory address of first canvas to be rendered.

Return values
SSP_SUCCESSMemory address is successfully configured to a canvas.
SSP_ERR_ASSERTIONInvalid control block (NULL pointer) or window root (NULL pointer) passed to driver.
SSP_ERR_INVALID_CALLFunction call was made when the driver is not in SF_EL_GX_CONFIGURED state.
SSP_ERR_INTERNALMutex operation had an error.

Locks the driver to update the context.

Lets GUIX know the first canvas

Unlocks the driver.

◆ SF_EL_GX_Close()

ssp_err_t SF_EL_GX_Close ( sf_el_gx_ctrl_t *const  p_api_ctrl)

GUIX adaptation framework for Synergy, Close function. This function calls following functions:

  • tx_mutex_delete() Deletes the mutex for driver
  • tx_semaphore_delete() Deletes the semaphore for rendering and displaying synchronization.
  • sf_el_gx_d2_close() Finalizes 2D Drawing Engine hardware.
  • sf_el_gx_display_close() Finalizes display hardware.
    Return values
    SSP_SUCCESSClosed the module successfully.
    SSP_ERR_ASSERTIONNULL pointer error happens.
    SSP_ERR_NOT_OPENSF_EL_GX is not opened.
    Note
    This function is re-entrant.

Finalizes display hardware

Changes the driver state

Deletes a semaphore for frame buffer flip

Deletes driver global mutex

Clears the temporary storage for the pointer to a control block. This procedure has done in SF_EL_GX_Setup() in the expected function call sequence, but clear it here as well in case SF_EL_GX_Setup() being not called.

◆ SF_EL_GX_Open()

ssp_err_t SF_EL_GX_Open ( sf_el_gx_ctrl_t *const  p_api_ctrl,
sf_el_gx_cfg_t const *const  p_cfg 
)

GUIX adaptation framework driver for Synergy, open function to configure the framework module. The function initialize RTOS resources used by the module, initialize the control block based on user configuration, and transition the module state to SF_EL_GX_OPENED. This function calls following functions:

  • sf_el_gx_open_param_check() Check configuration parameters if parameter check is enabled.
  • tx_mutex_create() Creates the mutex for lock the driver during the context update.
  • tx_mutex_delete() Deletes the mutex if kernel service calls failed in the process.
  • tx_semaphore_create() Creates the semaphore for rendering and displaying synchronization.
    Return values
    SSP_SUCCESSOpened the module successfully.
    SSP_ERR_ASSERTIONNULL pointer error happened.
    SSP_ERR_IN_USESF_EL_GX is in-use.
    SSP_ERR_INTERNALError happened in kernel service calls.
    SSP_ERR_INVALID_ARGUMENTAn invalid argument was passed to the driver.
    Note
    This function does not initialize the display or rendering hardware but setup function will do.
    This function registers a user callback function but it is optional. Set NULL to p_cfg::p_callback if user callback is not required.
    The configuration for the frame buffer B (p_cfg::p_framebuffer_b) is optional. Set NULL to p_framebuffer_b in case of a single-buffered system.

Creates global mutex for SF_EL_GX to protect access to the control structure and GUIX low level device drivers setup.

Locks the SF_EL_GX instance until driver setup is done by SF_EL_GX_Setup().

Creates a semaphore for frame buffer flip

Initializes the SF_EL_GX control block

Saves the control block to the global pointer inside the module temporarily. Stored data will be used in sf_el_gx_driver_setup() which will be invoked by GUIX. This pointer will be valid at last but be protected until SF_EL_GX_Setup() is done.

Changes the driver state

◆ SF_EL_GX_Setup()

UINT SF_EL_GX_Setup ( GX_DISPLAY *  p_display)

GUIX adaptation framework for Synergy, Setup GUIX low level device drivers for Display and D/AVE 2D interface. This function has to be passed to the GUIX Studio display driver setup function gx_studio_display_configure() to let GUIX call this function and configure the GUIX low level device driver(s). This function calls following functions:

  • tx_mutex_put() Puts the driver global mutex when the low level driver setup is done
  • tx_mutex_delete() Deletes the mutex if kernel service calls failed in the process
  • _gx_synergy_display_driver_565rgb_setup() Setups default GUIX callback functions for RGB565 in case of display format format is RGB565 format
  • _gx_synergy_display_driver_24xrgb_setup() Setups default GUIX callback functions for RGB565 in case of display format format is RGB888, unpacked format
  • _gx_display_driver_32argb_setup() Setups default GUIX callback functions for RGB565 in case of display format format is ARGB8888, unpacked format
  • sf_el_gx_driver_setup() Setups low level device drivers and overrides the GUIX default callback functions with hardware accelerated functions.
    Return values
    GX_SUCCESSDevice driver setup is successfully done.
    GX_FAILUREDevice driver setup failed.
    Note
    Make sure SF_EL_GX_Open() has been called when this function is called back by GUIX. The behavior is not defined if this function were not invoked by GUIX.

Copies the GX_DISPLAY context for later use.

Setups GUIX low level device drivers

Changes the driver state

Clears the temporary storage for the pointer to a control block.

Unlocks the SF_EL_GX instance since driver setup is done

◆ SF_EL_GX_VersionGet()

ssp_err_t SF_EL_GX_VersionGet ( ssp_version_t p_version)

GUIX adaptation framework for Synergy, Version get function.

Parameters
[in,out]p_versionThe version number.
Return values
SSP_SUCCESSSuccessfully returned the module version.
SSP_ERR_ASSERTIONNULL pointer is passed to function.
Note
This function is re-entrant.