DSI stops when wakeup from suspend

custom_board

#1

Hi everyone,

I am working with inforce6301.

I tried to test wake up from suspend with referencing the following URL.

It is success to wake up from freeze, but then MIPI DSI signal is not outputted.
I do not know why DSI is stops.


I added gpio_keys node to device tree.

device tree
                 gpio_keys: test_keys@0 {
                         compatible = "gpio-keys";
                         #address-cells = <1>;
                         #size-cells = <0>;
                         autorepeat;
 
                         up {
                                 label = "test";
                                 linux,code = <115>;
                                 gpios = <&msmgpio 18 GPIO_ACTIVE_HIGH>;
                                 wakeup-source;
                         };
                 };

I got the following log when from suspend to wake up.

debug log

root@linaro-alip:~# echo freeze > /sys/power/state
[ 131.758511] PM: suspend entry (s2idle)
[ 131.758541] PM: Syncing filesystems … done.
[ 132.137971] Freezing user space processes … (elapsed 0.002 seconds) done.
[ 132.140189] OOM killer disabled.
[ 132.145946] Freezing remaining freezable tasks … (elapsed 0.001 seconds) done.
[ 132.149393] Suspending console(s) (use no_console_suspend to debug)
[ 132.164790] smsc75xx 1-1.2:1.0 eth0: entering SUSPEND2 mode
<suspended>

<gpio triggered>
[ 139.583296] smsc75xx 1-1.2:1.0 eth0: resuming from SUSPEND2
[ 139.771047] OOM killer enabled.
[ 139.776612] Restarting tasks … done.
[ 139.778501] qcom-iommu-ctx 1f09000.iommu-ctx: Unhandled context fault: fsr=0x202, iova=0x0000000000000000, fsynr=0x2, cb=1
[ 139.784852] PM: suspend exit
root@linaro-alip:~# [ 139.849019] msm 1a00000.mdss: vblank time out, crtc=0
[ 142.064951] msm 1a00000.mdss: A306: hangcheck detected gpu lockup rb 0!
[ 142.065015] msm 1a00000.mdss: A306: completed fence: 209
[ 142.070492] msm 1a00000.mdss: A306: submitted fence: 220
[ 142.076311] msm 1a00000.mdss: A306: hangcheck recover!
[ 142.081975] msm 1a00000.mdss: A306: offending task: X:flush_queue0 (/usr/lib/xorg/Xorg -nolisten tcp -auth /var/run/sddm/{cad38ada-3627-4c08-af85-6f7d89459a51} -background none -noreset -displayfd 17 -seat seat0 vt7)
[ 142.086934] revision: 307 (3.0.6.0)
[ 142.086937] rb 0: fence: 209/220
[ 142.086939] rptr: 4950
[ 142.086940] rb wptr: 5186
[ 142.086943] CP_SCRATCH_REG0: 0
[ 142.086945] CP_SCRATCH_REG1: 0
[ 142.086947] CP_SCRATCH_REG2: 0
[ 142.086949] CP_SCRATCH_REG3: 0
[ 142.086951] CP_SCRATCH_REG4: 0
[ 142.086952] CP_SCRATCH_REG5: 0
[ 142.086954] CP_SCRATCH_REG6: 0
[ 142.086956] CP_SCRATCH_REG7: 0


Linux version:
Linux linaro-alip 4.14.0-qcom-ifc6301-arm64 #5 SMP PREEMPT Tue Mar 26 21:01:07 JST 2019 aarch64 GNU/Linux


Please help me.
Thank you.