From c1c01226849bf590c9777d49a6ec2b72656f305c Mon Sep 17 00:00:00 2001 From: David Lenfesty Date: Sat, 17 Jun 2023 16:33:03 +0000 Subject: [PATCH] gw: add I2C bitbang module --- gateware/litex_main.py | 5 +++++ gateware/platforms/sonar.py | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/gateware/litex_main.py b/gateware/litex_main.py index 953d7a3..cf6d00f 100755 --- a/gateware/litex_main.py +++ b/gateware/litex_main.py @@ -19,6 +19,7 @@ from litex.soc.integration.soc_core import * from litex.soc.integration.builder import * from litex.soc.cores.video import VideoHDMIPHY from litex.soc.cores.led import LedChaser +from litex.soc.cores.bitbang import I2CMaster from litex.soc.interconnect.csr import * @@ -149,6 +150,10 @@ class BaseSoC(SoCCore): sampler_region = SoCRegion(origin=None, size=0x0040_0000, cached=False) self.bus.add_slave(name="sampler", slave=self.sampler_controller.bus, region=sampler_region) + # Add I2C + i2c = I2CMaster(platform.request("i2c")) + self.add_module(name="i2c", module=i2c) + # Build -------------------------------------------------------------------------------------------- def main(): diff --git a/gateware/platforms/sonar.py b/gateware/platforms/sonar.py index c717479..7ed9f91 100644 --- a/gateware/platforms/sonar.py +++ b/gateware/platforms/sonar.py @@ -40,7 +40,11 @@ _io_v7_0 = [ # Colorlight i9 documented by @smunaut # TODO the other serial ports - # TODO I2C + ("i2c", 0, + Subsignal("sda", Pins("D16")), + Subsignal("scl", Pins("F5")), + IOStandard("LVCMOS33") + ), # SPIFlash (GD25Q16CSIG) ("spiflash", 0,