1/* Copyright (c) 2013 Samsung Electronics Co., Ltd.
2 *		http://www.samsung.com/
3 *
4 * Author: Jacek Anaszewski <j.anaszewski@samsung.com>
5 *
6 * Header file of the register interface for JPEG driver on Exynos4x12.
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 version 2 as
10 * published by the Free Software Foundation.
11*/
12
13#ifndef JPEG_HW_EXYNOS4_H_
14#define JPEG_HW_EXYNOS4_H_
15
16void exynos4_jpeg_sw_reset(void __iomem *base);
17void exynos4_jpeg_set_enc_dec_mode(void __iomem *base, unsigned int mode);
18void __exynos4_jpeg_set_img_fmt(void __iomem *base, unsigned int img_fmt,
19				unsigned int version);
20void __exynos4_jpeg_set_enc_out_fmt(void __iomem *base, unsigned int out_fmt,
21				    unsigned int version);
22void exynos4_jpeg_set_enc_tbl(void __iomem *base);
23void exynos4_jpeg_set_interrupt(void __iomem *base, unsigned int version);
24unsigned int exynos4_jpeg_get_int_status(void __iomem *base);
25void exynos4_jpeg_set_huf_table_enable(void __iomem *base, int value);
26void exynos4_jpeg_set_sys_int_enable(void __iomem *base, int value);
27void exynos4_jpeg_set_stream_buf_address(void __iomem *base,
28					 unsigned int address);
29void exynos4_jpeg_set_stream_size(void __iomem *base,
30		unsigned int x_value, unsigned int y_value);
31void exynos4_jpeg_set_frame_buf_address(void __iomem *base,
32				struct s5p_jpeg_addr *jpeg_addr);
33void exynos4_jpeg_set_encode_tbl_select(void __iomem *base,
34		enum exynos4_jpeg_img_quality_level level);
35void exynos4_jpeg_set_dec_components(void __iomem *base, int n);
36void exynos4_jpeg_select_dec_q_tbl(void __iomem *base, char c, char x);
37void exynos4_jpeg_select_dec_h_tbl(void __iomem *base, char c, char x);
38void exynos4_jpeg_set_encode_hoff_cnt(void __iomem *base, unsigned int fmt);
39void exynos4_jpeg_set_dec_bitstream_size(void __iomem *base, unsigned int size);
40unsigned int exynos4_jpeg_get_stream_size(void __iomem *base);
41void exynos4_jpeg_get_frame_size(void __iomem *base,
42			unsigned int *width, unsigned int *height);
43unsigned int exynos4_jpeg_get_frame_fmt(void __iomem *base);
44unsigned int exynos4_jpeg_get_fifo_status(void __iomem *base);
45void exynos4_jpeg_set_timer_count(void __iomem *base, unsigned int size);
46
47#endif /* JPEG_HW_EXYNOS4_H_ */
48