Loading arch/arm64/boot/dts/qcom/kona.dtsi +2 −0 Original line number Diff line number Diff line Loading @@ -1669,6 +1669,7 @@ clocks = <&clock_gcc GCC_VIDEO_AHB_CLK>; parent-supply = <&VDD_MMCX_LEVEL>; vdd_parent-supply = <&VDD_MMCX_LEVEL>; qcom,support-hw-trigger; }; mvs0c_gdsc: qcom,gdsc@abf0bf8 { Loading @@ -1679,6 +1680,7 @@ clocks = <&clock_gcc GCC_VIDEO_AHB_CLK>; parent-supply = <&VDD_MMCX_LEVEL>; vdd_parent-supply = <&VDD_MMCX_LEVEL>; qcom,support-hw-trigger; }; mvs1_gdsc: qcom,gdsc@abf0d98 { Loading drivers/media/platform/msm/vidc/msm_vidc_platform.c +3 −3 Original line number Diff line number Diff line Loading @@ -161,7 +161,7 @@ static struct msm_vidc_common_data kona_common_data[] = { }, { .key = "qcom,sw-power-collapse", .value = 1, .value = 0, }, { .key = "qcom,domain-attr-non-fatal-faults", Loading Loading @@ -205,11 +205,11 @@ static struct msm_vidc_common_data kona_common_data[] = { }, { .key = "qcom,power-collapse-delay", .value = 1500, .value = 15000, }, { .key = "qcom,hw-resp-timeout", .value = 1000, .value = 10000, }, { .key = "qcom,debug-timeout", Loading drivers/media/platform/msm/vidc/venus_hfi.c +13 −4 Original line number Diff line number Diff line Loading @@ -1212,7 +1212,7 @@ static int __tzbsp_set_video_state(enum tzbsp_video_state state) static inline int __boot_firmware(struct venus_hfi_device *device) { int rc = 0; u32 ctrl_init_val = 0, ctrl_status = 0, count = 0, max_tries = 1000; u32 ctrl_init_val = 0, ctrl_status = 0, count = 0, max_tries = 10000; ctrl_init_val = BIT(0); if (device->res->domain_cvp) Loading Loading @@ -3159,9 +3159,9 @@ static int __power_collapse(struct venus_hfi_device *device, bool force) wfi_status = BIT(0) & __read_register(device, VIDC_WRAPPER_TZ_CPU_STATUS); if (!wfi_status) { if (!wfi_status || !idle_status) { dprintk(VIDC_WARN, "Skipping PC, wfi_status not set.\n"); "Skipping PC, wfi or idle status not set.\n"); goto skip_power_off; } Loading Loading @@ -4009,7 +4009,16 @@ static int __init_subcaches(struct venus_hfi_device *device) return 0; venus_hfi_for_each_subcache(device, sinfo) { if (!strcmp("vidsc0", sinfo->name)) { sinfo->subcache = llcc_slice_getd(LLCC_VIDSC0); } else if (!strcmp("vidsc1", sinfo->name)) { sinfo->subcache = llcc_slice_getd(LLCC_VIDSC1); } else if (!strcmp("vidscfw", sinfo->name)) { sinfo->subcache = llcc_slice_getd(LLCC_VIDFW); } else { dprintk(VIDC_ERR, "Invalid subcache name %s\n", sinfo->name); } if (IS_ERR_OR_NULL(sinfo->subcache)) { rc = PTR_ERR(sinfo->subcache) ? PTR_ERR(sinfo->subcache) : -EBADHANDLE; Loading Loading
arch/arm64/boot/dts/qcom/kona.dtsi +2 −0 Original line number Diff line number Diff line Loading @@ -1669,6 +1669,7 @@ clocks = <&clock_gcc GCC_VIDEO_AHB_CLK>; parent-supply = <&VDD_MMCX_LEVEL>; vdd_parent-supply = <&VDD_MMCX_LEVEL>; qcom,support-hw-trigger; }; mvs0c_gdsc: qcom,gdsc@abf0bf8 { Loading @@ -1679,6 +1680,7 @@ clocks = <&clock_gcc GCC_VIDEO_AHB_CLK>; parent-supply = <&VDD_MMCX_LEVEL>; vdd_parent-supply = <&VDD_MMCX_LEVEL>; qcom,support-hw-trigger; }; mvs1_gdsc: qcom,gdsc@abf0d98 { Loading
drivers/media/platform/msm/vidc/msm_vidc_platform.c +3 −3 Original line number Diff line number Diff line Loading @@ -161,7 +161,7 @@ static struct msm_vidc_common_data kona_common_data[] = { }, { .key = "qcom,sw-power-collapse", .value = 1, .value = 0, }, { .key = "qcom,domain-attr-non-fatal-faults", Loading Loading @@ -205,11 +205,11 @@ static struct msm_vidc_common_data kona_common_data[] = { }, { .key = "qcom,power-collapse-delay", .value = 1500, .value = 15000, }, { .key = "qcom,hw-resp-timeout", .value = 1000, .value = 10000, }, { .key = "qcom,debug-timeout", Loading
drivers/media/platform/msm/vidc/venus_hfi.c +13 −4 Original line number Diff line number Diff line Loading @@ -1212,7 +1212,7 @@ static int __tzbsp_set_video_state(enum tzbsp_video_state state) static inline int __boot_firmware(struct venus_hfi_device *device) { int rc = 0; u32 ctrl_init_val = 0, ctrl_status = 0, count = 0, max_tries = 1000; u32 ctrl_init_val = 0, ctrl_status = 0, count = 0, max_tries = 10000; ctrl_init_val = BIT(0); if (device->res->domain_cvp) Loading Loading @@ -3159,9 +3159,9 @@ static int __power_collapse(struct venus_hfi_device *device, bool force) wfi_status = BIT(0) & __read_register(device, VIDC_WRAPPER_TZ_CPU_STATUS); if (!wfi_status) { if (!wfi_status || !idle_status) { dprintk(VIDC_WARN, "Skipping PC, wfi_status not set.\n"); "Skipping PC, wfi or idle status not set.\n"); goto skip_power_off; } Loading Loading @@ -4009,7 +4009,16 @@ static int __init_subcaches(struct venus_hfi_device *device) return 0; venus_hfi_for_each_subcache(device, sinfo) { if (!strcmp("vidsc0", sinfo->name)) { sinfo->subcache = llcc_slice_getd(LLCC_VIDSC0); } else if (!strcmp("vidsc1", sinfo->name)) { sinfo->subcache = llcc_slice_getd(LLCC_VIDSC1); } else if (!strcmp("vidscfw", sinfo->name)) { sinfo->subcache = llcc_slice_getd(LLCC_VIDFW); } else { dprintk(VIDC_ERR, "Invalid subcache name %s\n", sinfo->name); } if (IS_ERR_OR_NULL(sinfo->subcache)) { rc = PTR_ERR(sinfo->subcache) ? PTR_ERR(sinfo->subcache) : -EBADHANDLE; Loading