blob: 142fb69b5946336165ad971936a446d03a95c01c [file] [log] [blame]
/*
* Copyright (c) 2017 Samsung Electronics Co., Ltd.
* http://www.samsung.com
*
* Header file for mfc driver
*
* 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 _MFC_HWFC_H
#define _MFC_HWFC_H
#include <linux/types.h>
#define HWFC_ERR_NONE 0
#define HWFC_ERR_TSMUX 1
#define HWFC_ERR_MFC 2
#define HWFC_ERR_MFC_NOT_PREPARED 3
#define HWFC_ERR_MFC_TIMEOUT 4
#define HWFC_ERR_MFC_NOT_ENABLED 5
/*
* struct encoding_param
* @time_stamp : timestamp value
*/
struct encoding_param {
u64 time_stamp;
};
/*
* mfc_hwfc_encode - Request encoding
* @encoding_param : parameters for encoding
*
* repeater calls it to start encoding
*
*/
#ifdef CONFIG_VIDEO_EXYNOS_MFC
int mfc_hwfc_encode(int buf_index, int job_id, struct encoding_param *param);
#else
static inline int mfc_hwfc_encode(int buf_index, int job_id, struct encoding_param *param)
{
return -HWFC_ERR_MFC_NOT_ENABLED;
}
#endif
#endif /* _MFC_HWFC_H */