高通平臺LCD的開啟和關閉流程
開機的時候 SurfaceFlinger open msm_fb device
[ 9.468484] mdp4_overlay_pipe_alloc: pipe=c07f7830 ndx=1 num=0 share=0 cnt=0 剛開機的時候 sl open device
[ 9.472143] qlay: lcdc on task name SurfaceFlinger
[ 9.479310] [<c0046958>] (unwind_backtrace+0x0/0x164) from [<c028b0dc>] (lcdc_on+0x34/0x124)
[ 9.487521] [<c028b0dc>] (lcdc_on+0x34/0x124) from [<c028b204>] (panel_next_on+0x38/0x44)
[ 9.495607] [<c028b204>] (panel_next_on+0x38/0x44) from [<c02879a8>] (mdp_lcdc_on+0x340/0x3ac)
[ 9.504466] [<c02879a8>] (mdp_lcdc_on+0x340/0x3ac) from [<c027e928>] (msm_fb_blank_sub+0x74/0xcc)
[ 9.513053] [<c027e928>] (msm_fb_blank_sub+0x74/0xcc) from [<c027f548>] (msm_fb_open+0x54/0x88)
[ 9.521931] [<c027f548>] (msm_fb_open+0x54/0x88) from [<c0278948>] (fb_open+0x108/0x140)
[ 9.529903] [<c0278948>] (fb_open+0x108/0x140) from [<c0133ea8>] (chrdev_open+0x198/0x1b8)
[ 9.538302] [<c0133ea8>] (chrdev_open+0x198/0x1b8) from [<c012fbac>] (__dentry_open+0x18c/0x2a8)
[ 9.546909] [<c012fbac>] (__dentry_open+0x18c/0x2a8) from [<c012fd84>] (nameidata_to_filp+0x3c/0x50)
[ 9.561855] [<c012fd84>] (nameidata_to_filp+0x3c/0x50) from [<c013acec>] (do_last+0x4cc/0x610)
[ 9.576343] [<c013acec>] (do_last+0x4cc/0x610) from [<c013c894>] (do_filp_open+0x17c/0x4fc)
[ 9.590589] [<c013c894>] (do_filp_open+0x17c/0x4fc) from [<c012f944>] (do_sys_open+0x58/0x10c)
[ 9.605077] [<c012f944>] (do_sys_open+0x58/0x10c) from [<c0040140>] (ret_fast_syscall+0x0/0x30)
========
開機一段時間後,按了power key,屏滅掉
ScreenOffThread 呼叫介面
[ 40.818817] qlay: request_suspend_state ScreenOffThread
[ 40.823919] lm3535_backlight_control: intensive 2 on:1
[ 40.829491] request_suspend_state: sleep (0->3) at 40750511263 (1970-01-02 00:00:31.486817926 UTC)
[ 40.838348] qlay: lightup suspend
[ 40.841357] lcdc_samsung_panel_set_backlight: backlight bl_level 0x0
[ 40.847635] lm3535_backlight_control: intensive 2 on:0
[ 40.897916] CPUFREQ: Per core ondemand sysfs interface is deprecated - sampling_rate
[ 41.029041] qlay: lcdc_off task suspend
[ 41.029088] [<c0046958>] (unwind_backtrace+0x0/0x164) from [<c028b024>] (lcdc_off+0x2c/0xb0)
[ 41.040211] [<c028b024>] (lcdc_off+0x2c/0xb0) from [<c028b24c>] (panel_next_off+0x3c/0x48)
[ 41.048595] [<c028b24c>] (panel_next_off+0x3c/0x48) from [<c0287648>] (mdp_lcdc_off+0x60/0x80)
[ 41.057224] [<c0287648>] (mdp_lcdc_off+0x60/0x80) from [<c027e960>] (msm_fb_blank_sub+0xac/0xcc)
[ 41.065812] [<c027e960>] (msm_fb_blank_sub+0xac/0xcc) from [<c027e9c8>] (msm_fb_suspend_sub+0x48/0xe4)
[ 41.075275] [<c027e9c8>] (msm_fb_suspend_sub+0x48/0xe4) from [<c00e8cc0>] (early_suspend+0xa0/0x12c)
[ 41.084219] [<c00e8cc0>] (early_suspend+0xa0/0x12c) from [<c00cb158>] (worker_thread+0x160/0x1ec)
[ 41.093094] [<c00cb158>] (worker_thread+0x160/0x1ec) from [<c00cecbc>] (kthread+0x78/0x80)
[ 41.102810] [<c00cecbc>] (kthread+0x78/0x80) from [<c0041344>] (kernel_thread_exit+0x0/0x8)
$
$
===============
過了一會兒按了powerkey 屏打開了。開啟的同時背光也在開啟
WindowManagerPo 程序
$ [ 45.412447] qlay: request_suspend_state WindowManagerPo
[ 45.412538] request_suspend_state: wakeup (3->0) at 45333550421 (1970-01-02 00:00:36.069852343 U
TC)
[ 45.438831] qlay: led_brightness_store
[ 45.459402] qlay: led_brightness_store
[ 45.475765] qlay: led_brightness_store
[ 45.492308] qlay: led_brightness_store
[ 45.492618] qlay: lcdc on task name suspend
[ 45.505525] [<c0046958>] (unwind_backtrace+0x0/0x164) from [<c028b0dc>] (lcdc_on+0x34/0x124)
[ 45.505561] [<c028b0dc>] (lcdc_on+0x34/0x124) from [<c028b204>] (panel_next_on+0x38/0x44)
[ 45.521097] qlay: led_brightness_store
[ 45.524946] [<c028b204>] (panel_next_on+0x38/0x44) from [<c02879a8>] (mdp_lcdc_on+0x340/0x3ac)
[ 45.533697] [<c02879a8>] (mdp_lcdc_on+0x340/0x3ac) from [<c027e928>] (msm_fb_blank_sub+0x74/0xcc)
[ 45.542226] qlay: led_brightness_store
[ 45.546459] [<c027e928>] (msm_fb_blank_sub+0x74/0xcc) from [<c027f5d4>] (msmfb_early_resume+0x58/0x88)
[ 45.555514] [<c027f5d4>] (msmfb_early_resume+0x58/0x88) from [<c00e8bd0>] (late_resume+0x98/0xe8)
[ 45.564192] qlay: led_brightness_store
[ 45.568122] [<c00e8bd0>] (late_resume+0x98/0xe8) from [<c00cb158>] (worker_thread+0x160/0x1ec)
[ 45.576789] [<c00cb158>] (worker_thread+0x160/0x1ec) from [<c00cecbc>] (kthread+0x78/0x80)
[ 45.585197] qlay: led_brightness_store
[ 45.589571] [<c00cecbc>] (kthread+0x78/0x80) from [<c0041344>] (kernel_thread_exit+0x0/0x8)
=============
再次滅掉,同時進入睡眠狀態
[ 52.744714] qlay: request_suspend_state ScreenOffThread
[ 52.749827] lm3535_backlight_control: intensive 2 on:1
[ 52.755088] qlay: lightup suspend
[ 52.758309] lcdc_samsung_panel_set_backlight: backlight bl_level 0x0
[ 52.764679] request_suspend_state: sleep (0->3) at 52685703855 (1970-01-02 00:00:43.422010370 UTC)
[ 52.804564] lm3535_backlight_control: intensive 2 on:0
[ 52.929094] qlay: lcdc_off task suspend
[ 52.929145] [<c0046958>] (unwind_backtrace+0x0/0x164) from [<c028b024>] (lcdc_off+0x2c/0xb0)
[ 52.940272] [<c028b024>] (lcdc_off+0x2c/0xb0) from [<c028b24c>] (panel_next_off+0x3c/0x48)
[ 52.948651] [<c028b24c>] (panel_next_off+0x3c/0x48) from [<c0287648>] (mdp_lcdc_off+0x60/0x80)
[ 52.957281] [<c0287648>] (mdp_lcdc_off+0x60/0x80) from [<c027e960>] (msm_fb_blank_sub+0xac/0xcc)
[ 52.965868] [<c027e960>] (msm_fb_blank_sub+0xac/0xcc) from [<c027e9c8>] (msm_fb_suspend_sub+0x48/0xe4)
[ 52.975332] [<c027e9c8>] (msm_fb_suspend_sub+0x48/0xe4) from [<c00e8cc0>] (early_suspend+0xa0/0x12c)
[ 52.984271] [<c00e8cc0>] (early_suspend+0xa0/0x12c) from [<c00cb158>] (worker_thread+0x160/0x1ec)
[ 52.993227] [<c00cb158>] (worker_thread+0x160/0x1ec) from [<c00cecbc>] (kthread+0x78/0x80)
[ 53.002879] [<c00cecbc>] (kthread+0x78/0x80) from [<c0041344>] (kernel_thread_exit+0x0/0x8)
[ 53.186668] PM: Syncing filesystems ... done.
[ 53.193190] Freezing user space processes ... (elapsed 0.01 seconds) done.
[ 53.210721] Freezing remaining freezable tasks ... (elapsed 0.02 seconds) done.
[ 53.236312] Suspending console(s) (use no_console_suspend to debug)
============
睡眠喚醒過程
[ 53.245699] radio-tavaruatavarua_suspend: radio suspend
[ 53.245706]
[ 53.247391] local_clk_disable_nolock: Reference counts are incorrect for clock 100!
[ 53.247401] local_clk_disable_nolock: Reference counts are incorrect for clock 121!
[ 53.247410] local_clk_disable_nolock: Reference counts are incorrect for clock 122!
[ 53.274894] PM: suspend of devices complete after 29.993 msecs
[ 53.275716] PM: late suspend of devices complete after 0.807 msecs
[ 53.275726] Disabling non-boot CPUs ...
[ 53.275788] msm_pm_enter
[ 53.275788] msm_pm_enter: power collapse
[ 53.275788] msm_pm_enter: return
[ 53.276225] PM: early resume of devices complete after 0.367 msecs
[ 53.276471] wakeup wake lock: event1-201
[ 53.504385] msm_kgsl: initialized dev=0 mmu=on per_process_pagetable=off
[ 53.512652] hdmi_core_power(on): success
[ 53.512678] hdmi_enable_5v(on): success
[ 53.514445] radio-tavaruatavarua_resume: radio resume
[ 53.514451]
[ 53.514981] PM: resume of devices complete after 238.431 msecs
[ 53.608123] Restarting tasks ...
[ 53.610503] rmt_storage_ioctl: wait for request ioctl
[ 53.620984] qlay: request_suspend_state WindowManagerPo
[ 53.621018] request_suspend_state: wakeup (3->0) at 53542039854 (1970-01-02 00:00:45.009320145 UTC)
[ 53.637453] done.
[ 53.637537] suspend: exit suspend, ret = 0 (1970-01-02 00:00:45.025842812 UTC)
==========
從睡眠狀態中過來
WindowManagerPo 使得螢幕亮起
[ 53.620984] qlay: request_suspend_state WindowManagerPo
[ 53.646214] qlay: led_brightness_store
[ 53.665536] qlay: led_brightness_store
[ 53.681911] qlay: led_brightness_store
[ 53.697361] qlay: led_brightness_store
[ 53.714666] qlay: led_brightness_store
[ 53.734233] qlay: led_brightness_store
[ 53.755495] qlay: led_brightness_store
[ 53.771700] qlay: led_brightness_store
[ 53.784831] qlay: lcdc on task name suspend
[ 53.784876] [<c0046958>] (unwind_backtrace+0x0/0x164) from [<c028b0dc>] (lcdc_on+0x34/0x124)
[ 53.796463] qlay: led_brightness_store
[ 53.800395] [<c028b0dc>] (lcdc_on+0x34/0x124) from [<c028b204>] (panel_next_on+0x38/0x44)
[ 53.808203] [<c028b204>] (panel_next_on+0x38/0x44) from [<c02879a8>] (mdp_lcdc_on+0x340/0x3ac)
[ 53.817175] qlay: led_brightness_store
[ 53.824171] [<c02879a8>] (mdp_lcdc_on+0x340/0x3ac) from [<c027e928>] (msm_fb_blank_sub+0x74/0xcc
)
[ 53.824206] [<c027e928>] (msm_fb_blank_sub+0x74/0xcc) from [<c027f5d4>] (msmfb_early_resume+0x58
/0x88)
[ 53.841377] qlay: led_brightness_store
[ 53.845211] [<c027f5d4>] (msmfb_early_resume+0x58/0x88) from [<c00e8bd0>] (late_resume+0x98/0xe8
)
[ 53.853759] [<c00e8bd0>] (late_resume+0x98/0xe8) from [<c00cb158>] (worker_thread+0x160/0x1ec)
[ 53.862614] qlay: led_brightness_store
[ 53.866287] [<c00cb158>] (worker_thread+0x160/0x1ec) from [<c00cecbc>] (kthread+0x78/0x80)
[ 53.874583] [<c00cecbc>] (kthread+0x78/0x80) from [<c0041344>] (kernel_thread_exit+0x0/0x8)