Lines Matching refs:self
144 def __init__(self, dtb_fname, include_disabled): argument
145 self._fdt = None
146 self._dtb_fname = dtb_fname
147 self._valid_nodes = None
148 self._include_disabled = include_disabled
149 self._outfile = None
150 self._lines = []
151 self._aliases = {}
153 def setup_output(self, fname): argument
163 self._outfile = sys.stdout
165 self._outfile = open(fname, 'w')
167 def out(self, line): argument
173 self._outfile.write(line)
175 def buf(self, line): argument
181 self._lines.append(line)
183 def get_buf(self): argument
189 lines = self._lines
190 self._lines = []
193 def out_header(self): argument
195 self.out('''/*
203 def get_phandle_argc(self, prop, node_name): argument
224 target = self._fdt.phandle_to_node.get(phandle)
240 def scan_dtb(self): argument
246 self._fdt = fdt.FdtScan(self._dtb_fname)
248 def scan_node(self, root): argument
259 if (not self._include_disabled and not status or
261 self._valid_nodes.append(node)
264 self.scan_node(node)
266 def scan_tree(self): argument
273 self._valid_nodes = []
274 return self.scan_node(self._fdt.GetRoot())
299 def scan_reg_sizes(self): argument
306 for node in self._valid_nodes:
310 na, ns = self.get_num_cells(node)
336 def scan_structs(self): argument
348 for node in self._valid_nodes:
372 for node in self._valid_nodes:
382 self._aliases[alias] = struct_name
386 def scan_phandles(self): argument
397 for node in self._valid_nodes:
402 info = self.get_phandle_argc(prop, node.name)
411 target_node = self._fdt.phandle_to_node[phandle]
416 def generate_structs(self, structs): argument
423 self.out_header()
424 self.out('#include <stdbool.h>\n')
425 self.out('#include <linux/libfdt.h>\n')
429 self.out('struct %s%s {\n' % (STRUCT_PREFIX, name))
432 info = self.get_phandle_argc(prop, structs[name])
436 self.out('\t%s%s[%d]' % (tab_to(2, struct_name),
441 self.out('\t%s%s' % (tab_to(2, ptype),
444 self.out('[%d]' % len(prop.value))
445 self.out(';\n')
446 self.out('};\n')
448 for alias, struct_name in self._aliases.iteritems():
449 self.out('#define %s%s %s%s\n'% (STRUCT_PREFIX, alias,
452 def output_node(self, node): argument
460 self.buf('static struct %s%s %s%s = {\n' %
466 self.buf('\t%s= ' % tab_to(3, '.' + member_name))
470 self.buf('{')
474 info = self.get_phandle_argc(prop, node.name)
481 target_node = self._fdt.phandle_to_node[phandle]
490 self.buf('\n\t\t%s,' % val)
498 self.buf(',\n\t\t')
499 self.buf(', '.join(vals[i:i + 8]))
500 self.buf('}')
502 self.buf(get_value(prop.type, prop.value))
503 self.buf(',\n')
504 self.buf('};\n')
507 self.buf('U_BOOT_DEVICE(%s) = {\n' % var_name)
508 self.buf('\t.name\t\t= "%s",\n' % struct_name)
509 self.buf('\t.platdata\t= &%s%s,\n' % (VAL_PREFIX, var_name))
510 self.buf('\t.platdata_size\t= sizeof(%s%s),\n' % (VAL_PREFIX, var_name))
511 self.buf('};\n')
512 self.buf('\n')
514 self.out(''.join(self.get_buf()))
516 def generate_tables(self): argument
526 self.out_header()
527 self.out('#include <common.h>\n')
528 self.out('#include <dm.h>\n')
529 self.out('#include <dt-structs.h>\n')
530 self.out('\n')
531 nodes_to_output = list(self._valid_nodes)
539 self.output_node(req_node)
541 self.output_node(node)