mirror of
https://github.com/torvalds/linux.git
synced 2024-12-15 15:41:58 +00:00
drm/exynos/ipp: correct ipp_id field initialization
prop_list.ipp_id field is not initialized properly. The patch fixes it, additionally it removes redundant field from ippdrv. Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
This commit is contained in:
parent
396e103e4b
commit
f51bceec03
@ -1699,23 +1699,21 @@ static int ipp_subdrv_probe(struct drm_device *drm_dev, struct device *dev)
|
||||
|
||||
/* get ipp driver entry */
|
||||
list_for_each_entry(ippdrv, &exynos_drm_ippdrv_list, drv_list) {
|
||||
u32 ipp_id;
|
||||
|
||||
ippdrv->drm_dev = drm_dev;
|
||||
|
||||
ret = ipp_create_id(&ctx->ipp_idr, &ctx->ipp_lock, ippdrv,
|
||||
&ippdrv->ipp_id);
|
||||
if (ret) {
|
||||
&ipp_id);
|
||||
if (ret || ipp_id == 0) {
|
||||
DRM_ERROR("failed to create id.\n");
|
||||
goto err_idr;
|
||||
}
|
||||
|
||||
DRM_DEBUG_KMS("count[%d]ippdrv[0x%x]ipp_id[%d]\n",
|
||||
count++, (int)ippdrv, ippdrv->ipp_id);
|
||||
count++, (int)ippdrv, ipp_id);
|
||||
|
||||
if (ippdrv->ipp_id == 0) {
|
||||
DRM_ERROR("failed to get ipp_id[%d]\n",
|
||||
ippdrv->ipp_id);
|
||||
goto err_idr;
|
||||
}
|
||||
ippdrv->prop_list->ipp_id = ipp_id;
|
||||
|
||||
/* store parent device for node */
|
||||
ippdrv->parent_dev = dev;
|
||||
|
@ -160,7 +160,6 @@ struct exynos_drm_ippdrv {
|
||||
struct device *parent_dev;
|
||||
struct device *dev;
|
||||
struct drm_device *drm_dev;
|
||||
u32 ipp_id;
|
||||
bool dedicated;
|
||||
struct exynos_drm_ipp_ops *ops[EXYNOS_DRM_OPS_MAX];
|
||||
struct workqueue_struct *event_workq;
|
||||
|
Loading…
Reference in New Issue
Block a user