Edit

IABSD.fr/xenocara/driver/xf86-video-mga/README_HALLIB

Branch :

  • Show log

    Commit

  • Author : matthieu
    Date : 2006-11-26 20:06:58
    Hash : ee529ef9
    Message : Importing xf86-video-mga 1.4.4

  • driver/xf86-video-mga/README_HALLIB
  • HAL Documentation
    
    This documentation  provides preliminary explaination of the HAL library, a
    more detailed version of this document is in the process of being written
    and will be released with future driver builds.
    
    ------------------------------------------------------------
    MGAOpenLibrary
    
    Description: Link Client functions with HAL Librery
    
    Input:
    LPBOARDHANDLE pBoard: Handle to the board structure containing all the information about the board.
    
    LPBARDHANDLElpClient: Pointer to the client stucture
    
    ulClientSize: Size of the client structure
    
    Error:
    return 0 on success
    
    -------------------------------------------------------------
    MGAGetHardwareInfo
    
    Description:
    
    Fills MGAWINFO structure.
    
    struct {
    ULONG UlCapsFirstOutput;
    ULONG ulCapsSecondOutput;
    ULONG ulVideoMemory;
    } FAR *LPMGAHWINFO;
    
    #define MGAHWINFOCAPS_CRTC1_DIGITAL         (1L << 1)
    #define MGAHWINFOCAPS_CRTC1_TV              (1L << 2)
    #define MGAHWINFOCAPS_CRTC2_ANALOG          (1L << 3)
    #define MGAHWINFOCAPS_CRTC2_DIGITAL         (1L << 4)
    #define MGAHWINFOCAPS_CRTC2_TV              (1L << 5)
    #define MGAHWINFOCAPS_OUTPUT_VGA            (1L << 6)
    #define MGAHWINFOCAPS_CRTC2                 (MGAHWINFOCAPS_CRTC2_ANALOG | MGAHWINFOCAPS_CRTC2_DIGITAL | MGAHWINFOCAPS_CRTC2_TV)
    #define MGAHWINFOCAPS_OUTPUT_ANALOG         (MGAHWINFOCAPS_CRTC1_ANALOG | MGAHWINFOCAPS_CRTC2_ANALOG)
    #define MGAHWINFOCAPS_OUTPUT_DIGITAL        (MGAHWINFOCAPS_CRTC1_DIGITAL | MGAHWINFOCAPS_CRTC2_DIGITAL)
    #define MGAHWINFOCAPS_OUTPUT_TV             (MGAHWINFOCAPS_CRTC1_TV | MGAHWINFOCAPS_CRTC2_TV)
    
    example:
    
    if (pMga->pMgaHwInfo->ulCapsSecondOutput & MGAHWINFOCAPS_OUTPUT_TV )
    {
    	ErrorF("TV detected\n");
    	xf86DrvMsg(pScrn->scrnIndex, X_INFO, "TV detected\n ");
    }
    if (pMga->pMgaHwInfo->ulCapsSecondOutput & MGAHWINFOCAPS_OUTPUT_DIGITAL)
    {
            xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Digital Screen  detected\n ");
    }
    
    Inputs:
    
    LPBOARDHANDLE  pBoard: Handle to the board structure containing all the information about the board.
    
    LPMGAHWINFO pMgaHwInfo:  Handle to the board  structure containing all
    the information about the specific Board.
    
    Error:
    Returns 0 on success
    ------------------------------------------------------------
    MGAValidateMode
    
    Description:
    
    Validates the mode given by client.
    
    Here are the different options for pMgaModeInfo->flOutput:
    
    MGAMODEINFO_FORCE_PITCH
    MGAMODEINFO_FORCE_DISPLAYORG
    MGAMODEINFO_SECOND_CRTC
    MGAMODEINFO_ANALOG1
    MGAMODEINFO_ANALOG2
    MGAMODEINFO_DIGITAL1
    MGAMODEINFO_DIGITAL2
    MGAMODEINFO_TV
    
    These options can be combined together to set different combinations.
    Example:
    
    /*The second crtc outputs to a digital screen*/
    pMgaModeInfo->flOutput= MGAMODEINFO_DIGITAL2 | MGAMODEINFO_SECOND_CRTC
    | MGAMODEINFO_FORCE_PITCH | MGAMODEINFO_FORCE_DISPLAYORG;
    
    - or -
    
    /*The second crtc outputs to an analog screen*/
    pMgaModeInfo-> flOutput = MGAMODEINFO_ANALOG2| MGAMODEINFO_SECOND_CRTC
    | MGAMODEINFO_FORCE_PITCH | MGAMODEINFO_FORCE_DISPLAYORG;
    
    - or -
    
    /*The second crtc outputs to a tv*/
    pMga->pMgaModeInfo->flOutput = MGAMODEINFO_TV | MGAMODEINFO_SECOND_CRTC | MGAMODEINFO_FORCE_PITCH | MGAMODEINFO_FORCE_DISPLAYORG;
    
    Inputs:
    LPBOARDHANDLE pBoard: Handle to the board structure containing all the information about the board.
    
    LPMGAMODEINFO pMgaModeInfo: Pointer to structure containing information about a specific display mode. (You need to fill the structure except the video parameters part which will be filled by the function).
    
    Error:
    Returns 0 on success
    
    -------------------------------------------------------------
    MGASetMode
    
    Description:
    
    Initializes the board.
    
    Here are the different options for pMgaModeInfo->flOutput:
    
    MGAMODEINFO_FORCE_PITCH
    MGAMODEINFO_FORCE_DISPLAYORG
    MGAMODEINFO_SECOND_CRTC
    MGAMODEINFO_ANALOG1
    MGAMODEINFO_ANALOG2
    MGAMODEINFO_DIGITAL1
    MGAMODEINFO_DIGITAL2
    MGAMODEINFO_TV
    
    These options can be combined together to set different combinations.
    Example:
    
    /*The second crtc outputs to a digital screen*/
    pMgaModeInfo->flOutput= MGAMODEINFO_DIGITAL2 | MGAMODEINFO_SECOND_CRTC
    | MGAMODEINFO_FORCE_PITCH | MGAMODEINFO_FORCE_DISPLAYORG;
    
    - or -
    
    /*The second crtc outputs to an analog screen*/
    pMgaModeInfo-> flOutput = MGAMODEINFO_ANALOG2| MGAMODEINFO_SECOND_CRTC
    | MGAMODEINFO_FORCE_PITCH | MGAMODEINFO_FORCE_DISPLAYORG;
    
    - or -
    
    /*The second crtc outputs to a tv*/
    pMga->pMgaModeInfo->flOutput = MGAMODEINFO_TV | MGAMODEINFO_SECOND_CRTC | MGAMODEINFO_FORCE_PITCH | MGAMODEINFO_FORCE_DISPLAYORG;
    
    Inputs:
    LPBOARDHANDLE pBoard: Handle to the board structure containing all the information about the board.
    
    LPMGAMODEINFO pMgaModeInfo: Pointer to structure containing information about a specific display mode. (You need to fill the structure except the video parameters part which will be filled by the function).
    
    Error:
    Returns 0 on success
    
    ------------------------------------------------------------
    
    MGASetVgaMode
    
    Description:
    
    Switchs the VGA mode
    
    Inputs:
    LPBOARDHANDLE pBoard: Handle to the board structure containing all the information about the board.
    
    Error:
    Returns 0 on success
    
    ------------------------------------------------------------
    
    MGARestoreVgaState
    
    Description:
    
    Restores the VGA State
    
    Inputs:
    LPBOARDHANDLE pBoard: Handle to the board structure containing all the information about the board.
    
    Error:
    Returns 0 on success
    
    ------------------------------------------------------------
    
    MGASaveVgaState
    
    Description:
    
    Saves the VGA state
    
    Inputs:
    LPBOARDHANDLE pBoard: Handle to the board structure containing all the information about the board.
    
    Error:
    Returns 0 on success
    
    ------------------------------------------------------------
    
    MGACloseLibrary
    
    Description:
    
    Closes the library
    
    Inputs:
    LPBOARDHANDLE pBoard: Handle to the board structure containing all the information about the board.
    
    Error:
    Returns 0 on success