<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<IP xmlns="http://mcd.rou.st.com/modules.php?name=mcu" 
    DBVersion="V4.0" 
    Name="USB_OTG_FS;USB_OTG_HS" 
    Version="STM32Cube_FW_F7_V1.4.0"
    xmlns:ns0="http://www.w3.org/2001/XMLSchema-instance" 
    ns0:schemaLocation="http://mcd.rou.st.com/modules.php?name=mcu ../../../../../../../doc/V4/Development/Specifications/db/IP_Configs.xsd">
    
    <!-- RefConfig for Peripheral(Device) Controller Driver (PCD) -->
    <RefConfig Name="PCD_Init_FS">
        <CallLibMethod Name="HAL_PCD_Init">
            <MethodArg Name="hpcd" ParameterName="hpcd_USB_OTG_FS"/>
            <MethodArg Name="speed" ParameterName="DeviceSpeed"/>
        </CallLibMethod>
        <ImplementCallBack Name="HAL_PCD_MspInit"/>
        <ImplementCallBack Name="HAL_PCD_MspDeInit"/>
    </RefConfig>
    
    <RefConfig Name="PCD_Init_HS">
        <CallLibMethod Name="HAL_PCD_Init">
            <MethodArg Name="hpcd" ParameterName="hpcd_USB_OTG_HS"/>
            <MethodArg Name="speed" ParameterName="DeviceSpeed"/>
        </CallLibMethod>
        <ImplementCallBack Name="HAL_PCD_MspInit"/>
        <ImplementCallBack Name="HAL_PCD_MspDeInit"/>
    </RefConfig>
    
    <RefConfig Name="PCD_DeInit">
        <CallLibMethod Name="HAL_PCD_DeInit"/>        
    </RefConfig>
    
    <!-- LibMethod for Peripheral(Device) Controller Driver (PCD) -->
    <LibMethod Comment="" Name="HAL_PCD_Init">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hpcd" TypeName="PCD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="enum" Name="Instance" TypeName="PCD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="PCD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="dev_endpoints" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Host_channels" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="speed" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="dma_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="ep0_mps" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="phy_itface" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Sof_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="low_power_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="lpm_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="battery_charging_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="vbus_sensing_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="use_dedicated_ep1" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="use_external_vbus" OptimizationCondition="equal"/>
            </Argument>  
            <Argument AddressOf="false" GenericType="enum" Name="IN_ep" TypeName="PCD_EPTypeDef"/>
            <Argument AddressOf="false" GenericType="enum" Name="OUT_ep" TypeName="PCD_EPTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="enum" Name="State" TypeName="PCD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Setup" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_PCD_DeInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hpcd" TypeName="PCD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="enum" Name="Instance" TypeName="PCD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="PCD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="dev_endpoints" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Host_channels" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="speed" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="dma_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="ep0_mps" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="phy_itface" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Sof_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="low_power_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="lpm_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="battery_charging_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="vbus_sensing_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="use_dedicated_ep1" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="use_external_vbus" OptimizationCondition="equal"/>
            </Argument>  
            <Argument AddressOf="false" GenericType="enum" Name="IN_ep" TypeName="PCD_EPTypeDef"/>
            <Argument AddressOf="false" GenericType="enum" Name="OUT_ep" TypeName="PCD_EPTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="enum" Name="State" TypeName="PCD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Setup" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_PCD_MspInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hpcd" TypeName="PCD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="enum" Name="Instance" TypeName="PCD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="PCD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="dev_endpoints" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Host_channels" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="speed" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="dma_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="ep0_mps" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="phy_itface" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Sof_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="low_power_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="lpm_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="battery_charging_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="vbus_sensing_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="use_dedicated_ep1" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="use_external_vbus" OptimizationCondition="equal"/>
            </Argument>  
            <Argument AddressOf="false" GenericType="enum" Name="IN_ep" TypeName="PCD_EPTypeDef"/>
            <Argument AddressOf="false" GenericType="enum" Name="OUT_ep" TypeName="PCD_EPTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="enum" Name="State" TypeName="PCD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Setup" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_PCD_MspDeInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hpcd" TypeName="PCD_HandleTypeDef">
            <Argument AddressOf="false" GenericType="enum" Name="Instance" TypeName="PCD_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="PCD_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="dev_endpoints" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Host_channels" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="speed" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="dma_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="ep0_mps" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="phy_itface" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Sof_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="low_power_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="lpm_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="battery_charging_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="vbus_sensing_enable" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="use_dedicated_ep1" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="use_external_vbus" OptimizationCondition="equal"/>
            </Argument>  
            <Argument AddressOf="false" GenericType="enum" Name="IN_ep" TypeName="PCD_EPTypeDef"/>
            <Argument AddressOf="false" GenericType="enum" Name="OUT_ep" TypeName="PCD_EPTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="enum" Name="State" TypeName="PCD_StateTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Setup" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <RefComponent Cclass="HAL" Cgroup="PCD" Cversion="1.0.2">
        <File Category="header" Name="Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_pcd.h" />   
	    <File Category="header" Name="Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_pcd_ex.h"/>   
        <File Category="source" Name="Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_pcd.c" />
	    <File Category="source" Name="Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_pcd_ex.c"/>
        <File Category="header" Name="Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usb.h"/>
        <File Category="source" Name="Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usb.c"/>
    </RefComponent>
</IP>
