1 /* 2 * vsp1_uds.h -- R-Car VSP1 Up and Down Scaler 3 * 4 * Copyright (C) 2013-2014 Renesas Electronics Corporation 5 * 6 * Contact: Laurent Pinchart (laurent.pinchart@ideasonboard.com) 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation; either version 2 of the License, or 11 * (at your option) any later version. 12 */ 13 #ifndef __VSP1_UDS_H__ 14 #define __VSP1_UDS_H__ 15 16 #include <media/media-entity.h> 17 #include <media/v4l2-subdev.h> 18 19 #include "vsp1_entity.h" 20 21 struct vsp1_device; 22 23 #define UDS_PAD_SINK 0 24 #define UDS_PAD_SOURCE 1 25 26 struct vsp1_uds { 27 struct vsp1_entity entity; 28 bool scale_alpha; 29 }; 30 to_uds(struct v4l2_subdev * subdev)31static inline struct vsp1_uds *to_uds(struct v4l2_subdev *subdev) 32 { 33 return container_of(subdev, struct vsp1_uds, entity.subdev); 34 } 35 36 struct vsp1_uds *vsp1_uds_create(struct vsp1_device *vsp1, unsigned int index); 37 38 void vsp1_uds_set_alpha(struct vsp1_uds *uds, unsigned int alpha); 39 40 #endif /* __VSP1_UDS_H__ */ 41