From d276036f24f82fe4e455fe2972ec1bc1a8c0b5ba Mon Sep 17 00:00:00 2001 From: Florent Kermarrec Date: Fri, 20 Mar 2020 09:57:37 +0100 Subject: [PATCH] integration/soc: add add_spi_sdcard method to add SPI mode SDCard support to the SoC. --- litex/soc/integration/soc.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/litex/soc/integration/soc.py b/litex/soc/integration/soc.py index aade79dbb..cf056ae42 100644 --- a/litex/soc/integration/soc.py +++ b/litex/soc/integration/soc.py @@ -13,6 +13,7 @@ from migen import * from litex.soc.cores import cpu from litex.soc.cores.identifier import Identifier from litex.soc.cores.timer import Timer +from litex.soc.cores.spi import SPIMaster from litex.soc.interconnect.csr import * from litex.soc.interconnect import csr_bus @@ -1056,3 +1057,12 @@ class LiteXSoC(SoC): self.crg.cd_sys.clk, phy.crg.cd_eth_rx.clk, phy.crg.cd_eth_tx.clk) + + # Add SPI SDCard ------------------------------------------------------------------------------- + def add_spi_sdcard(self, name="spisdcard", clk_freq=400e3): + pads = self.platform.request(name) + if hasattr(pads, "rst"): + self.comb += pads.rst.eq(0) + spisdcard = SPIMaster(pads, 8, self.sys_clk_freq, 400e3) + setattr(self.submodules, name, spisdcard) + self.add_csr(name)