forked from Minki/linux
8c71fff434
The interface to configure the LIF in the VSP1 requires adapting the function prototype for any changes. This makes extending the interface difficult. Change the function prototype to pass a structure which can be easily extended. This changes the means of disabling the pipeline, by now passing a NULL configuration rather than passing either a 0 width or height. [Fixed kerneldoc, made vsp1_du_setup_lif() cfg argument const] Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
51 lines
1.2 KiB
C
51 lines
1.2 KiB
C
/*
|
|
* vsp1.h -- R-Car VSP1 API
|
|
*
|
|
* Copyright (C) 2015 Renesas Electronics Corporation
|
|
*
|
|
* Contact: Laurent Pinchart (laurent.pinchart@ideasonboard.com)
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*/
|
|
#ifndef __MEDIA_VSP1_H__
|
|
#define __MEDIA_VSP1_H__
|
|
|
|
#include <linux/types.h>
|
|
#include <linux/videodev2.h>
|
|
|
|
struct device;
|
|
|
|
int vsp1_du_init(struct device *dev);
|
|
|
|
/**
|
|
* struct vsp1_du_lif_config - VSP LIF configuration
|
|
* @width: output frame width
|
|
* @height: output frame height
|
|
*/
|
|
struct vsp1_du_lif_config {
|
|
unsigned int width;
|
|
unsigned int height;
|
|
};
|
|
|
|
int vsp1_du_setup_lif(struct device *dev, const struct vsp1_du_lif_config *cfg);
|
|
|
|
struct vsp1_du_atomic_config {
|
|
u32 pixelformat;
|
|
unsigned int pitch;
|
|
dma_addr_t mem[3];
|
|
struct v4l2_rect src;
|
|
struct v4l2_rect dst;
|
|
unsigned int alpha;
|
|
unsigned int zpos;
|
|
};
|
|
|
|
void vsp1_du_atomic_begin(struct device *dev);
|
|
int vsp1_du_atomic_update(struct device *dev, unsigned int rpf,
|
|
const struct vsp1_du_atomic_config *cfg);
|
|
void vsp1_du_atomic_flush(struct device *dev);
|
|
|
|
#endif /* __MEDIA_VSP1_H__ */
|