msm: vidc: check for venus_hfi_device state in resume

Now since resume is called to ensure venus is in power on state
during scale clocks, an issue is seen when client responds to an
error notification with stream_off. This causes scale clocks to
be called which powers_on venus and enable regulators. But an
earlier sys_error deinited all resources and hence a null pointer
exception is seen causing kernel panic.

CRs-Fixed: 1040026
Change-Id: Ibb660397f8e7e3e0cd0a5e672924925e605b2eb7
Signed-off-by: Abdulla Anam <abdullahanam@codeaurora.org>
This commit is contained in:
Abdulla Anam 2016-07-11 20:35:09 +05:30 committed by Gerrit - the friendly Code Review server
parent c4873787c3
commit 8ce0856ed3

View file

@ -4249,6 +4249,9 @@ static inline int __resume(struct venus_hfi_device *device)
} else if (device->power_enabled) {
dprintk(VIDC_DBG, "Power is already enabled\n");
goto exit;
} else if (!__core_in_valid_state(device)) {
dprintk(VIDC_DBG, "venus_hfi_device in deinit state.");
return -EINVAL;
}
dprintk(VIDC_DBG, "Resuming from power collapse\n");