pynq configure VDMA

KeyError                                  Traceback (most recent call last)

in ()
----> 1 vdma0 = cv_ov5640.axi_vdma_0
2 ##vdma1 = cv_ov5640.axi_vdma_1

/usr/local/lib/python3.6/dist-packages/pynq/overlay.py in getattr(self, key)
325 “”"
326 if self.is_loaded():
→ 327 return getattr(self._ip_map, key)
328 else:
329 raise RuntimeError(“Overlay not currently loaded”)

/usr/local/lib/python3.6/dist-packages/pynq/overlay.py in getattr(self, key)
583 elif key in self._description[‘ip’]:
584 ipdescription = self._description[‘ip’][key]
→ 585 driver = ipdescription’driver’
586 setattr(self, key, driver)
587 return driver

/home/xilinx/jupyter_notebooks/pynq_ov5640/dma.py in init(self, description, framecount)
590
591 “”"
→ 592 super().init(description)
593 self.framecount = framecount
594 self.readchannel = AxiVDMA.S2MMChannel(self, self.s2mm_introut)

/usr/local/lib/python3.6/dist-packages/pynq/overlay.py in init(self, description)
515 self._gpio = {}
516 for interrupt, details in self._interrupts.items():
→ 517 setattr(self, interrupt, Interrupt(details[‘fullpath’]))
518 for gpio, entry in self._gpio.items():
519 gpio_number = GPIO.get_gpio_pin(entry[‘index’])

/usr/local/lib/python3.6/dist-packages/pynq/interrupt.py in init(self, pinname)
96 self.number = PL.interrupt_pins[pinname][‘index’]
97 self.parent = weakref.ref(
—> 98 _InterruptController.get_controller(parentname))
99 self.event = asyncio.Event()
100 self.waiting = False

/usr/local/lib/python3.6/dist-packages/pynq/interrupt.py in get_controller(name)
157 if con.name == name:
158 return con
→ 159 ret = _InterruptController(name)
160 _InterruptController._controllers.append(ret)
161 return ret

/usr/local/lib/python3.6/dist-packages/pynq/interrupt.py in init(self, name)
175 “”"
176 self.name = name
→ 177 self.mmio = MMIO(PL.ip_dict[name][‘phys_addr’], 32)
178 self.wait_handles = [ for _ in range(32)]
179 self.event_number = 0

KeyError: ‘’

Do you use AXI Interrupt Controller?VDMA need AXI Interrupt Controller.