@@ -192,9 +192,7 @@ static int tilcdc_unload(struct drm_device *dev)
192192 drm_mode_config_cleanup (dev );
193193 drm_vblank_cleanup (dev );
194194
195- pm_runtime_get_sync (dev -> dev );
196195 drm_irq_uninstall (dev );
197- pm_runtime_put_sync (dev -> dev );
198196
199197#ifdef CONFIG_CPU_FREQ
200198 cpufreq_unregister_notifier (& priv -> freq_transition ,
@@ -350,9 +348,7 @@ static int tilcdc_load(struct drm_device *dev, unsigned long flags)
350348 goto fail_external_cleanup ;
351349 }
352350
353- pm_runtime_get_sync (dev -> dev );
354351 ret = drm_irq_install (dev , platform_get_irq (dev -> platformdev , 0 ));
355- pm_runtime_put_sync (dev -> dev );
356352 if (ret < 0 ) {
357353 dev_err (dev -> dev , "failed to install IRQ handler\n" );
358354 goto fail_vblank_cleanup ;
@@ -380,9 +376,7 @@ static int tilcdc_load(struct drm_device *dev, unsigned long flags)
380376 return 0 ;
381377
382378fail_irq_uninstall :
383- pm_runtime_get_sync (dev -> dev );
384379 drm_irq_uninstall (dev );
385- pm_runtime_put_sync (dev -> dev );
386380
387381fail_vblank_cleanup :
388382 drm_vblank_cleanup (dev );
@@ -440,45 +434,6 @@ static irqreturn_t tilcdc_irq(int irq, void *arg)
440434 return tilcdc_crtc_irq (priv -> crtc );
441435}
442436
443- static void tilcdc_irq_preinstall (struct drm_device * dev )
444- {
445- tilcdc_clear_irqstatus (dev , 0xffffffff );
446- }
447-
448- static int tilcdc_irq_postinstall (struct drm_device * dev )
449- {
450- struct tilcdc_drm_private * priv = dev -> dev_private ;
451-
452- /* enable FIFO underflow irq: */
453- if (priv -> rev == 1 ) {
454- tilcdc_set (dev , LCDC_RASTER_CTRL_REG , LCDC_V1_UNDERFLOW_INT_ENA );
455- } else {
456- tilcdc_write (dev , LCDC_INT_ENABLE_SET_REG ,
457- LCDC_V2_UNDERFLOW_INT_ENA |
458- LCDC_V2_END_OF_FRAME0_INT_ENA |
459- LCDC_FRAME_DONE | LCDC_SYNC_LOST );
460- }
461-
462- return 0 ;
463- }
464-
465- static void tilcdc_irq_uninstall (struct drm_device * dev )
466- {
467- struct tilcdc_drm_private * priv = dev -> dev_private ;
468-
469- /* disable irqs that we might have enabled: */
470- if (priv -> rev == 1 ) {
471- tilcdc_clear (dev , LCDC_RASTER_CTRL_REG ,
472- LCDC_V1_UNDERFLOW_INT_ENA | LCDC_V1_PL_INT_ENA );
473- tilcdc_clear (dev , LCDC_DMA_CTRL_REG , LCDC_V1_END_OF_FRAME_INT_ENA );
474- } else {
475- tilcdc_write (dev , LCDC_INT_ENABLE_CLR_REG ,
476- LCDC_V2_UNDERFLOW_INT_ENA | LCDC_V2_PL_INT_ENA |
477- LCDC_V2_END_OF_FRAME0_INT_ENA |
478- LCDC_FRAME_DONE | LCDC_SYNC_LOST );
479- }
480- }
481-
482437static int tilcdc_enable_vblank (struct drm_device * dev , unsigned int pipe )
483438{
484439 return 0 ;
@@ -623,9 +578,6 @@ static struct drm_driver tilcdc_driver = {
623578 .lastclose = tilcdc_lastclose ,
624579 .set_busid = drm_platform_set_busid ,
625580 .irq_handler = tilcdc_irq ,
626- .irq_preinstall = tilcdc_irq_preinstall ,
627- .irq_postinstall = tilcdc_irq_postinstall ,
628- .irq_uninstall = tilcdc_irq_uninstall ,
629581 .get_vblank_counter = drm_vblank_no_hw_counter ,
630582 .enable_vblank = tilcdc_enable_vblank ,
631583 .disable_vblank = tilcdc_disable_vblank ,
0 commit comments