1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Copyright (C) 2016 BayLibre, SAS
4  * Author: Neil Armstrong <narmstrong@baylibre.com>
5  */
6 
7 /* Video Post Process */
8 
9 #ifndef __MESON_VPP_H
10 #define __MESON_VPP_H
11 
12 struct drm_rect;
13 struct meson_drm;
14 
15 /* Mux VIU/VPP to ENCL */
16 #define MESON_VIU_VPP_MUX_ENCL	0x0
17 /* Mux VIU/VPP to ENCI */
18 #define MESON_VIU_VPP_MUX_ENCI	0x5
19 /* Mux VIU/VPP to ENCP */
20 #define MESON_VIU_VPP_MUX_ENCP	0xA
21 
22 void meson_vpp_setup_mux(struct meson_drm *priv, unsigned int mux);
23 
24 void meson_vpp_setup_interlace_vscaler_osd1(struct meson_drm *priv,
25 					    struct drm_rect *input);
26 void meson_vpp_disable_interlace_vscaler_osd1(struct meson_drm *priv);
27 
28 void meson_vpp_init(struct meson_drm *priv);
29 
30 #endif /* __MESON_VPP_H */
31