def generate_code(self, block): block.add_attribute_simple("id", self.__id) block.add_attribute_simple("title", self.get_title()) block.add_attribute_simple("ball", self.__pad.ball) block.add_attribute_simple("row", self.__pad.row) block.add_attribute_simple("col", self.__pad.col) if self.__power: p = block.add_attribute_block(block, "power") p.add_attribute_simple("domain", self.__power.pointer()) p.add_attribute_simple("is_supply", not self.__power.is_consumer) if self.__mux_field: m = block.add_attribute_block(block, "mux") m.add_attribute_simple("functions", Symbol("&pin_mux_%s" % self.__id.lower(), None, None)) m.add_attribute_simple("mux_register", self.__mux_field.get_register().expand_address(), fmt="0x%08x") m.add_attribute_simple("mux_bitmask", self.__mux_field.get_bitmask(), fmt="0x%08x")
def generate_code(self, top): import generator block = top.create_struct(top, 'bga', "bga_%s" % self.get_code_id()) block.add_attribute_simple('id', self.__id) block.add_attribute_simple('num_cols', int(self.__cols)) block.add_attribute_simple('num_rows', int(self.__rows)) block.add_attribute_simple('pins', generator.Symbol('pins_%s' % self.get_code_id(), None, 'pins'))