]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - include/media/vsp1.h
Merge tag 'mvebu-arm64-4.12-1' of git://git.infradead.org/linux-mvebu into fixes
[mirror_ubuntu-bionic-kernel.git] / include / media / vsp1.h
1 /*
2 * vsp1.h -- R-Car VSP1 API
3 *
4 * Copyright (C) 2015 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 __MEDIA_VSP1_H__
14 #define __MEDIA_VSP1_H__
15
16 #include <linux/types.h>
17 #include <linux/videodev2.h>
18
19 struct device;
20
21 int vsp1_du_init(struct device *dev);
22
23 /**
24 * struct vsp1_du_lif_config - VSP LIF configuration
25 * @width: output frame width
26 * @height: output frame height
27 */
28 struct vsp1_du_lif_config {
29 unsigned int width;
30 unsigned int height;
31 };
32
33 int vsp1_du_setup_lif(struct device *dev, const struct vsp1_du_lif_config *cfg);
34
35 struct vsp1_du_atomic_config {
36 u32 pixelformat;
37 unsigned int pitch;
38 dma_addr_t mem[3];
39 struct v4l2_rect src;
40 struct v4l2_rect dst;
41 unsigned int alpha;
42 unsigned int zpos;
43 };
44
45 void vsp1_du_atomic_begin(struct device *dev);
46 int vsp1_du_atomic_update(struct device *dev, unsigned int rpf,
47 const struct vsp1_du_atomic_config *cfg);
48 void vsp1_du_atomic_flush(struct device *dev);
49
50 #endif /* __MEDIA_VSP1_H__ */