In hwh_frontend.py(line 485ff) there is a check, tries to map the "INTERFACE" to a portname.
If there is a AXI_Full port, the INTERFACE property will be "aximm" which does not match to AXI_FULL! therefore the variable _port_available will not be set to True.
part of hwh-File:
...
<MODULE COREREVISION="23" FULLNAME="/axi_quad_spi_0" HWVERSION="3.2" INSTANCE="axi_quad_spi_0" IPTYPE="PERIPHERAL" IS_ENABLE="1" MODCLASS="MEMORY_CNTLR" MODTYPE="axi_quad_spi" VLNV="xilinx.com:ip:axi_quad_spi:3.2">
<DOCUMENTS>
<DOCUMENT SOURCE="http://www.xilinx.com/cgi-bin/docs/ipdoc?c=axi_quad_spi;v=v3_2;d=pg153-axi-quad-spi.pdf"/>
</DOCUMENTS>
<ADDRESSBLOCKS>
<ADDRESSBLOCK ACCESS="read-write" INTERFACE="aximm" NAME="MEM0" RANGE="4096" USAGE="register">
<REGISTERS>
<REGISTER NAME="SRR">
<PROPERTY NAME="DESCRIPTION" VALUE="Software Reset Register"/>
<PROPERTY NAME="ADDRESS_OFFSET" VALUE="0x40"/>
<PROPERTY NAME="SIZE" VALUE="32"/>
<PROPERTY NAME="ACCESS" VALUE="write-only"/>
<PROPERTY NAME="IS_ENABLED" VALUE="true"/>
<PROPERTY NAME="RESET_VALUE" VALUE="0x0"/>
<FIELDS>
<FIELD NAME="Reset">
<PROPERTY NAME="DESCRIPTION" VALUE="The only allowed operation on this register is a write of 0x0000000a, which resets the AXI Quad SPI core.
"/>
<PROPERTY NAME="ADDRESS_OFFSET" VALUE="0"/>
...
check in python
# addrblock.get("INTERFACE") = "aximm"
# core.ports.keys() = dict_keys(['SPI_0', 'AXI_FULL', 'ext_spi_clk', 's_axi4_aclk', 's_axi4_aresetn', 'ip2intc_irpt'])
# Line 482
_port_available = False
_portname = ""
if addrblock.get("INTERFACE").lower() in core.ports:
_port_available = True
_portname = addrblock.get("INTERFACE").lower()
elif addrblock.get("INTERFACE").upper() in core.ports:
_port_available = True
_portname = addrblock.get("INTERFACE").upper()
elif addrblock.get("INTERFACE") in core.ports:
_port_available = True
_portname = addrblock.get("INTERFACE")
In hwh_frontend.py(line 485ff) there is a check, tries to map the "INTERFACE" to a portname.
If there is a AXI_Full port, the
INTERFACEproperty will be "aximm" which does not match toAXI_FULL! therefore the variable_port_availablewill not be set toTrue.part of hwh-File:
check in python