diff options
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2013-05-22 06:19:04 -0400 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2013-08-29 09:21:53 -0400 |
commit | 09d2e7cdebd53b7572380a215008b334ff6321a5 (patch) | |
tree | f284c4f721ad6c0df7ed575724ffdc34ccf0a46b | |
parent | cd6e915b360c26a71aaa634ef6735658b05fe89d (diff) |
OMAPDSS: VENC: remove code related to old panel model
Now that the old panel drivers have been removed, we can remove the
old-model API and related code from the DSS encoder drivers.
This patch removes the code from the VENC driver.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: Archit Taneja <archit@ti.com>
-rw-r--r-- | drivers/video/omap2/dss/Makefile | 2 | ||||
-rw-r--r-- | drivers/video/omap2/dss/dss.h | 14 | ||||
-rw-r--r-- | drivers/video/omap2/dss/venc.c | 118 |
3 files changed, 17 insertions, 117 deletions
diff --git a/drivers/video/omap2/dss/Makefile b/drivers/video/omap2/dss/Makefile index e022ed103804..94832eb06a3d 100644 --- a/drivers/video/omap2/dss/Makefile +++ b/drivers/video/omap2/dss/Makefile | |||
@@ -7,7 +7,7 @@ omapdss-y += manager.o manager-sysfs.o overlay.o overlay-sysfs.o apply.o \ | |||
7 | dispc-compat.o display-sysfs.o | 7 | dispc-compat.o display-sysfs.o |
8 | omapdss-$(CONFIG_OMAP2_DSS_DPI) += dpi.o | 8 | omapdss-$(CONFIG_OMAP2_DSS_DPI) += dpi.o |
9 | omapdss-$(CONFIG_OMAP2_DSS_RFBI) += rfbi.o | 9 | omapdss-$(CONFIG_OMAP2_DSS_RFBI) += rfbi.o |
10 | omapdss-$(CONFIG_OMAP2_DSS_VENC) += venc.o venc_panel.o | 10 | omapdss-$(CONFIG_OMAP2_DSS_VENC) += venc.o |
11 | omapdss-$(CONFIG_OMAP2_DSS_SDI) += sdi.o | 11 | omapdss-$(CONFIG_OMAP2_DSS_SDI) += sdi.o |
12 | omapdss-$(CONFIG_OMAP2_DSS_DSI) += dsi.o | 12 | omapdss-$(CONFIG_OMAP2_DSS_DSI) += dsi.o |
13 | omapdss-$(CONFIG_OMAP4_DSS_HDMI) += hdmi.o ti_hdmi_4xxx_ip.o | 13 | omapdss-$(CONFIG_OMAP4_DSS_HDMI) += hdmi.o ti_hdmi_4xxx_ip.o |
diff --git a/drivers/video/omap2/dss/dss.h b/drivers/video/omap2/dss/dss.h index 6142885751e0..68dd27f21a25 100644 --- a/drivers/video/omap2/dss/dss.h +++ b/drivers/video/omap2/dss/dss.h | |||
@@ -434,20 +434,6 @@ int dispc_wb_setup(const struct omap_dss_writeback_info *wi, | |||
434 | /* VENC */ | 434 | /* VENC */ |
435 | int venc_init_platform_driver(void) __init; | 435 | int venc_init_platform_driver(void) __init; |
436 | void venc_uninit_platform_driver(void) __exit; | 436 | void venc_uninit_platform_driver(void) __exit; |
437 | int omapdss_venc_display_enable(struct omap_dss_device *dssdev); | ||
438 | void omapdss_venc_display_disable(struct omap_dss_device *dssdev); | ||
439 | void omapdss_venc_set_timings(struct omap_dss_device *dssdev, | ||
440 | struct omap_video_timings *timings); | ||
441 | int omapdss_venc_check_timings(struct omap_dss_device *dssdev, | ||
442 | struct omap_video_timings *timings); | ||
443 | u32 omapdss_venc_get_wss(struct omap_dss_device *dssdev); | ||
444 | int omapdss_venc_set_wss(struct omap_dss_device *dssdev, u32 wss); | ||
445 | void omapdss_venc_set_type(struct omap_dss_device *dssdev, | ||
446 | enum omap_dss_venc_type type); | ||
447 | void omapdss_venc_invert_vid_out_polarity(struct omap_dss_device *dssdev, | ||
448 | bool invert_polarity); | ||
449 | int venc_panel_init(void); | ||
450 | void venc_panel_exit(void); | ||
451 | 437 | ||
452 | /* HDMI */ | 438 | /* HDMI */ |
453 | int hdmi_init_platform_driver(void) __init; | 439 | int hdmi_init_platform_driver(void) __init; |
diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c index 496a106fe823..0d8ccdeb9639 100644 --- a/drivers/video/omap2/dss/venc.c +++ b/drivers/video/omap2/dss/venc.c | |||
@@ -492,7 +492,7 @@ static void venc_power_off(struct omap_dss_device *dssdev) | |||
492 | venc_runtime_put(); | 492 | venc_runtime_put(); |
493 | } | 493 | } |
494 | 494 | ||
495 | int omapdss_venc_display_enable(struct omap_dss_device *dssdev) | 495 | static int venc_display_enable(struct omap_dss_device *dssdev) |
496 | { | 496 | { |
497 | struct omap_dss_device *out = &venc.output; | 497 | struct omap_dss_device *out = &venc.output; |
498 | int r; | 498 | int r; |
@@ -521,7 +521,7 @@ err0: | |||
521 | return r; | 521 | return r; |
522 | } | 522 | } |
523 | 523 | ||
524 | void omapdss_venc_display_disable(struct omap_dss_device *dssdev) | 524 | static void venc_display_disable(struct omap_dss_device *dssdev) |
525 | { | 525 | { |
526 | DSSDBG("venc_display_disable\n"); | 526 | DSSDBG("venc_display_disable\n"); |
527 | 527 | ||
@@ -532,7 +532,7 @@ void omapdss_venc_display_disable(struct omap_dss_device *dssdev) | |||
532 | mutex_unlock(&venc.venc_lock); | 532 | mutex_unlock(&venc.venc_lock); |
533 | } | 533 | } |
534 | 534 | ||
535 | void omapdss_venc_set_timings(struct omap_dss_device *dssdev, | 535 | static void venc_set_timings(struct omap_dss_device *dssdev, |
536 | struct omap_video_timings *timings) | 536 | struct omap_video_timings *timings) |
537 | { | 537 | { |
538 | DSSDBG("venc_set_timings\n"); | 538 | DSSDBG("venc_set_timings\n"); |
@@ -550,7 +550,7 @@ void omapdss_venc_set_timings(struct omap_dss_device *dssdev, | |||
550 | mutex_unlock(&venc.venc_lock); | 550 | mutex_unlock(&venc.venc_lock); |
551 | } | 551 | } |
552 | 552 | ||
553 | int omapdss_venc_check_timings(struct omap_dss_device *dssdev, | 553 | static int venc_check_timings(struct omap_dss_device *dssdev, |
554 | struct omap_video_timings *timings) | 554 | struct omap_video_timings *timings) |
555 | { | 555 | { |
556 | DSSDBG("venc_check_timings\n"); | 556 | DSSDBG("venc_check_timings\n"); |
@@ -574,13 +574,13 @@ static void venc_get_timings(struct omap_dss_device *dssdev, | |||
574 | mutex_unlock(&venc.venc_lock); | 574 | mutex_unlock(&venc.venc_lock); |
575 | } | 575 | } |
576 | 576 | ||
577 | u32 omapdss_venc_get_wss(struct omap_dss_device *dssdev) | 577 | static u32 venc_get_wss(struct omap_dss_device *dssdev) |
578 | { | 578 | { |
579 | /* Invert due to VENC_L21_WC_CTL:INV=1 */ | 579 | /* Invert due to VENC_L21_WC_CTL:INV=1 */ |
580 | return (venc.wss_data >> 8) ^ 0xfffff; | 580 | return (venc.wss_data >> 8) ^ 0xfffff; |
581 | } | 581 | } |
582 | 582 | ||
583 | int omapdss_venc_set_wss(struct omap_dss_device *dssdev, u32 wss) | 583 | static int venc_set_wss(struct omap_dss_device *dssdev, u32 wss) |
584 | { | 584 | { |
585 | const struct venc_config *config; | 585 | const struct venc_config *config; |
586 | int r; | 586 | int r; |
@@ -609,7 +609,7 @@ err: | |||
609 | return r; | 609 | return r; |
610 | } | 610 | } |
611 | 611 | ||
612 | void omapdss_venc_set_type(struct omap_dss_device *dssdev, | 612 | static void venc_set_type(struct omap_dss_device *dssdev, |
613 | enum omap_dss_venc_type type) | 613 | enum omap_dss_venc_type type) |
614 | { | 614 | { |
615 | mutex_lock(&venc.venc_lock); | 615 | mutex_lock(&venc.venc_lock); |
@@ -619,7 +619,7 @@ void omapdss_venc_set_type(struct omap_dss_device *dssdev, | |||
619 | mutex_unlock(&venc.venc_lock); | 619 | mutex_unlock(&venc.venc_lock); |
620 | } | 620 | } |
621 | 621 | ||
622 | void omapdss_venc_invert_vid_out_polarity(struct omap_dss_device *dssdev, | 622 | static void venc_invert_vid_out_polarity(struct omap_dss_device *dssdev, |
623 | bool invert_polarity) | 623 | bool invert_polarity) |
624 | { | 624 | { |
625 | mutex_lock(&venc.venc_lock); | 625 | mutex_lock(&venc.venc_lock); |
@@ -721,74 +721,6 @@ static int venc_get_clocks(struct platform_device *pdev) | |||
721 | return 0; | 721 | return 0; |
722 | } | 722 | } |
723 | 723 | ||
724 | static struct omap_dss_device *venc_find_dssdev(struct platform_device *pdev) | ||
725 | { | ||
726 | struct omap_dss_board_info *pdata = pdev->dev.platform_data; | ||
727 | const char *def_disp_name = omapdss_get_default_display_name(); | ||
728 | struct omap_dss_device *def_dssdev; | ||
729 | int i; | ||
730 | |||
731 | def_dssdev = NULL; | ||
732 | |||
733 | for (i = 0; i < pdata->num_devices; ++i) { | ||
734 | struct omap_dss_device *dssdev = pdata->devices[i]; | ||
735 | |||
736 | if (dssdev->type != OMAP_DISPLAY_TYPE_VENC) | ||
737 | continue; | ||
738 | |||
739 | if (def_dssdev == NULL) | ||
740 | def_dssdev = dssdev; | ||
741 | |||
742 | if (def_disp_name != NULL && | ||
743 | strcmp(dssdev->name, def_disp_name) == 0) { | ||
744 | def_dssdev = dssdev; | ||
745 | break; | ||
746 | } | ||
747 | } | ||
748 | |||
749 | return def_dssdev; | ||
750 | } | ||
751 | |||
752 | static int venc_probe_pdata(struct platform_device *vencdev) | ||
753 | { | ||
754 | struct omap_dss_device *plat_dssdev; | ||
755 | struct omap_dss_device *dssdev; | ||
756 | int r; | ||
757 | |||
758 | plat_dssdev = venc_find_dssdev(vencdev); | ||
759 | |||
760 | if (!plat_dssdev) | ||
761 | return 0; | ||
762 | |||
763 | r = venc_init_regulator(); | ||
764 | if (r) | ||
765 | return r; | ||
766 | |||
767 | dssdev = dss_alloc_and_init_device(&vencdev->dev); | ||
768 | if (!dssdev) | ||
769 | return -ENOMEM; | ||
770 | |||
771 | dss_copy_device_pdata(dssdev, plat_dssdev); | ||
772 | |||
773 | r = omapdss_output_set_device(&venc.output, dssdev); | ||
774 | if (r) { | ||
775 | DSSERR("failed to connect output to new device: %s\n", | ||
776 | dssdev->name); | ||
777 | dss_put_device(dssdev); | ||
778 | return r; | ||
779 | } | ||
780 | |||
781 | r = dss_add_device(dssdev); | ||
782 | if (r) { | ||
783 | DSSERR("device %s register failed: %d\n", dssdev->name, r); | ||
784 | omapdss_output_unset_device(&venc.output); | ||
785 | dss_put_device(dssdev); | ||
786 | return r; | ||
787 | } | ||
788 | |||
789 | return 0; | ||
790 | } | ||
791 | |||
792 | static int venc_connect(struct omap_dss_device *dssdev, | 724 | static int venc_connect(struct omap_dss_device *dssdev, |
793 | struct omap_dss_device *dst) | 725 | struct omap_dss_device *dst) |
794 | { | 726 | { |
@@ -836,18 +768,18 @@ static const struct omapdss_atv_ops venc_ops = { | |||
836 | .connect = venc_connect, | 768 | .connect = venc_connect, |
837 | .disconnect = venc_disconnect, | 769 | .disconnect = venc_disconnect, |
838 | 770 | ||
839 | .enable = omapdss_venc_display_enable, | 771 | .enable = venc_display_enable, |
840 | .disable = omapdss_venc_display_disable, | 772 | .disable = venc_display_disable, |
841 | 773 | ||
842 | .check_timings = omapdss_venc_check_timings, | 774 | .check_timings = venc_check_timings, |
843 | .set_timings = omapdss_venc_set_timings, | 775 | .set_timings = venc_set_timings, |
844 | .get_timings = venc_get_timings, | 776 | .get_timings = venc_get_timings, |
845 | 777 | ||
846 | .set_type = omapdss_venc_set_type, | 778 | .set_type = venc_set_type, |
847 | .invert_vid_out_polarity = omapdss_venc_invert_vid_out_polarity, | 779 | .invert_vid_out_polarity = venc_invert_vid_out_polarity, |
848 | 780 | ||
849 | .set_wss = omapdss_venc_set_wss, | 781 | .set_wss = venc_set_wss, |
850 | .get_wss = omapdss_venc_get_wss, | 782 | .get_wss = venc_get_wss, |
851 | }; | 783 | }; |
852 | 784 | ||
853 | static void venc_init_output(struct platform_device *pdev) | 785 | static void venc_init_output(struct platform_device *pdev) |
@@ -913,26 +845,12 @@ static int omap_venchw_probe(struct platform_device *pdev) | |||
913 | 845 | ||
914 | venc_runtime_put(); | 846 | venc_runtime_put(); |
915 | 847 | ||
916 | r = venc_panel_init(); | ||
917 | if (r) | ||
918 | goto err_panel_init; | ||
919 | |||
920 | dss_debugfs_create_file("venc", venc_dump_regs); | 848 | dss_debugfs_create_file("venc", venc_dump_regs); |
921 | 849 | ||
922 | venc_init_output(pdev); | 850 | venc_init_output(pdev); |
923 | 851 | ||
924 | if (pdev->dev.platform_data) { | ||
925 | r = venc_probe_pdata(pdev); | ||
926 | if (r) | ||
927 | goto err_probe; | ||
928 | } | ||
929 | |||
930 | return 0; | 852 | return 0; |
931 | 853 | ||
932 | err_probe: | ||
933 | venc_panel_exit(); | ||
934 | venc_uninit_output(pdev); | ||
935 | err_panel_init: | ||
936 | err_runtime_get: | 854 | err_runtime_get: |
937 | pm_runtime_disable(&pdev->dev); | 855 | pm_runtime_disable(&pdev->dev); |
938 | return r; | 856 | return r; |
@@ -940,10 +858,6 @@ err_runtime_get: | |||
940 | 858 | ||
941 | static int __exit omap_venchw_remove(struct platform_device *pdev) | 859 | static int __exit omap_venchw_remove(struct platform_device *pdev) |
942 | { | 860 | { |
943 | dss_unregister_child_devices(&pdev->dev); | ||
944 | |||
945 | venc_panel_exit(); | ||
946 | |||
947 | venc_uninit_output(pdev); | 861 | venc_uninit_output(pdev); |
948 | 862 | ||
949 | pm_runtime_disable(&pdev->dev); | 863 | pm_runtime_disable(&pdev->dev); |