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

Commit 18095107 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab
Browse files

[media] media: get rid of unused "extra_links" param on media_entity_init()



Currently, media_entity_init() creates an array with the links,
allocated at init time. It provides a parameter (extra_links)
that would allocate more links than the current needs, but this
is not used by any driver.

As we want to be able to do dynamic link allocation/removal,
we'll need to change the implementation of the links. So,
before doing that, let's first remove that extra unused
parameter, in order to cleanup the interface first.

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
Acked-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Acked-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
parent 0158e7b6
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -104,7 +104,7 @@ although drivers can allocate entities directly.
Drivers initialize entities by calling

	media_entity_init(struct media_entity *entity, u16 num_pads,
			  struct media_pad *pads, u16 extra_links);
			  struct media_pad *pads);

The media_entity name, type, flags, revision and group_id fields can be
initialized before or after calling media_entity_init. Entities embedded in
@@ -120,9 +120,8 @@ media_entity_init. The function will initialize the other pads fields.

Unlike the number of pads, the total number of links isn't always known in
advance by the entity driver. As an initial estimate, media_entity_init
pre-allocates a number of links equal to the number of pads plus an optional
number of extra links. The links array will be reallocated if it grows beyond
the initial estimate.
pre-allocates a number of links equal to the number of pads. The links array
will be reallocated if it grows beyond the initial estimate.

Drivers register entities with a media device by calling

+2 −2
Original line number Diff line number Diff line
@@ -300,7 +300,7 @@ calling media_entity_init():
	struct media_pad *pads = &my_sd->pads;
	int err;

	err = media_entity_init(&sd->entity, npads, pads, 0);
	err = media_entity_init(&sd->entity, npads, pads);

The pads array must have been previously initialized. There is no need to
manually set the struct media_entity type and name fields, but the revision
@@ -700,7 +700,7 @@ calling media_entity_init():
	struct media_pad *pad = &my_vdev->pad;
	int err;

	err = media_entity_init(&vdev->entity, 1, pad, 0);
	err = media_entity_init(&vdev->entity, 1, pad);

The pads array must have been previously initialized. There is no need to
manually set the struct media_entity type and name fields.
+2 −2
Original line number Diff line number Diff line
@@ -295,7 +295,7 @@ owner 域。若使用 i2c 辅助函数,这些都会帮你处理好。
	struct media_pad *pads = &my_sd->pads;
	int err;

	err = media_entity_init(&sd->entity, npads, pads, 0);
	err = media_entity_init(&sd->entity, npads, pads);

pads 数组必须预先初始化。无须手动设置 media_entity 的 type 和
name 域,但如有必要,revision 域必须初始化。
@@ -602,7 +602,7 @@ v4l2_file_operations 结构体是 file_operations 的一个子集。其主要
	struct media_pad *pad = &my_vdev->pad;
	int err;

	err = media_entity_init(&vdev->entity, 1, pad, 0);
	err = media_entity_init(&vdev->entity, 1, pad);

pads 数组必须预先初始化。没有必要手动设置 media_entity 的 type 和
name 域。
+1 −1
Original line number Diff line number Diff line
@@ -249,7 +249,7 @@ static void dvb_register_media_device(struct dvb_device *dvbdev,
	}

	if (npads)
		ret = media_entity_init(dvbdev->entity, npads, dvbdev->pads, 0);
		ret = media_entity_init(dvbdev->entity, npads, dvbdev->pads);
	if (!ret)
		ret = media_device_register_entity(dvbdev->adapter->mdev,
						   dvbdev->entity);
+1 −1
Original line number Diff line number Diff line
@@ -769,7 +769,7 @@ static int au8522_probe(struct i2c_client *client,
	sd->entity.type = MEDIA_ENT_T_V4L2_SUBDEV_DECODER;

	ret = media_entity_init(&sd->entity, ARRAY_SIZE(state->pads),
				state->pads, 0);
				state->pads);
	if (ret < 0) {
		v4l_info(client, "failed to initialize media entity!\n");
		return ret;
Loading