17305ee12SJacopo Mondi /* SPDX-License-Identifier: GPL-2.0+ */ 27305ee12SJacopo Mondi /* 37305ee12SJacopo Mondi * vsp1_iif.h -- R-Car VSP1 IIF (ISP Interface) 47305ee12SJacopo Mondi * 57305ee12SJacopo Mondi * Copyright (C) 2025 Ideas On Board Oy 67305ee12SJacopo Mondi * Copyright (C) 2025 Renesas Corporation 77305ee12SJacopo Mondi */ 87305ee12SJacopo Mondi #ifndef __VSP1_IIF_H__ 97305ee12SJacopo Mondi #define __VSP1_IIF_H__ 107305ee12SJacopo Mondi 117305ee12SJacopo Mondi #include <media/v4l2-subdev.h> 127305ee12SJacopo Mondi 137305ee12SJacopo Mondi #include "vsp1_entity.h" 147305ee12SJacopo Mondi 15*8ebd5f70SJacopo Mondi #define VSPX_IIF_SINK_PAD_IMG 0 16*8ebd5f70SJacopo Mondi #define VSPX_IIF_SINK_PAD_CONFIG 2 17*8ebd5f70SJacopo Mondi 187305ee12SJacopo Mondi struct vsp1_iif { 197305ee12SJacopo Mondi struct vsp1_entity entity; 207305ee12SJacopo Mondi }; 217305ee12SJacopo Mondi 227305ee12SJacopo Mondi static inline struct vsp1_iif *to_iif(struct v4l2_subdev *subdev) 237305ee12SJacopo Mondi { 247305ee12SJacopo Mondi return container_of(subdev, struct vsp1_iif, entity.subdev); 257305ee12SJacopo Mondi } 267305ee12SJacopo Mondi 277305ee12SJacopo Mondi struct vsp1_iif *vsp1_iif_create(struct vsp1_device *vsp1); 287305ee12SJacopo Mondi 297305ee12SJacopo Mondi #endif /* __VSP1_IIF_H__ */ 30