<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<IP ns0:schemaLocation="http://mcd.rou.st.com/modules.php?name=mcu ../../../../../../../doc/V4/Development/Specifications/db/IP_Configs.xsd"
  xmlns="http://mcd.rou.st.com/modules.php?name=mcu"
  xmlns:ns0="http://www.w3.org/2001/XMLSchema-instance"
  DBVersion="V4.0"
  IncludeFile="stm32l1xx_hal.h"
  Name="SDIO"
  Version="STM32Cube_FW_L1_V1.9.0">

    <RefConfig Name="SD_Init">
        <CallLibMethod Name="HAL_SD_Init" ReturnHAL="HAL_OK">
            <MethodArg Name="BusWide" FValue="SDIO_BUS_WIDE_1B"/>
        </CallLibMethod>
        <ImplementCallBack Name="HAL_SD_MspInit"/>
        <ImplementCallBack Name="HAL_SD_MspDeInit"/>
    </RefConfig>
      <!-- BZ37917/51299/74240 -->
    <RefConfig Name="SD_WideBus_Config">
        <CallLibMethod Name="HAL_SD_ConfigWideBusOperation" ReturnHAL="HAL_OK">
            <MethodArg Name="WideMode" ParameterName="BusWide"/>
        </CallLibMethod>
    </RefConfig>

    <RefComponent Cclass="HAL" Cgroup="SDIO" Cversion="1.0.0">
        <File Category="header" Name="Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_sd.h"/>
        <File Category="header" Name="Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_ll_sdmmc.h"/>
        <File Category="source" Name="Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_sd.c"/>
        <File Category="source" Name="Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_ll_sdmmc.c"/>
    </RefComponent>

    <LibMethod Comment="" Name="HAL_SD_Init">
       <Argument AddressOf="true" Context="global" GenericType="struct" Name="hsd" TypeName="SD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="ClockEdge"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockBypass"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockPowerSave"/>
                <Argument AddressOf="false" GenericType="simple" Name="BusWide"/>
                <Argument AddressOf="false" GenericType="simple" Name="HardwareFlowControl"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockDiv"/>
            </Argument>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" TypeName="HAL_LockTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="pTxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="pRxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="Context"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" TypeName="HAL_SD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="SdCard" TypeName="HAL_SD_CardInfoTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="CSD"/>
            <Argument AddressOf="true" GenericType="simple" Name="CID"/>
        </Argument>
    </LibMethod>

    <LibMethod Comment="" Name="HAL_SD_DeInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hsd" TypeName="SD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="ClockEdge"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockBypass"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockPowerSave"/>
                <Argument AddressOf="false" GenericType="simple" Name="BusWide"/>
                <Argument AddressOf="false" GenericType="simple" Name="HardwareFlowControl"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockDiv"/>
            </Argument>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" TypeName="HAL_LockTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="pTxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="pRxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="Context"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" TypeName="HAL_SD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="SdCard" TypeName="HAL_SD_CardInfoTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="CSD"/>
            <Argument AddressOf="true" GenericType="simple" Name="CID"/>
        </Argument>
    </LibMethod>

    <LibMethod Comment="" Name="HAL_SD_MspInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hsd" TypeName="SD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="ClockEdge"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockBypass"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockPowerSave"/>
                <Argument AddressOf="false" GenericType="simple" Name="BusWide"/>
                <Argument AddressOf="false" GenericType="simple" Name="HardwareFlowControl"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockDiv"/>
            </Argument>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" TypeName="HAL_LockTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="pTxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="pRxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="Context"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" TypeName="HAL_SD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="SdCard" TypeName="HAL_SD_CardInfoTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="CSD"/>
            <Argument AddressOf="true" GenericType="simple" Name="CID"/>
        </Argument>
    </LibMethod>

    <LibMethod Comment="" Name="HAL_SD_MspDeInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hsd" TypeName="SD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="ClockEdge"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockBypass"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockPowerSave"/>
                <Argument AddressOf="false" GenericType="simple" Name="BusWide"/>
                <Argument AddressOf="false" GenericType="simple" Name="HardwareFlowControl"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockDiv"/>
            </Argument>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" TypeName="HAL_LockTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="pTxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="pRxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="Context"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" TypeName="HAL_SD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="SdCard" TypeName="HAL_SD_CardInfoTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="CSD"/>
            <Argument AddressOf="true" GenericType="simple" Name="CID"/>
        </Argument>
    </LibMethod>

    <LibMethod Comment="" Name="HAL_SD_ConfigWideBusOperation">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hsd" TypeName="SD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="ClockEdge"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockBypass"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockPowerSave"/>
                <Argument AddressOf="false" GenericType="simple" Name="BusWide"/>
                <Argument AddressOf="false" GenericType="simple" Name="HardwareFlowControl"/>
                <Argument AddressOf="false" GenericType="simple" Name="ClockDiv"/>
            </Argument>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" TypeName="HAL_LockTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="pTxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="pRxBuffPtr"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize"/>
            <Argument AddressOf="false" GenericType="simple" Name="Context"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" TypeName="HAL_SD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="SdCard" TypeName="HAL_SD_CardInfoTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="CSD"/>
            <Argument AddressOf="true" GenericType="simple" Name="CID"/>
        </Argument>
        <Argument AddressOf="false" GenericType="simple" Name="WideMode"/>
    </LibMethod>
</IP>
