blob: 26677efff149ea2236b7aa39c28b7482848a18e4 [file] [log] [blame]
/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
/*
* Copyright (c) 2019 Amlogic, Inc. All rights reserved.
*/
#ifndef _AUTOWR_H_
#define _AUTOWR_H_
/*FR support 2 fd*/
/*DS support 1 fd*/
enum frame_plane {
NV12_Y = 0,
NV12_UV,
RGB,
};
/* for autowr dma buf define */
struct autowr_dmabuf_req_s {
int plane_id; // select plane
int frame_index;// select frame, package it as DMA fd.
u32 phy_addr; // buffer phy address (NV12_Y,NV12_UV)
int index;
unsigned int len;
unsigned int dma_dir;
};
struct autowr_dmabuf_exp_s {
int index;
unsigned int flags;
int fd;
};
struct autowr_packed_buf_s {
int alloc_status;
int count;
unsigned int path_type;
unsigned int flags;
};
extern unsigned int autowr_log_level;
enum autowr_log_type {
LOG_CRIT = 0,
LOG_ERR = 0,
LOG_INFO = 0,
LOG_WARNING,
LOG_DEBUG,
LOG_MAX
};
#define autowr_log(level, fmt, ...) \
do { \
if ((level) <= autowr_log_level)\
pr_info("autowr: %s: " fmt, __func__, ##__VA_ARGS__);\
} while (0)
#define BUF_VALID 0xFEEDBEEF
#define BUF_INVALID 0xDEADBEEF
#endif // __AUTOWR_H__