Call devm_request_irq() before registering the async notifier, as otherwise
it would be possible to use the device before the interrupts could be
delivered to the driver.
Fixes: c2a6a07afe4a ("media: intel-ipu3: cio2: add new MIPI-CSI2 driver")
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
 
        v4l2_async_nf_init(&cio2->notifier, &cio2->v4l2_dev);
 
-       /* Register notifier for subdevices we care */
-       r = cio2_parse_firmware(cio2);
-       if (r)
-               goto fail_clean_notifier;
-
        r = devm_request_irq(dev, pci_dev->irq, cio2_irq, IRQF_SHARED,
                             CIO2_NAME, cio2);
        if (r) {
                goto fail_clean_notifier;
        }
 
+       /* Register notifier for subdevices we care */
+       r = cio2_parse_firmware(cio2);
+       if (r)
+               goto fail_clean_notifier;
+
        pm_runtime_put_noidle(dev);
        pm_runtime_allow(dev);