Loading Documentation/devicetree/bindings/fb/mdss-mdp.txt +7 −0 Original line number Diff line number Diff line Loading @@ -325,6 +325,12 @@ Subnode properties: Example: Width = 1920, Height = 1080, BytesPerPixel = 4, Number of frame-buffers reserved = 2. Size = 1920*1080*4*2 = ROUND_1MB(15.8MB) = 16MB. - qcom,mdss-fb-splash-logo-enabled: The boolean entry enables the framebuffer driver to display the splash logo image. It is independent of continuous splash screen feature and has no relation with qcom,cont-splash-enabled entry present in panel configuration. Example: mdss_mdp: qcom,mdss_mdp@fd900000 { Loading Loading @@ -415,6 +421,7 @@ Example: qcom,mdss-mixer-swap; qcom,mdss-fb-split = <480 240> linux,contiguous-region = <&fb_mem>; qcom,mdss-fb-splash-logo-enabled: }; }; drivers/video/msm/mdss/mdss_fb.c +7 −3 Original line number Diff line number Diff line Loading @@ -266,10 +266,14 @@ static ssize_t mdss_fb_get_type(struct device *dev, return ret; } static void mdss_fb_parse_dt_split(struct msm_fb_data_type *mfd) static void mdss_fb_parse_dt(struct msm_fb_data_type *mfd) { u32 data[2]; struct platform_device *pdev = mfd->pdev; mfd->splash_logo_enabled = of_property_read_bool(pdev->dev.of_node, "qcom,mdss-fb-splash-logo-enabled"); if (of_property_read_u32_array(pdev->dev.of_node, "qcom,mdss-fb-split", data, 2)) return; Loading Loading @@ -452,7 +456,7 @@ static int mdss_fb_probe(struct platform_device *pdev) else mfd->mdp_sync_pt_data.threshold = 2; if (mfd->index == 0) { if (mfd->splash_logo_enabled) { mfd->splash_thread = kthread_run(mdss_fb_splash_thread, mfd, "mdss_fb_splash"); if (IS_ERR(mfd->splash_thread)) { Loading Loading @@ -1167,7 +1171,7 @@ static int mdss_fb_register(struct msm_fb_data_type *mfd) mfd->panel_power_on = false; mfd->dcm_state = DCM_UNINIT; mdss_fb_parse_dt_split(mfd); mdss_fb_parse_dt(mfd); if (mdss_fb_alloc_fbmem(mfd)) { pr_err("unable to allocate framebuffer memory\n"); Loading drivers/video/msm/mdss/mdss_fb.h +2 −1 Original line number Diff line number Diff line /* Copyright (c) 2008-2013, The Linux Foundation. All rights reserved. /* Copyright (c) 2008-2014, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -214,6 +214,7 @@ struct msm_fb_data_type { bool shutdown_pending; struct task_struct *splash_thread; bool splash_logo_enabled; struct msm_fb_backup_type msm_fb_backup; struct completion power_set_comp; Loading Loading
Documentation/devicetree/bindings/fb/mdss-mdp.txt +7 −0 Original line number Diff line number Diff line Loading @@ -325,6 +325,12 @@ Subnode properties: Example: Width = 1920, Height = 1080, BytesPerPixel = 4, Number of frame-buffers reserved = 2. Size = 1920*1080*4*2 = ROUND_1MB(15.8MB) = 16MB. - qcom,mdss-fb-splash-logo-enabled: The boolean entry enables the framebuffer driver to display the splash logo image. It is independent of continuous splash screen feature and has no relation with qcom,cont-splash-enabled entry present in panel configuration. Example: mdss_mdp: qcom,mdss_mdp@fd900000 { Loading Loading @@ -415,6 +421,7 @@ Example: qcom,mdss-mixer-swap; qcom,mdss-fb-split = <480 240> linux,contiguous-region = <&fb_mem>; qcom,mdss-fb-splash-logo-enabled: }; };
drivers/video/msm/mdss/mdss_fb.c +7 −3 Original line number Diff line number Diff line Loading @@ -266,10 +266,14 @@ static ssize_t mdss_fb_get_type(struct device *dev, return ret; } static void mdss_fb_parse_dt_split(struct msm_fb_data_type *mfd) static void mdss_fb_parse_dt(struct msm_fb_data_type *mfd) { u32 data[2]; struct platform_device *pdev = mfd->pdev; mfd->splash_logo_enabled = of_property_read_bool(pdev->dev.of_node, "qcom,mdss-fb-splash-logo-enabled"); if (of_property_read_u32_array(pdev->dev.of_node, "qcom,mdss-fb-split", data, 2)) return; Loading Loading @@ -452,7 +456,7 @@ static int mdss_fb_probe(struct platform_device *pdev) else mfd->mdp_sync_pt_data.threshold = 2; if (mfd->index == 0) { if (mfd->splash_logo_enabled) { mfd->splash_thread = kthread_run(mdss_fb_splash_thread, mfd, "mdss_fb_splash"); if (IS_ERR(mfd->splash_thread)) { Loading Loading @@ -1167,7 +1171,7 @@ static int mdss_fb_register(struct msm_fb_data_type *mfd) mfd->panel_power_on = false; mfd->dcm_state = DCM_UNINIT; mdss_fb_parse_dt_split(mfd); mdss_fb_parse_dt(mfd); if (mdss_fb_alloc_fbmem(mfd)) { pr_err("unable to allocate framebuffer memory\n"); Loading
drivers/video/msm/mdss/mdss_fb.h +2 −1 Original line number Diff line number Diff line /* Copyright (c) 2008-2013, The Linux Foundation. All rights reserved. /* Copyright (c) 2008-2014, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -214,6 +214,7 @@ struct msm_fb_data_type { bool shutdown_pending; struct task_struct *splash_thread; bool splash_logo_enabled; struct msm_fb_backup_type msm_fb_backup; struct completion power_set_comp; Loading