mirror of
https://github.com/torvalds/linux.git
synced 2024-11-26 06:02:05 +00:00
media: mc-entity: Rename media_entity_remote_pad() to media_pad_remote_pad_first()
The media_entity_remote_pad() is misnamed, as it operates on a pad and not an entity. Rename it to media_pad_remote_pad_first() to clarify its behaviour. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
parent
57cb848f00
commit
b2e44430b6
@ -186,8 +186,7 @@ is required and the graph structure can be freed normally.
|
||||
|
||||
Helper functions can be used to find a link between two given pads, or a pad
|
||||
connected to another pad through an enabled link
|
||||
:c:func:`media_entity_find_link()` and
|
||||
:c:func:`media_entity_remote_pad()`.
|
||||
:c:func:`media_entity_find_link()` and :c:func:`media_pad_remote_pad_first()`.
|
||||
|
||||
Use count and power handling
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -417,7 +417,7 @@ int adv748x_write_block(struct adv748x_state *state, int client_page,
|
||||
|
||||
static inline struct v4l2_subdev *adv748x_get_remote_sd(struct media_pad *pad)
|
||||
{
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad)
|
||||
return NULL;
|
||||
|
||||
|
@ -1285,7 +1285,7 @@ static int tvp5150_disable_all_input_links(struct tvp5150 *decoder)
|
||||
int err;
|
||||
|
||||
for (i = 0; i < TVP5150_NUM_PADS - 1; i++) {
|
||||
connector_pad = media_entity_remote_pad(&decoder->pads[i]);
|
||||
connector_pad = media_pad_remote_pad_first(&decoder->pads[i]);
|
||||
if (!connector_pad)
|
||||
continue;
|
||||
|
||||
|
@ -901,7 +901,7 @@ media_entity_find_link(struct media_pad *source, struct media_pad *sink)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(media_entity_find_link);
|
||||
|
||||
struct media_pad *media_entity_remote_pad(const struct media_pad *pad)
|
||||
struct media_pad *media_pad_remote_pad_first(const struct media_pad *pad)
|
||||
{
|
||||
struct media_link *link;
|
||||
|
||||
@ -919,7 +919,7 @@ struct media_pad *media_entity_remote_pad(const struct media_pad *pad)
|
||||
return NULL;
|
||||
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(media_entity_remote_pad);
|
||||
EXPORT_SYMBOL_GPL(media_pad_remote_pad_first);
|
||||
|
||||
static void media_interface_init(struct media_device *mdev,
|
||||
struct media_interface *intf,
|
||||
|
@ -1323,7 +1323,7 @@ static int cio2_video_link_validate(struct media_link *link)
|
||||
struct v4l2_subdev_format source_fmt;
|
||||
int ret;
|
||||
|
||||
if (!media_entity_remote_pad(entity->pads)) {
|
||||
if (!media_pad_remote_pad_first(entity->pads)) {
|
||||
dev_info(dev, "video node %s pad not connected\n", vd->name);
|
||||
return -ENOTCONN;
|
||||
}
|
||||
|
@ -245,7 +245,7 @@ static int csid_set_stream(struct v4l2_subdev *sd, int enable)
|
||||
}
|
||||
|
||||
if (!csid->testgen.enabled &&
|
||||
!media_entity_remote_pad(&csid->pads[MSM_CSID_PAD_SINK]))
|
||||
!media_pad_remote_pad_first(&csid->pads[MSM_CSID_PAD_SINK]))
|
||||
return -ENOLINK;
|
||||
}
|
||||
|
||||
@ -518,7 +518,7 @@ static int csid_set_test_pattern(struct csid_device *csid, s32 value)
|
||||
struct csid_testgen_config *tg = &csid->testgen;
|
||||
|
||||
/* If CSID is linked to CSIPHY, do not allow to enable test generator */
|
||||
if (value && media_entity_remote_pad(&csid->pads[MSM_CSID_PAD_SINK]))
|
||||
if (value && media_pad_remote_pad_first(&csid->pads[MSM_CSID_PAD_SINK]))
|
||||
return -EBUSY;
|
||||
|
||||
tg->enabled = !!value;
|
||||
@ -729,7 +729,7 @@ static int csid_link_setup(struct media_entity *entity,
|
||||
const struct media_pad *remote, u32 flags)
|
||||
{
|
||||
if (flags & MEDIA_LNK_FL_ENABLED)
|
||||
if (media_entity_remote_pad(local))
|
||||
if (media_pad_remote_pad_first(local))
|
||||
return -EBUSY;
|
||||
|
||||
if ((local->flags & MEDIA_PAD_FL_SINK) &&
|
||||
|
@ -693,7 +693,7 @@ static int csiphy_link_setup(struct media_entity *entity,
|
||||
struct csiphy_device *csiphy;
|
||||
struct csid_device *csid;
|
||||
|
||||
if (media_entity_remote_pad(local))
|
||||
if (media_pad_remote_pad_first(local))
|
||||
return -EBUSY;
|
||||
|
||||
sd = media_entity_to_v4l2_subdev(entity);
|
||||
|
@ -812,7 +812,7 @@ static int ispif_set_stream(struct v4l2_subdev *sd, int enable)
|
||||
int ret;
|
||||
|
||||
if (enable) {
|
||||
if (!media_entity_remote_pad(&line->pads[MSM_ISPIF_PAD_SINK]))
|
||||
if (!media_pad_remote_pad_first(&line->pads[MSM_ISPIF_PAD_SINK]))
|
||||
return -ENOLINK;
|
||||
|
||||
/* Config */
|
||||
@ -1301,7 +1301,7 @@ static int ispif_link_setup(struct media_entity *entity,
|
||||
const struct media_pad *remote, u32 flags)
|
||||
{
|
||||
if (flags & MEDIA_LNK_FL_ENABLED) {
|
||||
if (media_entity_remote_pad(local))
|
||||
if (media_pad_remote_pad_first(local))
|
||||
return -EBUSY;
|
||||
|
||||
if (local->flags & MEDIA_PAD_FL_SINK) {
|
||||
|
@ -1436,7 +1436,7 @@ static int vfe_link_setup(struct media_entity *entity,
|
||||
const struct media_pad *remote, u32 flags)
|
||||
{
|
||||
if (flags & MEDIA_LNK_FL_ENABLED)
|
||||
if (media_entity_remote_pad(local))
|
||||
if (media_pad_remote_pad_first(local))
|
||||
return -EBUSY;
|
||||
|
||||
return 0;
|
||||
|
@ -328,7 +328,7 @@ static struct v4l2_subdev *video_remote_subdev(struct camss_video *video,
|
||||
{
|
||||
struct media_pad *remote;
|
||||
|
||||
remote = media_entity_remote_pad(&video->pad);
|
||||
remote = media_pad_remote_pad_first(&video->pad);
|
||||
|
||||
if (!remote || !is_media_entity_v4l2_subdev(remote->entity))
|
||||
return NULL;
|
||||
@ -507,7 +507,7 @@ static int video_start_streaming(struct vb2_queue *q, unsigned int count)
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
@ -543,7 +543,7 @@ static void video_stop_streaming(struct vb2_queue *q)
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
|
@ -937,7 +937,7 @@ struct media_entity *camss_find_sensor(struct media_entity *entity)
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
return NULL;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
return NULL;
|
||||
|
||||
|
@ -845,7 +845,7 @@ static int rvin_csi2_link_notify(struct media_link *link, u32 flags,
|
||||
continue;
|
||||
|
||||
/* Get remote CSI-2, if any. */
|
||||
csi_pad = media_entity_remote_pad(
|
||||
csi_pad = media_pad_remote_pad_first(
|
||||
&group->vin[i]->vdev.entity.pads[0]);
|
||||
if (!csi_pad)
|
||||
continue;
|
||||
|
@ -1313,7 +1313,7 @@ static int rcsi2_link_setup(struct media_entity *entity,
|
||||
channel = id % 4;
|
||||
|
||||
if (flags & MEDIA_LNK_FL_ENABLED) {
|
||||
if (media_entity_remote_pad(local)) {
|
||||
if (media_pad_remote_pad_first(local)) {
|
||||
dev_dbg(priv->dev,
|
||||
"Each VC can only be routed to one output channel\n");
|
||||
return -EINVAL;
|
||||
|
@ -1258,7 +1258,7 @@ static int rvin_set_stream(struct rvin_dev *vin, int on)
|
||||
return ret == -ENOIOCTLCMD ? 0 : ret;
|
||||
}
|
||||
|
||||
pad = media_entity_remote_pad(&vin->pad);
|
||||
pad = media_pad_remote_pad_first(&vin->pad);
|
||||
if (!pad)
|
||||
return -EPIPE;
|
||||
|
||||
|
@ -1032,7 +1032,7 @@ static void rvin_notify(struct v4l2_subdev *sd,
|
||||
if (!vin)
|
||||
continue;
|
||||
|
||||
pad = media_entity_remote_pad(&vin->pad);
|
||||
pad = media_pad_remote_pad_first(&vin->pad);
|
||||
if (!pad)
|
||||
continue;
|
||||
|
||||
|
@ -516,8 +516,8 @@ int vsp1_entity_link_setup(struct media_entity *entity,
|
||||
* higher than one for the data pipelines, except for the links to the HGO and
|
||||
* HGT that can be enabled in addition to a regular data link. When traversing
|
||||
* outgoing links this function ignores HGO and HGT entities and should thus be
|
||||
* used in place of the generic media_entity_remote_pad() function to traverse
|
||||
* data pipelines.
|
||||
* used in place of the generic media_pad_remote_pad_first() function to
|
||||
* traverse data pipelines.
|
||||
*
|
||||
* Return a pointer to the pad at the remote end of the first found enabled
|
||||
* link, or NULL if no enabled link has been found.
|
||||
|
@ -50,7 +50,7 @@ vsp1_video_remote_subdev(struct media_pad *local, u32 *pad)
|
||||
{
|
||||
struct media_pad *remote;
|
||||
|
||||
remote = media_entity_remote_pad(local);
|
||||
remote = media_pad_remote_pad_first(local);
|
||||
if (!remote || !is_media_entity_v4l2_subdev(remote->entity))
|
||||
return NULL;
|
||||
|
||||
|
@ -200,7 +200,7 @@ static struct v4l2_subdev *rkisp1_get_remote_sensor(struct v4l2_subdev *sd)
|
||||
struct media_entity *sensor_me;
|
||||
|
||||
local = &sd->entity.pads[RKISP1_ISP_PAD_SINK_VIDEO];
|
||||
remote = media_entity_remote_pad(local);
|
||||
remote = media_pad_remote_pad_first(local);
|
||||
if (!remote)
|
||||
return NULL;
|
||||
|
||||
|
@ -21,7 +21,7 @@ struct v4l2_subdev *fimc_find_remote_sensor(struct media_entity *entity)
|
||||
|
||||
while (pad->flags & MEDIA_PAD_FL_SINK) {
|
||||
/* source pad */
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
|
@ -737,7 +737,7 @@ static struct media_entity *fimc_pipeline_get_head(struct media_entity *me)
|
||||
struct media_pad *pad = &me->pads[0];
|
||||
|
||||
while (!(pad->flags & MEDIA_PAD_FL_SOURCE)) {
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad)
|
||||
break;
|
||||
me = pad->entity;
|
||||
@ -810,7 +810,7 @@ static int fimc_pipeline_try_format(struct fimc_ctx *ctx,
|
||||
return ret;
|
||||
}
|
||||
|
||||
pad = media_entity_remote_pad(&me->pads[sfmt.pad]);
|
||||
pad = media_pad_remote_pad_first(&me->pads[sfmt.pad]);
|
||||
if (!pad)
|
||||
return -EINVAL;
|
||||
me = pad->entity;
|
||||
@ -1115,7 +1115,7 @@ static int fimc_pipeline_validate(struct fimc_dev *fimc)
|
||||
|
||||
if (p->flags & MEDIA_PAD_FL_SINK) {
|
||||
sink_pad = p;
|
||||
src_pad = media_entity_remote_pad(sink_pad);
|
||||
src_pad = media_pad_remote_pad_first(sink_pad);
|
||||
if (src_pad)
|
||||
break;
|
||||
}
|
||||
|
@ -465,7 +465,7 @@ static int isp_video_pipeline_validate(struct fimc_isp *isp)
|
||||
return -EPIPE;
|
||||
|
||||
/* Retrieve format at the source pad */
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
|
@ -789,7 +789,7 @@ static int fimc_pipeline_validate(struct fimc_lite *fimc)
|
||||
return -EPIPE;
|
||||
}
|
||||
/* Retrieve format at the source pad */
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
|
@ -81,7 +81,7 @@ static void fimc_pipeline_prepare(struct fimc_pipeline *p,
|
||||
struct media_pad *spad = &me->pads[i];
|
||||
if (!(spad->flags & MEDIA_PAD_FL_SINK))
|
||||
continue;
|
||||
pad = media_entity_remote_pad(spad);
|
||||
pad = media_pad_remote_pad_first(spad);
|
||||
if (pad)
|
||||
break;
|
||||
}
|
||||
|
@ -811,7 +811,7 @@ static int camif_pipeline_validate(struct camif_dev *camif)
|
||||
int ret;
|
||||
|
||||
/* Retrieve format at the sensor subdev source pad */
|
||||
pad = media_entity_remote_pad(&camif->pads[0]);
|
||||
pad = media_pad_remote_pad_first(&camif->pads[0]);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
return -EPIPE;
|
||||
|
||||
|
@ -611,7 +611,7 @@ static struct media_entity *dcmi_find_source(struct stm32_dcmi *dcmi)
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
@ -681,7 +681,7 @@ static int dcmi_pipeline_s_fmt(struct stm32_dcmi *dcmi,
|
||||
}
|
||||
|
||||
/* Walk to next entity */
|
||||
sink_pad = media_entity_remote_pad(src_pad);
|
||||
sink_pad = media_pad_remote_pad_first(src_pad);
|
||||
if (!sink_pad || !is_media_entity_v4l2_subdev(sink_pad->entity))
|
||||
break;
|
||||
|
||||
@ -705,7 +705,7 @@ static int dcmi_pipeline_s_stream(struct stm32_dcmi *dcmi, int state)
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
|
@ -77,7 +77,7 @@ sun6i_video_remote_subdev(struct sun6i_video *video, u32 *pad)
|
||||
{
|
||||
struct media_pad *remote;
|
||||
|
||||
remote = media_entity_remote_pad(&video->pad);
|
||||
remote = media_pad_remote_pad_first(&video->pad);
|
||||
|
||||
if (!remote || !is_media_entity_v4l2_subdev(remote->entity))
|
||||
return NULL;
|
||||
@ -560,7 +560,7 @@ static int sun6i_video_link_validate(struct media_link *link)
|
||||
|
||||
video->mbus_code = 0;
|
||||
|
||||
if (!media_entity_remote_pad(link->sink->entity->pads)) {
|
||||
if (!media_pad_remote_pad_first(link->sink->entity->pads)) {
|
||||
dev_info(video->csi->dev,
|
||||
"video node %s pad not connected\n", vdev->name);
|
||||
return -ENOLINK;
|
||||
|
@ -592,7 +592,7 @@ int cal_camerarx_get_remote_frame_desc(struct cal_camerarx *phy,
|
||||
if (!phy->source)
|
||||
return -EPIPE;
|
||||
|
||||
pad = media_entity_remote_pad(&phy->pads[CAL_CAMERARX_PAD_SINK]);
|
||||
pad = media_pad_remote_pad_first(&phy->pads[CAL_CAMERARX_PAD_SINK]);
|
||||
if (!pad)
|
||||
return -EPIPE;
|
||||
|
||||
|
@ -685,7 +685,7 @@ static int cal_video_check_format(struct cal_ctx *ctx)
|
||||
const struct v4l2_mbus_framefmt *format;
|
||||
struct media_pad *remote_pad;
|
||||
|
||||
remote_pad = media_entity_remote_pad(&ctx->pad);
|
||||
remote_pad = media_pad_remote_pad_first(&ctx->pad);
|
||||
if (!remote_pad)
|
||||
return -ENODEV;
|
||||
|
||||
|
@ -700,7 +700,7 @@ static int isp_pipeline_enable(struct isp_pipeline *pipe,
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
@ -797,7 +797,7 @@ static int isp_pipeline_disable(struct isp_pipeline *pipe)
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
@ -942,7 +942,7 @@ static int isp_pipeline_is_last(struct media_entity *me)
|
||||
pipe = to_isp_pipeline(me);
|
||||
if (pipe->stream_state == ISP_PIPELINE_STREAM_STOPPED)
|
||||
return 0;
|
||||
pad = media_entity_remote_pad(&pipe->output->pad);
|
||||
pad = media_pad_remote_pad_first(&pipe->output->pad);
|
||||
return pad->entity == me;
|
||||
}
|
||||
|
||||
|
@ -1133,7 +1133,7 @@ static void ccdc_configure(struct isp_ccdc_device *ccdc)
|
||||
ccdc->bt656 = false;
|
||||
ccdc->fields = 0;
|
||||
|
||||
pad = media_entity_remote_pad(&ccdc->pads[CCDC_PAD_SINK]);
|
||||
pad = media_pad_remote_pad_first(&ccdc->pads[CCDC_PAD_SINK]);
|
||||
sensor = media_entity_to_v4l2_subdev(pad->entity);
|
||||
if (ccdc->input == CCDC_INPUT_PARALLEL) {
|
||||
struct v4l2_subdev *sd =
|
||||
|
@ -357,7 +357,7 @@ static int ccp2_if_configure(struct isp_ccp2_device *ccp2)
|
||||
|
||||
ccp2_pwr_cfg(ccp2);
|
||||
|
||||
pad = media_entity_remote_pad(&ccp2->pads[CCP2_PAD_SINK]);
|
||||
pad = media_pad_remote_pad_first(&ccp2->pads[CCP2_PAD_SINK]);
|
||||
sensor = media_entity_to_v4l2_subdev(pad->entity);
|
||||
buscfg = v4l2_subdev_to_bus_cfg(pipe->external);
|
||||
|
||||
|
@ -561,7 +561,7 @@ static int csi2_configure(struct isp_csi2_device *csi2)
|
||||
if (csi2->contexts[0].enabled || csi2->ctrl.if_enable)
|
||||
return -EBUSY;
|
||||
|
||||
pad = media_entity_remote_pad(&csi2->pads[CSI2_PAD_SINK]);
|
||||
pad = media_pad_remote_pad_first(&csi2->pads[CSI2_PAD_SINK]);
|
||||
sensor = media_entity_to_v4l2_subdev(pad->entity);
|
||||
buscfg = v4l2_subdev_to_bus_cfg(pipe->external);
|
||||
|
||||
|
@ -206,7 +206,7 @@ isp_video_remote_subdev(struct isp_video *video, u32 *pad)
|
||||
{
|
||||
struct media_pad *remote;
|
||||
|
||||
remote = media_entity_remote_pad(&video->pad);
|
||||
remote = media_pad_remote_pad_first(&video->pad);
|
||||
|
||||
if (!remote || !is_media_entity_v4l2_subdev(remote->entity))
|
||||
return NULL;
|
||||
@ -981,7 +981,7 @@ static int isp_video_check_external_subdevs(struct isp_video *video,
|
||||
continue;
|
||||
|
||||
/* ISP entities have always sink pad == 0. Find source. */
|
||||
source_pad = media_entity_remote_pad(&ents[i]->pads[0]);
|
||||
source_pad = media_pad_remote_pad_first(&ents[i]->pads[0]);
|
||||
if (source_pad == NULL)
|
||||
continue;
|
||||
|
||||
|
@ -118,7 +118,7 @@ static int video_mux_s_stream(struct v4l2_subdev *sd, int enable)
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
pad = media_entity_remote_pad(&sd->entity.pads[vmux->active]);
|
||||
pad = media_pad_remote_pad_first(&sd->entity.pads[vmux->active]);
|
||||
if (!pad) {
|
||||
dev_err(sd->dev, "Failed to find remote source pad\n");
|
||||
return -ENOLINK;
|
||||
|
@ -474,7 +474,7 @@ static struct v4l2_subdev *xcsi2rxss_get_remote_subdev(struct media_pad *local)
|
||||
{
|
||||
struct media_pad *remote;
|
||||
|
||||
remote = media_entity_remote_pad(local);
|
||||
remote = media_pad_remote_pad_first(local);
|
||||
if (!remote || !is_media_entity_v4l2_subdev(remote->entity))
|
||||
return NULL;
|
||||
|
||||
|
@ -44,7 +44,7 @@ xvip_dma_remote_subdev(struct media_pad *local, u32 *pad)
|
||||
{
|
||||
struct media_pad *remote;
|
||||
|
||||
remote = media_entity_remote_pad(local);
|
||||
remote = media_pad_remote_pad_first(local);
|
||||
if (!remote || !is_media_entity_v4l2_subdev(remote->entity))
|
||||
return NULL;
|
||||
|
||||
@ -107,7 +107,7 @@ static int xvip_pipeline_start_stop(struct xvip_pipeline *pipe, bool start)
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
|
@ -30,7 +30,7 @@ static struct media_entity *vimc_get_source_entity(struct media_entity *ent)
|
||||
for (i = 0; i < ent->num_pads; i++) {
|
||||
if (ent->pads[i].flags & MEDIA_PAD_FL_SOURCE)
|
||||
continue;
|
||||
pad = media_entity_remote_pad(&ent->pads[i]);
|
||||
pad = media_pad_remote_pad_first(&ent->pads[i]);
|
||||
return pad ? pad->entity : NULL;
|
||||
}
|
||||
return NULL;
|
||||
|
@ -235,7 +235,7 @@ static int imx_media_inherit_controls(struct imx_media_dev *imxmd,
|
||||
if (!(spad->flags & MEDIA_PAD_FL_SINK))
|
||||
continue;
|
||||
|
||||
pad = media_entity_remote_pad(spad);
|
||||
pad = media_pad_remote_pad_first(spad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
continue;
|
||||
|
||||
|
@ -698,7 +698,7 @@ imx_media_pipeline_pad(struct media_entity *start_entity, u32 grp_id,
|
||||
(!upstream && !(spad->flags & MEDIA_PAD_FL_SOURCE)))
|
||||
continue;
|
||||
|
||||
pad = media_entity_remote_pad(spad);
|
||||
pad = media_pad_remote_pad_first(spad);
|
||||
if (!pad)
|
||||
continue;
|
||||
|
||||
|
@ -1963,7 +1963,7 @@ static int imx7_csi_pad_link_validate(struct v4l2_subdev *sd,
|
||||
if (!(spad->flags & MEDIA_PAD_FL_SINK))
|
||||
continue;
|
||||
|
||||
pad = media_entity_remote_pad(spad);
|
||||
pad = media_pad_remote_pad_first(spad);
|
||||
if (pad)
|
||||
break;
|
||||
}
|
||||
|
@ -395,7 +395,7 @@ static int iss_pipeline_disable(struct iss_pipeline *pipe,
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
@ -464,7 +464,7 @@ static int iss_pipeline_enable(struct iss_pipeline *pipe,
|
||||
if (!(pad->flags & MEDIA_PAD_FL_SINK))
|
||||
break;
|
||||
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
|
||||
@ -553,7 +553,7 @@ static int iss_pipeline_is_last(struct media_entity *me)
|
||||
pipe = to_iss_pipeline(me);
|
||||
if (pipe->stream_state == ISS_PIPELINE_STREAM_STOPPED)
|
||||
return 0;
|
||||
pad = media_entity_remote_pad(&pipe->output->pad);
|
||||
pad = media_pad_remote_pad_first(&pipe->output->pad);
|
||||
return pad->entity == me;
|
||||
}
|
||||
|
||||
|
@ -538,7 +538,7 @@ static int csi2_configure(struct iss_csi2_device *csi2)
|
||||
if (csi2->contexts[0].enabled || csi2->ctrl.if_enable)
|
||||
return -EBUSY;
|
||||
|
||||
pad = media_entity_remote_pad(&csi2->pads[CSI2_PAD_SINK]);
|
||||
pad = media_pad_remote_pad_first(&csi2->pads[CSI2_PAD_SINK]);
|
||||
sensor = media_entity_to_v4l2_subdev(pad->entity);
|
||||
pdata = sensor->host_priv;
|
||||
|
||||
|
@ -190,7 +190,7 @@ iss_video_remote_subdev(struct iss_video *video, u32 *pad)
|
||||
{
|
||||
struct media_pad *remote;
|
||||
|
||||
remote = media_entity_remote_pad(&video->pad);
|
||||
remote = media_pad_remote_pad_first(&video->pad);
|
||||
|
||||
if (!remote || !is_media_entity_v4l2_subdev(remote->entity))
|
||||
return NULL;
|
||||
|
@ -157,7 +157,7 @@ tegra_channel_get_remote_csi_subdev(struct tegra_vi_channel *chan)
|
||||
{
|
||||
struct media_pad *pad;
|
||||
|
||||
pad = media_entity_remote_pad(&chan->pad);
|
||||
pad = media_pad_remote_pad_first(&chan->pad);
|
||||
if (!pad)
|
||||
return NULL;
|
||||
|
||||
@ -177,7 +177,7 @@ tegra_channel_get_remote_source_subdev(struct tegra_vi_channel *chan)
|
||||
|
||||
pad = &subdev->entity.pads[0];
|
||||
while (!(pad->flags & MEDIA_PAD_FL_SOURCE)) {
|
||||
pad = media_entity_remote_pad(pad);
|
||||
pad = media_pad_remote_pad_first(pad);
|
||||
if (!pad || !is_media_entity_v4l2_subdev(pad->entity))
|
||||
break;
|
||||
entity = pad->entity;
|
||||
|
@ -848,7 +848,7 @@ struct media_link *media_entity_find_link(struct media_pad *source,
|
||||
struct media_pad *sink);
|
||||
|
||||
/**
|
||||
* media_entity_remote_pad - Find the pad at the remote end of a link
|
||||
* media_pad_remote_pad_first - Find the first pad at the remote end of a link
|
||||
* @pad: Pad at the local end of the link
|
||||
*
|
||||
* Search for a remote pad connected to the given pad by iterating over all
|
||||
@ -857,7 +857,7 @@ struct media_link *media_entity_find_link(struct media_pad *source,
|
||||
* Return: returns a pointer to the pad at the remote end of the first found
|
||||
* enabled link, or %NULL if no enabled link has been found.
|
||||
*/
|
||||
struct media_pad *media_entity_remote_pad(const struct media_pad *pad);
|
||||
struct media_pad *media_pad_remote_pad_first(const struct media_pad *pad);
|
||||
|
||||
/**
|
||||
* media_entity_is_streaming - Test if an entity is part of a streaming pipeline
|
||||
|
Loading…
Reference in New Issue
Block a user