aboutsummaryrefslogtreecommitdiff
path: root/nmigen_boards/resources
diff options
context:
space:
mode:
authorS.J.R. van Schaik <stephan@synkhronix.com>2021-05-31 04:51:32 -0400
committerGitHub <noreply@github.com>2021-05-31 08:51:32 +0000
commit08b1b955b1fba1f776ff233a23eb98526a8d0c39 (patch)
tree34510113a8c59794c1da21bf9ea5346d76cef436 /nmigen_boards/resources
parente8611d433df8c2e4a0206c1d80faa2a831ca8da0 (diff)
[breaking-change] Factor out VGAResource.
Diffstat (limited to 'nmigen_boards/resources')
-rw-r--r--nmigen_boards/resources/display.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/nmigen_boards/resources/display.py b/nmigen_boards/resources/display.py
index f145119..4255db8 100644
--- a/nmigen_boards/resources/display.py
+++ b/nmigen_boards/resources/display.py
@@ -1,7 +1,7 @@
from nmigen.build import *
-__all__ = ["Display7SegResource"]
+__all__ = ["Display7SegResource", "VGAResource"]
def Display7SegResource(*args, a, b, c, d, e, f, g, dp=None, invert=False,
@@ -19,3 +19,18 @@ def Display7SegResource(*args, a, b, c, d, e, f, g, dp=None, invert=False,
if attrs is not None:
ios.append(attrs)
return Resource.family(*args, default_name="display_7seg", ios=ios)
+
+
+def VGAResource(*args, r, g, b, vs, hs, invert_sync=False, conn=None, attrs=None):
+ ios = []
+
+ ios.append(Subsignal("r", Pins(r, dir="o", conn=conn)))
+ ios.append(Subsignal("g", Pins(g, dir="o", conn=conn)))
+ ios.append(Subsignal("b", Pins(b, dir="o", conn=conn)))
+ ios.append(Subsignal("hs", Pins(hs, dir="o", invert=invert_sync, conn=conn, assert_width=1)))
+ ios.append(Subsignal("vs", Pins(vs, dir="o", invert=invert_sync, conn=conn, assert_width=1)))
+
+ if attrs is not None:
+ ios.append(attrs)
+
+ return Resource.family(*args, default_name="vga", ios=ios)