<?xml version="1.0" encoding="UTF-8"?>
<lsccip:ip version="1.0"
    xmlns:lsccip="http://www.latticesemi.com/XMLSchema/Radiant/ip"
    xmlns:xi="http://www.w3.org/2001/XInclude">
    <lsccip:general>
        <lsccip:vendor>latticesemi.com</lsccip:vendor>
        <lsccip:library>ip</lsccip:library>
        <lsccip:name>mdio_l</lsccip:name>
        <lsccip:display_name>MDIO Leader</lsccip:display_name>
        <lsccip:version>1.4.0</lsccip:version>
        <lsccip:category>Processors_Controllers_and_Peripherals</lsccip:category>
        <lsccip:min_radiant_version>3.1</lsccip:min_radiant_version>
        <lsccip:min_esi_version>2.1</lsccip:min_esi_version>
        <lsccip:supported_products>
             <lsccip:supported_family name="LFCPNX"></lsccip:supported_family>
             <lsccip:supported_family name="LAV-AT"></lsccip:supported_family>
             <lsccip:supported_family name="LKH-CT"></lsccip:supported_family>
             <lsccip:supported_family name="LKH-MH"></lsccip:supported_family>
             <lsccip:supported_family name="LN2-CT"></lsccip:supported_family>
	     <lsccip:supported_family name="LN2-MH"></lsccip:supported_family>
	     <lsccip:supported_family name="LFD2NX"></lsccip:supported_family>
	     <lsccip:supported_family name="LFMXO5"></lsccip:supported_family>
        </lsccip:supported_products>
        <lsccip:supported_platforms>
			 <lsccip:supported_platform name="esi" />
			 <lsccip:supported_platform name="radiant" />
        </lsccip:supported_platforms>
        </lsccip:general>
             <lsccip:settings>
             
                 <lsccip:setting
                     id                 = "HOST_INTERFACE"
                     type               = "param"
                     conn_mod           = "mdio_leader_ip_top"
                     value_type         = "int"
                     title              = "Host Interface Selection"
                     default            = "0"
                     options            = "[('AHB-L', 0), ('APB', 1), ('AXI-L', 2)]"
                     config_groups      = "'SystemBuilder'"
                     group1             = "General"
                 />

                 <lsccip:setting
                     id                 = "MDIO_BUF_EN"
                     type               = "param"
                     conn_mod           = "mdio_leader_ip_top"
                     value_type         = "bool"
                     title              = "MDIO Buffer Enable Selection"
                     default            = "True"
                     config_groups      = "'SystemBuilder'"
                     group1             = "General"
                 />
                 <lsccip:setting
                     id                 = "MDC_CLK_EN"
                     type               = "param"
                     conn_mod           = "mdio_leader_ip_top"
                     value_type         = "bool"
                     title              = "MDC Clock Enable Selection"
                     default            = "False"
                     config_groups      = "'SystemBuilder'"
                     group1             = "General"
                 />
                 
                 <lsccip:setting
                     id                 = "MDC_DIV_FACTOR"
                     type               = "param"
                     conn_mod           = "mdio_leader_ip_top"
                     value_type         = "int"
                     title              = "MDC Divide Factor Selection"
                     default            = "20"
                     options            = "[5, 10, 15, 20, 25, 30, 40]"
                     config_groups      = "'SystemBuilder'"
                     group1             = "General"
                 />
                               
             </lsccip:settings>

             <lsccip:ports>
                 <lsccip:port
                     name                 = "clk_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "clk_i"
                     port_type            = "clock"
                 />
                 <lsccip:port
                     name                 = "rstn_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "rstn_i"
                     port_type            = "reset"
                 />
                 <lsccip:port
                     name                 = "MDC"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "MDC"
                 />
                 <lsccip:port
                     name                 = "MDIO"
                     dir                  = "inout"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "MDIO"
                     dangling             = "MDIO_BUF_EN == 0"
                 />
                 <lsccip:port
                     name                 = "MDIO_IN"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "MDIO_IN"
                     dangling             = "MDIO_BUF_EN == 1"
                 />
                 <lsccip:port
                     name                 = "MDIO_OUT"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "MDIO_OUT"
                     dangling             = "MDIO_BUF_EN == 1"
                 />
                 <lsccip:port
                     name                 = "MDIO_OE"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "MDIO_OE"
                     dangling             = "MDIO_BUF_EN == 1"
                 />
                 <lsccip:port
                     name                 = "ahbl_hsel_slv_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_hsel_slv_i"
                     bus_interface        = "AHBL_SLV"
                     dangling            = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_htrans_slv_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_htrans_slv_i"
                     range                = "(1, 0)"
                     bus_interface        = "AHBL_SLV"
                     dangling            = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_hwrite_slv_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_hwrite_slv_i"
                     bus_interface        = "AHBL_SLV"
                     dangling            = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_hready_slv_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_hready_slv_i"
                     bus_interface        = "AHBL_SLV"
                     dangling            = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_hreadyout_slv_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_hreadyout_slv_o"
                     bus_interface        = "AHBL_SLV"
                     dangling            = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_hresp_slv_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_hresp_slv_o"
                     bus_interface        = "AHBL_SLV"
                     dangling            = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_adr_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_adr_i"
					 range                = "(31, 0)"
                     bus_interface        = "AHBL_SLV"
                     dangling            = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_dat_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_dat_i"
                     range                = "(31, 0)"
                     bus_interface        = "AHBL_SLV"
                     dangling             = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "ahbl_rdat_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "ahbl_rdat_o"
					 range                = "(31, 0)"
                     bus_interface        = "AHBL_SLV"
                     dangling             = "HOST_INTERFACE != 0"
                 />
                 <lsccip:port
                     name                 = "apb_psel_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "apb_psel_i"
                     bus_interface        = "APB_SLV"
                     dangling            = "HOST_INTERFACE != 1"
                 />
                 <lsccip:port
                     name                 = "apb_pwrite_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "apb_pwrite_i"
                     bus_interface        = "APB_SLV"
                     dangling            = "HOST_INTERFACE != 1"
                 />
                 <lsccip:port
                     name                 = "apb_penable_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "apb_penable_i"
                     bus_interface        = "APB_SLV"
                     dangling            = "HOST_INTERFACE != 1"
                 />
                 <lsccip:port
                     name                 = "apb_pready_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "apb_pready_o"
                     bus_interface        = "APB_SLV"
                     dangling            = "HOST_INTERFACE != 1"
                 />
                 <lsccip:port
                     name                 = "apb_slv_err_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "apb_slv_err_o"
                     bus_interface        = "APB_SLV"
                     dangling            = "HOST_INTERFACE != 1"
                 />
                 <lsccip:port
                     name                 = "apb_adr_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "apb_adr_i"
                     range                = "(31, 0)"
                     bus_interface        = "APB_SLV"
                     dangling            = "HOST_INTERFACE != 1"
                 />
                 <lsccip:port
                     name                 = "apb_dat_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "apb_dat_i"
                     range                = "(31, 0)"
                     bus_interface        = "APB_SLV"
                     dangling             = "HOST_INTERFACE != 1"
                 />
                 <lsccip:port
                     name                 = "apb_rdat_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "apb_rdat_o"
					 range                = "(31, 0)"
                     bus_interface        = "APB_SLV"
                     dangling             = "HOST_INTERFACE != 1"
                 />
				  <lsccip:port
                     name                 = "axi_awvalid_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_awvalid_i"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 
             <lsccip:port
                     name                 = "axi_awprot_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_awprot_i"
					 range                = "(2, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_aw_addr_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_aw_addr_i"
					 range                = "(31, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_awready_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_awready_o"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_wvalid_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_wvalid_i"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_wready_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_wready_o"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_wstrb_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_wstrb_i"
					 range                = "(3, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_bready_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_bready_i"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_bvalid_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_bvalid_o"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_bresp_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_bresp_o"
					 range                = "(1, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_arvalid_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_arvalid_i"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_arready_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_arready_o"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_arprot_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_arprot_i"
					 range                = "(2, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_rvalid_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_rvalid_o"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_rready_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_rready_i"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_rresp_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_rresp_o"
					 range                = "(1, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_ar_addr_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_ar_addr_i"
					 range                = "(31, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_dat_i"
                     dir                  = "in"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_dat_i"
					 range                = "(31, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
				 <lsccip:port
                     name                 = "axi_rdat_o"
                     dir                  = "out"
                     conn_mod             = "mdio_leader_ip_top"
                     conn_port            = "axi_rdat_o"
					 range                = "(31, 0)"
                     bus_interface        = "AXI_SLV"
                     dangling             = "HOST_INTERFACE != 2"
                 />
             </lsccip:ports>

        <xi:include href="bus_interface.xml" parse="xml" />
        <xi:include href="memory_map.xml" parse="xml" />
</lsccip:ip>
