@Override 
	public DTNode toDTNode(BoardInfo bi, Connection conn)
	{
		int fifo_width = 1;
		Parameter param = getParamByName(EMBSW_CMACRO+".FIFO_WIDTH");
		if (param != null) {
			fifo_width = Integer.parseInt(param.getValue())/8;
		}
		
		doFifoDepth("rx-fifo-depth", fifo_width);
		doFifoDepth("tx-fifo-depth", fifo_width);

		DTNode node = super.toDTNode(bi, conn);		
		
		param = getParamByName("enable_sup_addr");
		if ((param != null) && (param.getValueAsBoolean())) {
			node.addProperty(new DTProperty("altr,has-supplementary-unicast"));	
			node.addProperty(new DTProperty("altr,enable-sup-addr",1));
		} else {
			node.addProperty(new DTProperty("altr,enable-sup-addr",0));
		}
		
		param = getParamByName("ena_hash");
		if ((param != null) && (param.getValueAsBoolean())) {
			node.addProperty(new DTProperty("altr,has-hash-multicast-filter"));	
			node.addProperty(new DTProperty("altr,enable-hash",1));
		} else {
			node.addProperty(new DTProperty("altr,enable-hash",0));
		}
		

		BICEthernet be = bi.getEthernetForChip(getInstanceName());
		
		if(be.getPhyID()!=null)
		{
			node.addProperty(new DTProperty("phy-addr", Long.valueOf(be.getPhyID())));
			/* the following binding is supported by old sgdma driver and v1 of msgdma */
			node.addProperty(new DTProperty("ALTR,phy-addr", Long.valueOf(be.getPhyID())));
		}
		
		if (dmaType == TSEDmaType.SGDMA) {
			toSGDMANode(node, be);
		}		
		param = getParamByName("useMDIO");
		
		if ((param != null) && param.getValueAsBoolean()){
			DTNode mdioNode = new DTNode("mdio", getInstanceName()+"_mdio");
			mdioNode.addProperty(new DTProperty("compatible", new DTPropStringVal( "altr,tse-mdio")));
			mdioNode.addProperty(new DTProperty("#address-cells", new DTPropNumVal(1)));
			mdioNode.addProperty(new DTProperty("#size-cells", new DTPropNumVal(0)));
			
			node.addChild(mdioNode);
		}
		
		return node;
	}