diff options
author | Javier Martinez Canillas <javier@osg.samsung.com> | 2016-01-19 11:45:12 -0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@osg.samsung.com> | 2016-01-25 07:28:30 -0200 |
commit | 5017e1b15d4ca8dcc170dc6914f6b2d8cd492bdf (patch) | |
tree | 44410de846e711bf35398789b485c8faf55bdb28 /drivers/media | |
parent | 92e963f50fc74041b5e9e744c330dca48e04f08d (diff) | |
download | op-kernel-dev-5017e1b15d4ca8dcc170dc6914f6b2d8cd492bdf.zip op-kernel-dev-5017e1b15d4ca8dcc170dc6914f6b2d8cd492bdf.tar.gz |
[media] v4l: vsp1: Fix wrong entities links creation
The Media Control framework now requires entities to be registered with
the media device before creating links so commit c7621b3044f7 ("[media]
v4l: vsp1: separate links creation from entities init") separated link
creation from entities init.
But unfortunately that patch introduced a regression since wrong links
were created causing a boot failure on Renesas boards.
This patch fixes the boot issue and also the media graph was compared
by Geert Uytterhoeven to make sure that the driver changes required by
the Media Control framework next generation did not affect the graph.
Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/platform/vsp1/vsp1_drv.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/media/platform/vsp1/vsp1_drv.c b/drivers/media/platform/vsp1/vsp1_drv.c index 42dff9d..533bc79 100644 --- a/drivers/media/platform/vsp1/vsp1_drv.c +++ b/drivers/media/platform/vsp1/vsp1_drv.c @@ -256,7 +256,7 @@ static int vsp1_create_entities(struct vsp1_device *vsp1) /* Create links. */ list_for_each_entry(entity, &vsp1->entities, list_dev) { - if (entity->type == VSP1_ENTITY_LIF) { + if (entity->type == VSP1_ENTITY_WPF) { ret = vsp1_wpf_create_links(vsp1, entity); if (ret < 0) goto done; @@ -264,7 +264,10 @@ static int vsp1_create_entities(struct vsp1_device *vsp1) ret = vsp1_rpf_create_links(vsp1, entity); if (ret < 0) goto done; - } else { + } + + if (entity->type != VSP1_ENTITY_LIF && + entity->type != VSP1_ENTITY_RPF) { ret = vsp1_create_links(vsp1, entity); if (ret < 0) goto done; |