uart/liteeth: only import the phy we are going to use (UARTPHYSim cannot be imported...
authorFlorent Kermarrec <florent@enjoy-digital.fr>
Thu, 12 Mar 2015 15:57:38 +0000 (16:57 +0100)
committerFlorent Kermarrec <florent@enjoy-digital.fr>
Thu, 12 Mar 2015 15:57:38 +0000 (16:57 +0100)
misoclib/com/liteeth/phy/__init__.py
misoclib/com/uart/phy/__init__.py

index 8a96d7fb324d0dc6cc30ca02b7d33cca89ab46c5..a1800d0124fab205d76ccd32d062d2d6e55d45bc 100644 (file)
@@ -1,17 +1,16 @@
 from misoclib.com.liteeth.common import *
 from misoclib.com.liteeth.generic import *
 
-from misoclib.com.liteeth.phy.sim import LiteEthPHYSim
-from misoclib.com.liteeth.phy.mii import LiteEthPHYMII
-from misoclib.com.liteeth.phy.gmii import LiteEthPHYGMII
-
 def LiteEthPHY(clock_pads, pads, **kwargs):
        # Autodetect PHY
        if hasattr(pads, "source_stb"):
+               from misoclib.com.liteeth.phy.sim import LiteEthPHYSim
                return LiteEthPHYSim(pads)
        elif hasattr(clock_pads, "gtx") and flen(pads.tx_data) == 8:
+               from misoclib.com.liteeth.phy.gmii import LiteEthPHYGMII
                return LiteEthPHYGMII(clock_pads, pads, **kwargs)
        elif flen(pads.tx_data) == 4:
+               from misoclib.com.liteeth.phy.mii import LiteEthPHYMII
                return LiteEthPHYMII(clock_pads, pads, **kwargs)
        else:
                raise ValueError("Unable to autodetect PHY from platform file, use direct instanciation")
index b9ecab8e3dbfd4c34df38829fe764fed78012c8b..171cb4236f6912377403b683a8783c82d0e2a6de 100644 (file)
@@ -1,12 +1,11 @@
 from misoclib.com.liteeth.common import *
 from misoclib.com.liteeth.generic import *
 
-from misoclib.com.uart.phy.sim import UARTPHYSim
-from misoclib.com.uart.phy.serial import UARTPHYSerial
-
 def UARTPHY(pads, *args, **kwargs):
        # Autodetect PHY
        if hasattr(pads, "source_stb"):
+               from misoclib.com.uart.phy.sim import UARTPHYSim
                return UARTPHYSim(pads, *args, **kwargs)
        else:
+               from misoclib.com.uart.phy.serial import UARTPHYSerial
                return UARTPHYSerial(pads, *args, **kwargs)