1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * vsp1_sru.h -- R-Car VSP1 Super Resolution Unit 4 * 5 * Copyright (C) 2013 Renesas Corporation 6 * 7 * Contact: Laurent Pinchart (laurent.pinchart@ideasonboard.com) 8 */ 9 #ifndef __VSP1_SRU_H__ 10 #define __VSP1_SRU_H__ 11 12 #include <media/media-entity.h> 13 #include <media/v4l2-ctrls.h> 14 #include <media/v4l2-subdev.h> 15 16 #include "vsp1_entity.h" 17 18 struct vsp1_device; 19 20 #define SRU_PAD_SINK 0 21 #define SRU_PAD_SOURCE 1 22 23 struct vsp1_sru { 24 struct vsp1_entity entity; 25 26 struct v4l2_ctrl_handler ctrls; 27 28 unsigned int intensity; 29 }; 30 31 static inline struct vsp1_sru *to_sru(struct v4l2_subdev *subdev) 32 { 33 return container_of(subdev, struct vsp1_sru, entity.subdev); 34 } 35 36 struct vsp1_sru *vsp1_sru_create(struct vsp1_device *vsp1); 37 38 #endif /* __VSP1_SRU_H__ */ 39