def mkslow_peripheral(self, size=0):
print "gpioslow", self.peripheral, dir(self.peripheral)
+ print "gpioslow", self.peripheral.configs
size = len(self.peripheral.pinspecs)
- return "MUX#(%d) mux{0} <- mkmux();\n" % size + \
+ dflt_ = "%s" % ("0" * size * 2) # default if not set in spec
+ dflt = self.peripheral.configs[0].get("muxconfig", dflt_)
+ return "MUX#(%d) mux{0} <- mkmux('b%s);\n" % (size, dflt) + \
"GPIO#(%d) gpio{0} <- mkgpio();" % size
- def mk_connection(self, count, fabricname, typ):
+ def mk_connection(self, name, count, fabricname, typ):
print "GPIO mk_conn", self.name, count
res = []
dname = self.mksuffix(self.name, count)
for i, n in enumerate(['gpio' + dname, 'mux' + dname]):
- res.append(PBase.mk_connection(self, count, fabricname, typ, n))
+ res.append(PBase.mk_connection(self, name, count, fabricname, typ,
+ name_override=n))
return '\n'.join(res)
def _mk_connection(self, name=None, count=0):
return name[3:]
return name[4:]
- def mk_cellconn(self, cellnum, name, count):
+ def mk_cellconn(self, name, count, cellnum):
ret = []
bank = self.mksuffix(name, count)
txt = "pinmux.mux_lines.cell{0}_mux(mux{1}.mux_config.mux[{2}]);"
def pinname_outen(self, pname):
return "func.gpio_out_en[{0}]".format(pname[1:])
- def mk_pincon(self, name, count):
+ def _mk_pincon(self, name, count, typ):
#ret = [PBase.mk_pincon(self, name, count)]
# special-case for gpio in, store in a temporary vector
+ assert typ == 'slow'
ret = []
plen = len(self.peripheral.pinspecs)
template = "mkConnection({0}.{1},\n\t\t\t{2}_{1});"