def METHOD_NAME(
    self, state, name, pio_addr, size, interrupts=None
):
    node = FdtNode(f"{name}@{int(pio_addr):x}")
    node.append(
        FdtPropertyWords(
            "reg", state.addrCells(pio_addr) + state.sizeCells(size)
        )
    )
    if interrupts:
        if any([i.num < 32 for i in interrupts]):
            raise (
                ("Interrupt number smaller than 32 " + " in PioDevice %s")
                % name
            )
        gic = self._parent.unproxy(self).gic
        node.append(
            FdtPropertyWords(
                "interrupts",
                sum([i.generateFdtProperty(gic) for i in interrupts], []),
            )
        )
    return node