<?xml version="1.0" encoding="utf-8" standalone="no"?>
<IP xmlns="http://mcd.rou.st.com/modules.php?name=mcu" 
    xmlns:ns0="http://www.w3.org/2001/XMLSchema-instance" 
    CodeTemplate="" 
    DBVersion="V4.0" 
    IncludeFile="cmsis_os.h" 
    Name="OPENAMP" 
    RootFolder="Middlewares/Third_Party/OpenAMP/" 
    Version=""
    ns0:schemaLocation="http://mcd.rou.st.com/modules.php?name=mcu ../../../../../../../doc/V4/Development/Specifications/db/IP_Configs.xsd">

    <RefConfig Comment="" Name="OPENAMP_Init">
        <Component Name="Middleware:OPENAMP"/>
        <ConfigFile Name="OPENAMP_CONF_H"/>
        <ConfigFile Name="MBOX_IPCC_H"/>
        <ConfigFile Name="OPENAMP_H"/>
        <ConfigFile Name="RSC_TABLE_H"/>
        <ConfigFile Name="OPENAMP_C"/>
        <ConfigFile Name="MBOX_IPCC_C"/>
        <ConfigFile Name="RSC_TABLE_C"/>
		<ConfigFile Name="OPENAMP_LOG_H"/>
		<ConfigFile Name="OPENAMP_LOG_C"/>
	    <Defines Name="NO_ATOMIC_64_SUPPORT" Value="" />
		<Defines Name="METAL_INTERNAL" Value="" />
		<Defines Name="METAL_MAX_DEVICE_REGIONS=2" Value="" />
		<Defines Name="VIRTIO_SLAVE_ONLY" Value="" />
		<!---<Defines Name="__LOG_TRACE_IO_" Value="" /> !-->
    </RefConfig>
    <RefComponent Cclass="Middleware" Cgroup="OPENAMP"  Cversion="1.0.0">				
	
		<File Category="header" Name="open-amp/lib/include/*"/>
		<File Category="header" Name="libmetal/lib/include/*"/>
		<File Category="header" Name="virtual_driver/*"/>
	
		<File Category="header" Name="open-amp/lib/rpmsg/*"/>
	
		<File Category="source" Name="libmetal/lib/device.c"/>
		<File Category="source" Name="libmetal/lib/init.c"/>
		<File Category="source" Name="libmetal/lib/io.c"/>
		<File Category="source" Name="libmetal/lib/log.c"/>
		<File Category="source" Name="libmetal/lib/shmem.c"/>
		<File Category="source" Name="libmetal/lib/system/generic/condition.c"/>
		
		<!---Only for MDK-ARM KEIL!-->
		<File Category="source" Condition="KEIL_CM4;SIiTcompilerIiARMCC" Name="libmetal/lib/system/generic/irq.c"/>
		
		<File Category="source" Name="libmetal/lib/system/generic/generic_device.c"/>
		<File Category="source" Name="libmetal/lib/system/generic/generic_init.c"/>
		<File Category="source" Name="libmetal/lib/system/generic/generic_io.c"/>
		<File Category="source" Name="libmetal/lib/system/generic/generic_shmem.c"/>
		<File Category="source" Name="libmetal/lib/system/generic/time.c"/>
		<File Category="source" Name="open-amp/lib/remoteproc/remoteproc_virtio.c"/>
		<File Category="source" Name="open-amp/lib/rpmsg/rpmsg.c"/>
		<File Category="source" Name="open-amp/lib/rpmsg/rpmsg_virtio.c"/>
		<File Category="source" Name="open-amp/lib/virtio/virtio.c"/>
		<File Category="source" Name="open-amp/lib/virtio/virtqueue.c"/>
		<File Category="source" Name="libmetal/lib/system/generic/cortexm/sys.c"/>

    </RefComponent>

    <RefConfigFile Description="File manager wrapper definition : header file" Name="OPENAMP_CONF_H" Template="openamp_conf_h.ftl">
        <File Category="header" Condition="all" Name="openamp_conf.h" Version=""/>
        <Argument Name="SHM_START_ADDRESS" GenericType="Simple" Comment=""/>
        <Argument Name="SHM_SIZE" GenericType="Simple" Comment=""/>
        <Argument Name="VRING_RX_ADDRESS" GenericType="Simple" Comment=""/>
        <Argument Name="VRING_TX_ADDRESS" GenericType="Simple" Comment=""/>
        <Argument Name="VRING_BUFF_ADDRESS" GenericType="Simple" Comment=""/>
        <Argument Name="VRING_ALIGNMENT" GenericType="Simple" Comment=""/>
        <Argument Name="VRING_NUM_BUFFS" GenericType="Simple" Comment=""/>
        <Argument Name="NUM_RESOURCE_ENTRIES" GenericType="Simple" Comment=""/>
        <Argument Name="VRING_COUNT" GenericType="Simple" Comment=""/>
        <Argument Name="VDEV_ID" GenericType="Simple" Comment=""/>
        <Argument Name="VRING0_ID" GenericType="Simple" Comment=""/>
        <Argument Name="VRING1_ID" GenericType="Simple" Comment=""/>
    </RefConfigFile>
    
    <RefConfigFile Description="File manager wrapper definition : header file" Name="MBOX_IPCC_H" Template="mbox_ipcc_h.ftl">
        <File Category="header" Condition="all" Name="mbox_ipcc.h" Version=""/>
    </RefConfigFile>

    <RefConfigFile Description="File manager wrapper definition : header file" Name="OPENAMP_H" Template="openamp_h.ftl">
        <File Category="header" Condition="all" Name="openamp.h" Version=""/>
    </RefConfigFile>

    <RefConfigFile Description="File manager wrapper definition : header file" Name="RSC_TABLE_H" Template="rsc_table_h.ftl">
        <File Category="header" Condition="all" Name="rsc_table.h" Version=""/>
    </RefConfigFile>

    <RefConfigFile Description="File manager wrapper definition : source file" Name="MBOX_IPCC_C" Template="mbox_ipcc_c.ftl">
        <File Category="source" Condition="all" Name="mbox_ipcc.c" Version=""/>
        <Argument Name="MASTER_CPU_ID" GenericType="Simple" Comment=""/>
        <Argument Name="REMOTE_CPU_ID" GenericType="Simple" Comment=""/>
        <Argument Name="IPCC_CPU_A7" GenericType="Simple" Comment=""/>
        <Argument Name="IPCC_CPU_M4" GenericType="Simple" Comment=""/>
        <Argument Name="RX_NO_MSG" GenericType="Simple" Comment=""/>
        <Argument Name="RX_NEW_MSG" GenericType="Simple" Comment=""/>
        <Argument Name="RX_BUF_FREE" GenericType="Simple" Comment=""/>
    </RefConfigFile>

    <RefConfigFile Description="File manager wrapper definition : source file" Name="OPENAMP_C" Template="openamp_c.ftl">
        <File Category="source" Condition="all" Name="openamp.c" Version=""/>
    </RefConfigFile>
    
    <RefConfigFile Description="File manager wrapper definition : source file" Name="RSC_TABLE_C" Template="rsc_table_c.ftl">
        <File Category="source" Condition="all" Name="rsc_table.c" Version=""/>
    </RefConfigFile>

	<RefConfigFile Description="File manager wrapper definition : header file" Name="OPENAMP_LOG_H" Template="openamp_log_h.ftl">
        <File Category="source" Condition="all" Name="openamp_log.h" Version=""/>
    </RefConfigFile>

	<RefConfigFile Description="File manager wrapper definition : source file" Name="OPENAMP_LOG_C" Template="openamp_log_c.ftl">
        <File Category="source" Condition="all" Name="openamp_log.c" Version=""/>
    </RefConfigFile>
</IP>
