rename sd to mmc
[pinmux.git] / src / bsv / peripheral_gen / sdmmc.py
1 from bsv.peripheral_gen.base import PBase
2
3
4 class sdmmc(PBase):
5
6 def slowimport(self):
7 return "import sdcard_dummy :: *;"
8
9 def num_axi_regs32(self):
10 return 13
11
12 def mkslow_peripheral(self):
13 return "Ifc_sdcard_dummy mmc{0} <- mksdcard_dummy();"
14
15 def _mk_connection(self, name=None, count=0):
16 return "mmc{0}.slave"
17
18 def pinname_out(self, pname):
19 if pname in ['cmd', 'clk']:
20 return pname
21 return ''
22
23 def _mk_pincon(self, name, count, typ):
24 assert typ == 'slow', "TODO: mkConnection for fast"
25 ret = [PBase._mk_pincon(self, name, count, typ)]
26 # special-case for gpio in, store in a temporary vector
27 plen = len(self.peripheral.pinspecs)
28 template = "mkConnection({0}.{1},\n\t\t\t{2}.{1});"
29 sname = self.peripheral.iname().format(count)
30 name = self.get_iname(count)
31 ps = "pinmux.peripheral_side.%s" % sname
32 n = "{0}".format(name)
33 for ptype in ['out', 'out_en', 'in']:
34 ret.append(template.format(ps, ptype, n))
35 return '\n'.join(ret)