Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bfbb4c1a authored by Sayantan Majumder's avatar Sayantan Majumder
Browse files

msm: vidc: enabling dynamic session context for IOT specific targets



Enabling dynamic session context only for IOT specific targets.

Change-Id: I465d28ef50dfe493fc4f11b9e40ef9231a57ad9a
Signed-off-by: default avatarSayantan Majumder <smajumde@codeaurora.org>
parent 27205f81
Loading
Loading
Loading
Loading
+8 −6
Original line number Original line Diff line number Diff line
@@ -496,11 +496,6 @@ static int msm_vidc_probe_vidc_device(struct platform_device *pdev)
		goto err_core_init;
		goto err_core_init;
	}
	}
	dev_set_drvdata(&pdev->dev, core);
	dev_set_drvdata(&pdev->dev, core);
	vidc_driver->ctxt = kcalloc(core->platform_data->max_inst_count,
		sizeof(*vidc_driver->ctxt), GFP_KERNEL);
	if (!vidc_driver->ctxt)
		return -ENOMEM;
	vidc_driver->num_ctxt = core->platform_data->max_inst_count;
	rc = msm_vidc_initialize_core(pdev, core);
	rc = msm_vidc_initialize_core(pdev, core);
	if (rc) {
	if (rc) {
		d_vpr_e("Failed to init core\n");
		d_vpr_e("Failed to init core\n");
@@ -514,6 +509,12 @@ static int msm_vidc_probe_vidc_device(struct platform_device *pdev)


	core->id = MSM_VIDC_CORE_VENUS;
	core->id = MSM_VIDC_CORE_VENUS;


	vidc_driver->ctxt = kcalloc(core->platform_data->max_inst_count,
		sizeof(*vidc_driver->ctxt), GFP_KERNEL);
	if (!vidc_driver->ctxt)
		goto err_vidc_context;
	vidc_driver->num_ctxt = core->platform_data->max_inst_count;

	rc = v4l2_device_register(&pdev->dev, &core->v4l2_dev);
	rc = v4l2_device_register(&pdev->dev, &core->v4l2_dev);
	if (rc) {
	if (rc) {
		d_vpr_e("Failed to register v4l2 device\n");
		d_vpr_e("Failed to register v4l2 device\n");
@@ -626,11 +627,12 @@ static int msm_vidc_probe_vidc_device(struct platform_device *pdev)
err_dec:
err_dec:
	v4l2_device_unregister(&core->v4l2_dev);
	v4l2_device_unregister(&core->v4l2_dev);
err_v4l2_register:
err_v4l2_register:
	kfree(vidc_driver->ctxt);
err_vidc_context:
	sysfs_remove_group(&pdev->dev.kobj, &msm_vidc_core_attr_group);
	sysfs_remove_group(&pdev->dev.kobj, &msm_vidc_core_attr_group);
err_core_init:
err_core_init:
	dev_set_drvdata(&pdev->dev, NULL);
	dev_set_drvdata(&pdev->dev, NULL);
	kfree(core);
	kfree(core);
	kfree(vidc_driver->ctxt);
	return rc;
	return rc;
}
}