From 338abb4e0c94ae44d394a5eb7cd279554ee17ad6 Mon Sep 17 00:00:00 2001 From: Franck Jullien Date: Wed, 8 Dec 2021 18:10:22 +0100 Subject: [PATCH] efinix: add bank voltage configuration to platforms --- .../efinix_trion_t120_bga576_dev_kit.py | 25 ++++++++++++++++++- .../efinix_trion_t20_bga256_dev_kit.py | 17 ++++++++++++- .../efinix_trion_t20_mipi_dev_kit.py | 17 ++++++++++++- 3 files changed, 56 insertions(+), 3 deletions(-) diff --git a/litex_boards/platforms/efinix_trion_t120_bga576_dev_kit.py b/litex_boards/platforms/efinix_trion_t120_bga576_dev_kit.py index 2a99558..ba076b6 100644 --- a/litex_boards/platforms/efinix_trion_t120_bga576_dev_kit.py +++ b/litex_boards/platforms/efinix_trion_t120_bga576_dev_kit.py @@ -94,6 +94,29 @@ _io = [ ("dram_pll_refclk", 0, Pins("AA8"), IOStandard("3.3_V_LVTTL_/_LVCMOS")), ] +# Bank voltage --------------------------------------------------------------------------------------- + +_bank_info = [ + ("1A", "3.3 V LVTTL / LVCMOS"), + ("1B_1C", "3.3 V LVTTL / LVCMOS"), + ("1D_1E_1F_1G", "3.3 V LVTTL / LVCMOS"), + ("2A", "3.3 V LVTTL / LVCMOS"), + ("2B", "3.3 V LVTTL / LVCMOS"), + ("2C", "3.3 V LVTTL / LVCMOS"), + ("2D", "3.3 V LVTTL / LVCMOS"), + ("2E", "3.3 V LVTTL / LVCMOS"), + ("2F", "3.3 V LVTTL / LVCMOS"), + ("3D_TR_BR", "3.3 V LVTTL / LVCMOS"), + ("4A", "3.3 V LVTTL / LVCMOS"), + ("4B", "3.3 V LVTTL / LVCMOS"), + ("4C", "3.3 V LVTTL / LVCMOS"), + ("4D", "3.3 V LVTTL / LVCMOS"), + ("4E", "3.3 V LVTTL / LVCMOS"), + ("4F", "3.3 V LVTTL / LVCMOS"), + ("BL", "1.2 V"), + ("TL", "1.2 V"), +] + # Connectors --------------------------------------------------------------------------------------- _connectors = [ @@ -127,7 +150,7 @@ class Platform(EfinixPlatform): default_clk_period = 1e9/40e6 def __init__(self): - EfinixPlatform.__init__(self, "T120F576I4", _io, _connectors, toolchain="efinity") + EfinixPlatform.__init__(self, "T120F576I4", _io, _connectors, iobank_info=_bank_info, toolchain="efinity") def create_programmer(self): return EfinixProgrammer() diff --git a/litex_boards/platforms/efinix_trion_t20_bga256_dev_kit.py b/litex_boards/platforms/efinix_trion_t20_bga256_dev_kit.py index 512345e..ab906a4 100644 --- a/litex_boards/platforms/efinix_trion_t20_bga256_dev_kit.py +++ b/litex_boards/platforms/efinix_trion_t20_bga256_dev_kit.py @@ -51,6 +51,21 @@ _io = [ ), ] +# Bank voltage --------------------------------------------------------------------------------------- + +_bank_info = [ + ("1A", "3.3 V LVTTL / LVCMOS"), + ("1B_1C", "3.3 V LVTTL / LVCMOS"), + ("1D_1E", "3.3 V LVTTL / LVCMOS"), + ("3A_3B_3C", "3.3 V LVTTL / LVCMOS"), + ("3D_3E", "3.3 V LVTTL / LVCMOS"), + ("4A", "3.3 V LVTTL / LVCMOS"), + ("4B", "3.3 V LVTTL / LVCMOS"), + ("BR", "1.2 V"), + ("TL", "1.2 V"), + ("TR", "1.2 V"), +] + # Connectors --------------------------------------------------------------------------------------- _connectors = [ @@ -75,7 +90,7 @@ class Platform(EfinixPlatform): default_clk_period = 1e9/50e6 def __init__(self): - EfinixPlatform.__init__(self, "T20F256C4", _io, _connectors, toolchain="efinity") + EfinixPlatform.__init__(self, "T20F256C4", _io, _connectors, iobank_info=_bank_info, toolchain="efinity") def create_programmer(self): return EfinixProgrammer() diff --git a/litex_boards/platforms/efinix_trion_t20_mipi_dev_kit.py b/litex_boards/platforms/efinix_trion_t20_mipi_dev_kit.py index 5b1ab2e..9932b1a 100644 --- a/litex_boards/platforms/efinix_trion_t20_mipi_dev_kit.py +++ b/litex_boards/platforms/efinix_trion_t20_mipi_dev_kit.py @@ -41,6 +41,21 @@ _io = [ ), ] +# Bank voltage --------------------------------------------------------------------------------------- + +_bank_info = [ + ("1A", "3.3 V LVTTL / LVCMOS"), + ("1B_1C_1D", "3.3 V LVTTL / LVCMOS"), + ("1E", "1.8 V"), + ("3A_3B", "3.3 V LVTTL / LVCMOS"), + ("3C_3D_3E", "3.3 V LVTTL / LVCMOS"), + ("4A", "3.3 V LVTTL / LVCMOS"), + ("4B", "3.3 V LVTTL / LVCMOS"), + ("BR", "1.2 V"), + ("TL", "1.2 V"), + ("TR", "1.2 V"), +] + # Connectors --------------------------------------------------------------------------------------- _connectors = [] @@ -52,7 +67,7 @@ class Platform(EfinixPlatform): default_clk_period = 1e9/50e6 def __init__(self): - EfinixPlatform.__init__(self, "T20F169C4", _io, _connectors, toolchain="efinity") + EfinixPlatform.__init__(self, "T20F169C4", _io, _connectors, iobank_info=_bank_info, toolchain="efinity") def create_programmer(self): return EfinixProgrammer()