+ ret = devm_request_irq(&pdev->dev, dev->irq, msm_slim_interrupt,Are you sure this is safe and we don't deallocate things the interrupt
+ IRQF_TRIGGER_HIGH, "msm_slim_irq", dev);
+ if (ret) {
+ dev_err(&pdev->dev, "request IRQ failed\n");
+ goto err_request_irq_failed;
+ }
handler uses before we disable the interrupt?
register_controller also allocates controller's TX/RX ring buffers. These rings are needed when devices start+ /* Register with framework before enabling frame, clock */Should we have a devm_ version of slim_register_controller()? I'd also
+ ret = slim_register_controller(&dev->ctrl);
+ if (ret) {
+ dev_err(dev->dev, "error adding controller\n");
+ goto err_ctrl_failed;
+ }
expect this to be the last thing we do in probe, things may start using
the device before we've finished initializing it.