diff --git a/ddbridge/ddbridge-core.c b/ddbridge/ddbridge-core.c index 2a7f886..1e5206c 100644 --- a/ddbridge/ddbridge-core.c +++ b/ddbridge/ddbridge-core.c @@ -498,9 +498,9 @@ static int ddb_redirect(u32 i, u32 p) struct ddb *pdev = ddbs[(p >> 4) & 0x3f]; struct ddb_port *port; - if (!idev->has_dma || !pdev->has_dma) + if (!pdev || !idev) return -EINVAL; - if (!idev || !pdev) + if (!pdev->has_dma || !idev->has_dma) return -EINVAL; port = &pdev->port[p & 0x0f];