Skip to content

Commit f15120b

Browse files
authored
Merge pull request #669 from mmicko/gatemate_spiflash
colognechip_gatemate_evb: SPI flash support
2 parents 68c3811 + 5d80575 commit f15120b

File tree

2 files changed

+17
-8
lines changed

2 files changed

+17
-8
lines changed

litex_boards/platforms/colognechip_gatemate_evb.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,16 @@
3333
# SPIFlash
3434
("spiflash", 0,
3535
Subsignal("cs_n", Pins("IO_WA_A8")),
36-
Subsignal("clk", Pins("IO_WA_B8")),
36+
Subsignal("clk", Pins("IO_WA_B8"), Misc("SLEW=fast")),
3737
Subsignal("miso", Pins("IO_WA_B7")),
3838
Subsignal("mosi", Pins("IO_WA_A7")),
3939
Subsignal("wp", Pins("IO_WA_B6")),
40-
Subsignal("hold", Pins("IO_WA_B6")),
40+
Subsignal("hold", Pins("IO_WA_A6")),
4141
),
4242
("spiflash4x", 0,
4343
Subsignal("cs_n", Pins("IO_WA_A8")),
44-
Subsignal("clk", Pins("IO_WA_B8")),
45-
Subsignal("dq", Pins("IO_WA_B7 IO_WA_A7 IO_WA_B6 IO_WA_B6")),
44+
Subsignal("clk", Pins("IO_WA_B8"), Misc("SLEW=fast")),
45+
Subsignal("dq", Pins("IO_WA_B7 IO_WA_A7 IO_WA_B6 IO_WA_A6")),
4646
),
4747

4848
# HyperRAM

litex_boards/targets/colognechip_gatemate_evb.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ def __init__(self, platform, sys_clk_freq):
5050
class BaseSoC(SoCCore):
5151
def __init__(self, sys_clk_freq=48e6, toolchain="colognechip",
5252
with_led_chaser = True,
53+
with_spi_flash = True,
5354
**kwargs):
5455
platform = colognechip_gatemate_evb.Platform(toolchain)
5556

@@ -63,6 +64,12 @@ def __init__(self, sys_clk_freq=48e6, toolchain="colognechip",
6364
# SoCCore ----------------------------------------------------------------------------------
6465
SoCCore.__init__(self, platform, sys_clk_freq, ident="LiteX SoC on GateMate EVB", **kwargs)
6566

67+
# SPI Flash --------------------------------------------------------------------------------
68+
if with_spi_flash:
69+
from litespi.modules import MX25R6435F
70+
from litespi.opcodes import SpiNorFlashOpCodes as Codes
71+
self.add_spi_flash(mode="4x", module=MX25R6435F(Codes.READ_1_1_1), with_master=False)
72+
6673
# Leds -------------------------------------------------------------------------------------
6774
if with_led_chaser:
6875
self.leds = LedChaser(
@@ -74,13 +81,15 @@ def __init__(self, sys_clk_freq=48e6, toolchain="colognechip",
7481
def main():
7582
from litex.build.parser import LiteXArgumentParser
7683
parser = LiteXArgumentParser(platform=colognechip_gatemate_evb.Platform, description="LiteX SoC on Gatemate EVB")
77-
parser.add_target_argument("--sys-clk-freq", default=24e6, type=float, help="System clock frequency.")
78-
parser.add_target_argument("--flash", action="store_true", help="Flash bitstream.")
84+
parser.add_target_argument("--sys-clk-freq", default=24e6, type=float, help="System clock frequency.")
85+
parser.add_target_argument("--flash", action="store_true", help="Flash bitstream.")
86+
parser.add_target_argument("--with-spi-flash", action="store_true", help="Enable SPI Flash (MMAPed).")
7987
args = parser.parse_args()
8088

8189
soc = BaseSoC(
82-
sys_clk_freq = args.sys_clk_freq,
83-
toolchain = args.toolchain,
90+
sys_clk_freq = args.sys_clk_freq,
91+
toolchain = args.toolchain,
92+
with_spi_flash = args.with_spi_flash,
8493
**parser.soc_argdict)
8594
builder = Builder(soc, **parser.builder_argdict)
8695
if args.build:

0 commit comments

Comments
 (0)