Skip to content

Commit cbe5709

Browse files
committed
cores/i2c/stream: create i2c stream description
1 parent 94fe8ad commit cbe5709

File tree

2 files changed

+11
-18
lines changed

2 files changed

+11
-18
lines changed

lambdalib/cores/i2c/stream.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,15 @@
1010
"I2CStream",
1111
"I2CWriterStream",
1212
"I2CRegStream",
13+
"i2c_stream_description",
1314
"i2c_writer_description",
1415
]
1516

1617

18+
i2c_stream_description = [
19+
("r_wn", 1),
20+
("data", 8),
21+
]
1722
i2c_writer_description = [
1823
("data", 8),
1924
]
@@ -108,11 +113,8 @@ def __init__(self, pins, period_cyc, **kwargs):
108113
self.period_cyc = period_cyc
109114
self.kwargs = kwargs
110115

111-
self.error = Signal()
112-
self.sink = stream.Endpoint([
113-
("r_wn", 1),
114-
("data", 8),
115-
])
116+
self.error = Signal()
117+
self.sink = stream.Endpoint(i2c_stream_description)
116118
self.source = stream.Endpoint([
117119
("data", 8),
118120
])

lambdalib/cores/lcd/ssd1306.py

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
from ...interface import stream
66
from ...interface.stream_utils import *
77
from ..mem.stream import *
8+
from ..i2c.stream import *
89

910

1011
__all__ = ["SSD1306"]
@@ -43,10 +44,7 @@ def __init__(self):
4344
("d_cn", 1),
4445
("data", 8),
4546
])
46-
self.source = stream.Endpoint([
47-
("r_wn", 1),
48-
("data", 8),
49-
])
47+
self.source = stream.Endpoint(i2c_stream_description)
5048

5149
def elaborate(self, platform):
5250
sink = self.sink
@@ -132,15 +130,8 @@ def __init__(self, width, height, por_init=True):
132130
self.reset = Signal()
133131
self.ready = Signal()
134132

135-
self.sink = stream.Endpoint([
136-
("data", 8),
137-
])
138-
# I2CStream interface
139-
self.source = stream.Endpoint([
140-
("r_wn", 1),
141-
("data", 8),
142-
])
143-
self.error = Signal()
133+
self.sink = stream.Endpoint([("data", 8)])
134+
self.source = stream.Endpoint(i2c_stream_description)
144135

145136
def elaborate(self, platform):
146137
sink = self.sink

0 commit comments

Comments
 (0)