diff options
Diffstat (limited to 'drivers/video/omap2/dss/rfbi.c')
-rw-r--r-- | drivers/video/omap2/dss/rfbi.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/drivers/video/omap2/dss/rfbi.c b/drivers/video/omap2/dss/rfbi.c index 58da146254ee..4c0a6c97d62b 100644 --- a/drivers/video/omap2/dss/rfbi.c +++ b/drivers/video/omap2/dss/rfbi.c | |||
@@ -930,10 +930,11 @@ int rfbi_init_display(struct omap_dss_device *dssdev) | |||
930 | /* RFBI HW IP initialisation */ | 930 | /* RFBI HW IP initialisation */ |
931 | static int __init omap_rfbihw_probe(struct platform_device *pdev) | 931 | static int __init omap_rfbihw_probe(struct platform_device *pdev) |
932 | { | 932 | { |
933 | struct omap_dss_board_info *pdata = pdev->dev.platform_data; | ||
933 | u32 rev; | 934 | u32 rev; |
934 | struct resource *rfbi_mem; | 935 | struct resource *rfbi_mem; |
935 | struct clk *clk; | 936 | struct clk *clk; |
936 | int r; | 937 | int r, i; |
937 | 938 | ||
938 | rfbi.pdev = pdev; | 939 | rfbi.pdev = pdev; |
939 | 940 | ||
@@ -978,6 +979,18 @@ static int __init omap_rfbihw_probe(struct platform_device *pdev) | |||
978 | 979 | ||
979 | dss_debugfs_create_file("rfbi", rfbi_dump_regs); | 980 | dss_debugfs_create_file("rfbi", rfbi_dump_regs); |
980 | 981 | ||
982 | for (i = 0; i < pdata->num_devices; ++i) { | ||
983 | struct omap_dss_device *dssdev = pdata->devices[i]; | ||
984 | |||
985 | if (dssdev->type != OMAP_DISPLAY_TYPE_DBI) | ||
986 | continue; | ||
987 | |||
988 | r = omap_dss_register_device(dssdev, &pdev->dev, i); | ||
989 | if (r) | ||
990 | DSSERR("device %s register failed: %d\n", | ||
991 | dssdev->name, r); | ||
992 | } | ||
993 | |||
981 | return 0; | 994 | return 0; |
982 | 995 | ||
983 | err_runtime_get: | 996 | err_runtime_get: |
@@ -987,6 +1000,7 @@ err_runtime_get: | |||
987 | 1000 | ||
988 | static int __exit omap_rfbihw_remove(struct platform_device *pdev) | 1001 | static int __exit omap_rfbihw_remove(struct platform_device *pdev) |
989 | { | 1002 | { |
1003 | omap_dss_unregister_child_devices(&pdev->dev); | ||
990 | pm_runtime_disable(&pdev->dev); | 1004 | pm_runtime_disable(&pdev->dev); |
991 | return 0; | 1005 | return 0; |
992 | } | 1006 | } |