{
        struct musb *musb = controller->musb;
        struct device *dev = musb->controller;
-       struct device_node *np = dev->of_node;
+       struct device_node *np = dev->parent->of_node;
        struct cppi41_dma_channel *cppi41_channel;
        int count;
        int i;
                musb_dma->status = MUSB_DMA_STATUS_FREE;
                musb_dma->max_len = SZ_4M;
 
-               dc = dma_request_slave_channel(dev, str);
+               dc = dma_request_slave_channel(dev->parent, str);
                if (!dc) {
                        dev_err(dev, "Failed to request %s.\n", str);
                        ret = -EPROBE_DEFER;
        struct cppi41_dma_controller *controller;
        int ret = 0;
 
-       if (!musb->controller->of_node) {
+       if (!musb->controller->parent->of_node) {
                dev_err(musb->controller, "Need DT for the DMA engine.\n");
                return NULL;
        }