diff options
| -rw-r--r-- | drivers/staging/imx-drm/ipuv3-crtc.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/drivers/staging/imx-drm/ipuv3-crtc.c b/drivers/staging/imx-drm/ipuv3-crtc.c index 4b3a019409b5..b028b0d1317b 100644 --- a/drivers/staging/imx-drm/ipuv3-crtc.c +++ b/drivers/staging/imx-drm/ipuv3-crtc.c | |||
| @@ -483,17 +483,6 @@ static int ipu_get_resources(struct ipu_crtc *ipu_crtc, | |||
| 483 | goto err_out; | 483 | goto err_out; |
| 484 | } | 484 | } |
| 485 | 485 | ||
| 486 | ipu_crtc->irq = ipu_idmac_channel_irq(ipu, ipu_crtc->ipu_ch, | ||
| 487 | IPU_IRQ_EOF); | ||
| 488 | ret = devm_request_irq(ipu_crtc->dev, ipu_crtc->irq, ipu_irq_handler, 0, | ||
| 489 | "imx_drm", ipu_crtc); | ||
| 490 | if (ret < 0) { | ||
| 491 | dev_err(ipu_crtc->dev, "irq request failed with %d.\n", ret); | ||
| 492 | goto err_out; | ||
| 493 | } | ||
| 494 | |||
| 495 | disable_irq(ipu_crtc->irq); | ||
| 496 | |||
| 497 | return 0; | 486 | return 0; |
| 498 | err_out: | 487 | err_out: |
| 499 | ipu_put_resources(ipu_crtc); | 488 | ipu_put_resources(ipu_crtc); |
| @@ -504,6 +493,7 @@ err_out: | |||
| 504 | static int ipu_crtc_init(struct ipu_crtc *ipu_crtc, | 493 | static int ipu_crtc_init(struct ipu_crtc *ipu_crtc, |
| 505 | struct ipu_client_platformdata *pdata) | 494 | struct ipu_client_platformdata *pdata) |
| 506 | { | 495 | { |
| 496 | struct ipu_soc *ipu = dev_get_drvdata(ipu_crtc->dev->parent); | ||
| 507 | int ret; | 497 | int ret; |
| 508 | 498 | ||
| 509 | ret = ipu_get_resources(ipu_crtc, pdata); | 499 | ret = ipu_get_resources(ipu_crtc, pdata); |
| @@ -522,6 +512,17 @@ static int ipu_crtc_init(struct ipu_crtc *ipu_crtc, | |||
| 522 | goto err_put_resources; | 512 | goto err_put_resources; |
| 523 | } | 513 | } |
| 524 | 514 | ||
| 515 | ipu_crtc->irq = ipu_idmac_channel_irq(ipu, ipu_crtc->ipu_ch, | ||
| 516 | IPU_IRQ_EOF); | ||
| 517 | ret = devm_request_irq(ipu_crtc->dev, ipu_crtc->irq, ipu_irq_handler, 0, | ||
| 518 | "imx_drm", ipu_crtc); | ||
| 519 | if (ret < 0) { | ||
| 520 | dev_err(ipu_crtc->dev, "irq request failed with %d.\n", ret); | ||
| 521 | goto err_put_resources; | ||
| 522 | } | ||
| 523 | |||
| 524 | disable_irq(ipu_crtc->irq); | ||
| 525 | |||
| 525 | return 0; | 526 | return 0; |
| 526 | 527 | ||
| 527 | err_put_resources: | 528 | err_put_resources: |
