Skip to content

Commit

Permalink
Merge pull request #4 from mksoc/master
Browse files Browse the repository at this point in the history
Fixed bus removal
  • Loading branch information
Risto97 authored Nov 21, 2023
2 parents 34cc4c0 + 7e69acb commit 1ee34dc
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion src/peakrdl_halcpp/haladdrmap.py
Original file line number Diff line number Diff line change
Expand Up @@ -304,6 +304,8 @@ def __init__(self,
self.mems = self.get_mems()
self.addrmaps = self.get_addrmaps()
self.regfiles = self.get_regfiles()



self.enums = {}

Expand Down Expand Up @@ -335,14 +337,17 @@ def get_regfiles(self) -> 'List[HalRegfile]':
return regfiles

def remove_buses(self):
remove_list = []
for c in self.addrmaps:
c.remove_buses()
if c.is_bus(): # Doesnt have registers or memories, only addrmaps
for subc in c.addrmaps: # Change parent
subc.bus_offset += c.addr_offset
subc.parent = self
self.addrmaps.remove(c)
remove_list.append(c)
self.addrmaps.extend(c.addrmaps) # Steal all addrmaps from a bus

[self.addrmaps.remove(c) for c in remove_list]

def is_bus(self) -> bool:
if len(self.regs) == 0 and len(self.mems) == 0 and len(self.regfiles) == 0:
Expand Down

0 comments on commit 1ee34dc

Please sign in to comment.