1d722e3fbSopenharmony_ci/* 2d722e3fbSopenharmony_ci * Copyright (C) 2013 Samsung Electronics Co.Ltd 3d722e3fbSopenharmony_ci * Authors: 4d722e3fbSopenharmony_ci * Inki Dae <inki.dae@samsung.com> 5d722e3fbSopenharmony_ci * 6d722e3fbSopenharmony_ci * Permission is hereby granted, free of charge, to any person obtaining a 7d722e3fbSopenharmony_ci * copy of this software and associated documentation files (the "Software"), 8d722e3fbSopenharmony_ci * to deal in the Software without restriction, including without limitation 9d722e3fbSopenharmony_ci * the rights to use, copy, modify, merge, publish, distribute, sublicense, 10d722e3fbSopenharmony_ci * and/or sell copies of the Software, and to permit persons to whom the 11d722e3fbSopenharmony_ci * Software is furnished to do so, subject to the following conditions: 12d722e3fbSopenharmony_ci * 13d722e3fbSopenharmony_ci * The above copyright notice and this permission notice (including the next 14d722e3fbSopenharmony_ci * paragraph) shall be included in all copies or substantial portions of the 15d722e3fbSopenharmony_ci * Software. 16d722e3fbSopenharmony_ci * 17d722e3fbSopenharmony_ci * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18d722e3fbSopenharmony_ci * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19d722e3fbSopenharmony_ci * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 20d722e3fbSopenharmony_ci * VA LINUX SYSTEMS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR 21d722e3fbSopenharmony_ci * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 22d722e3fbSopenharmony_ci * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 23d722e3fbSopenharmony_ci * OTHER DEALINGS IN THE SOFTWARE. 24d722e3fbSopenharmony_ci */ 25d722e3fbSopenharmony_ci 26d722e3fbSopenharmony_ci#ifndef _FIMG2D_REG_H_ 27d722e3fbSopenharmony_ci#define _FIMG2D_REG_H_ 28d722e3fbSopenharmony_ci 29d722e3fbSopenharmony_ci#define SOFT_RESET_REG (0x0000) 30d722e3fbSopenharmony_ci#define INTEN_REG (0x0004) 31d722e3fbSopenharmony_ci#define INTC_PEND_REG (0x000C) 32d722e3fbSopenharmony_ci#define FIFO_STAT_REG (0x0010) 33d722e3fbSopenharmony_ci#define AXI_MODE_REG (0x001C) 34d722e3fbSopenharmony_ci#define DMA_SFR_BASE_ADDR_REG (0x0080) 35d722e3fbSopenharmony_ci#define DMA_COMMAND_REG (0x0084) 36d722e3fbSopenharmony_ci#define DMA_EXE_LIST_NUM_REG (0x0088) 37d722e3fbSopenharmony_ci#define DMA_STATUS_REG (0x008C) 38d722e3fbSopenharmony_ci#define DMA_HOLD_CMD_REG (0x0090) 39d722e3fbSopenharmony_ci 40d722e3fbSopenharmony_ci/* COMMAND REGISTER */ 41d722e3fbSopenharmony_ci#define BITBLT_START_REG (0x0100) 42d722e3fbSopenharmony_ci#define BITBLT_COMMAND_REG (0x0104) 43d722e3fbSopenharmony_ci#define BLEND_FUNCTION_REG (0x0108) /* VER4.1 */ 44d722e3fbSopenharmony_ci#define ROUND_MODE_REG (0x010C) /* VER4.1 */ 45d722e3fbSopenharmony_ci 46d722e3fbSopenharmony_ci/* PARAMETER SETTING REGISTER */ 47d722e3fbSopenharmony_ci#define ROTATE_REG (0x0200) 48d722e3fbSopenharmony_ci#define SRC_MASK_DIRECT_REG (0x0204) 49d722e3fbSopenharmony_ci#define DST_PAT_DIRECT_REG (0x0208) 50d722e3fbSopenharmony_ci 51d722e3fbSopenharmony_ci/* SOURCE */ 52d722e3fbSopenharmony_ci#define SRC_SELECT_REG (0x0300) 53d722e3fbSopenharmony_ci#define SRC_BASE_ADDR_REG (0x0304) 54d722e3fbSopenharmony_ci#define SRC_STRIDE_REG (0x0308) 55d722e3fbSopenharmony_ci#define SRC_COLOR_MODE_REG (0x030c) 56d722e3fbSopenharmony_ci#define SRC_LEFT_TOP_REG (0x0310) 57d722e3fbSopenharmony_ci#define SRC_RIGHT_BOTTOM_REG (0x0314) 58d722e3fbSopenharmony_ci#define SRC_PLANE2_BASE_ADDR_REG (0x0318) /* VER4.1 */ 59d722e3fbSopenharmony_ci#define SRC_REPEAT_MODE_REG (0x031C) 60d722e3fbSopenharmony_ci#define SRC_PAD_VALUE_REG (0x0320) 61d722e3fbSopenharmony_ci#define SRC_A8_RGB_EXT_REG (0x0324) 62d722e3fbSopenharmony_ci#define SRC_SCALE_CTRL_REG (0x0328) 63d722e3fbSopenharmony_ci#define SRC_XSCALE_REG (0x032C) 64d722e3fbSopenharmony_ci#define SRC_YSCALE_REG (0x0330) 65d722e3fbSopenharmony_ci 66d722e3fbSopenharmony_ci/* DESTINATION */ 67d722e3fbSopenharmony_ci#define DST_SELECT_REG (0x0400) 68d722e3fbSopenharmony_ci#define DST_BASE_ADDR_REG (0x0404) 69d722e3fbSopenharmony_ci#define DST_STRIDE_REG (0x0408) 70d722e3fbSopenharmony_ci#define DST_COLOR_MODE_REG (0x040C) 71d722e3fbSopenharmony_ci#define DST_LEFT_TOP_REG (0x0410) 72d722e3fbSopenharmony_ci#define DST_RIGHT_BOTTOM_REG (0x0414) 73d722e3fbSopenharmony_ci#define DST_PLANE2_BASE_ADDR_REG (0x0418) /* VER4.1 */ 74d722e3fbSopenharmony_ci#define DST_A8_RGB_EXT_REG (0x041C) 75d722e3fbSopenharmony_ci 76d722e3fbSopenharmony_ci/* PATTERN */ 77d722e3fbSopenharmony_ci#define PAT_BASE_ADDR_REG (0x0500) 78d722e3fbSopenharmony_ci#define PAT_SIZE_REG (0x0504) 79d722e3fbSopenharmony_ci#define PAT_COLOR_MODE_REG (0x0508) 80d722e3fbSopenharmony_ci#define PAT_OFFSET_REG (0x050C) 81d722e3fbSopenharmony_ci#define PAT_STRIDE_REG (0x0510) 82d722e3fbSopenharmony_ci 83d722e3fbSopenharmony_ci/* MASK */ 84d722e3fbSopenharmony_ci#define MASK_BASE_ADDR_REG (0x0520) 85d722e3fbSopenharmony_ci#define MASK_STRIDE_REG (0x0524) 86d722e3fbSopenharmony_ci#define MASK_LEFT_TOP_REG (0x0528) /* VER4.1 */ 87d722e3fbSopenharmony_ci#define MASK_RIGHT_BOTTOM_REG (0x052C) /* VER4.1 */ 88d722e3fbSopenharmony_ci#define MASK_MODE_REG (0x0530) /* VER4.1 */ 89d722e3fbSopenharmony_ci#define MASK_REPEAT_MODE_REG (0x0534) 90d722e3fbSopenharmony_ci#define MASK_PAD_VALUE_REG (0x0538) 91d722e3fbSopenharmony_ci#define MASK_SCALE_CTRL_REG (0x053C) 92d722e3fbSopenharmony_ci#define MASK_XSCALE_REG (0x0540) 93d722e3fbSopenharmony_ci#define MASK_YSCALE_REG (0x0544) 94d722e3fbSopenharmony_ci 95d722e3fbSopenharmony_ci/* CLIPPING WINDOW */ 96d722e3fbSopenharmony_ci#define CW_LT_REG (0x0600) 97d722e3fbSopenharmony_ci#define CW_RB_REG (0x0604) 98d722e3fbSopenharmony_ci 99d722e3fbSopenharmony_ci/* ROP & ALPHA SETTING */ 100d722e3fbSopenharmony_ci#define THIRD_OPERAND_REG (0x0610) 101d722e3fbSopenharmony_ci#define ROP4_REG (0x0614) 102d722e3fbSopenharmony_ci#define ALPHA_REG (0x0618) 103d722e3fbSopenharmony_ci 104d722e3fbSopenharmony_ci/* COLOR SETTING */ 105d722e3fbSopenharmony_ci#define FG_COLOR_REG (0x0700) 106d722e3fbSopenharmony_ci#define BG_COLOR_REG (0x0704) 107d722e3fbSopenharmony_ci#define BS_COLOR_REG (0x0708) 108d722e3fbSopenharmony_ci#define SF_COLOR_REG (0x070C) /* VER4.1 */ 109d722e3fbSopenharmony_ci 110d722e3fbSopenharmony_ci/* COLOR KEY */ 111d722e3fbSopenharmony_ci#define SRC_COLORKEY_CTRL_REG (0x0710) 112d722e3fbSopenharmony_ci#define SRC_COLORKEY_DR_MIN_REG (0x0714) 113d722e3fbSopenharmony_ci#define SRC_COLORKEY_DR_MAX_REG (0x0718) 114d722e3fbSopenharmony_ci#define DST_COLORKEY_CTRL_REG (0x071C) 115d722e3fbSopenharmony_ci#define DST_COLORKEY_DR_MIN_REG (0x0720) 116d722e3fbSopenharmony_ci#define DST_COLORKEY_DR_MAX_REG (0x0724) 117d722e3fbSopenharmony_ci/* YCbCr src Color Key */ 118d722e3fbSopenharmony_ci#define YCbCr_SRC_COLORKEY_CTRL_REG (0x0728) /* VER4.1 */ 119d722e3fbSopenharmony_ci#define YCbCr_SRC_COLORKEY_DR_MIN_REG (0x072C) /* VER4.1 */ 120d722e3fbSopenharmony_ci#define YCbCr_SRC_COLORKEY_DR_MAX_REG (0x0730) /* VER4.1 */ 121d722e3fbSopenharmony_ci/*Y CbCr dst Color Key */ 122d722e3fbSopenharmony_ci#define YCbCr_DST_COLORKEY_CTRL_REG (0x0734) /* VER4.1 */ 123d722e3fbSopenharmony_ci#define YCbCr_DST_COLORKEY_DR_MIN_REG (0x0738) /* VER4.1 */ 124d722e3fbSopenharmony_ci#define YCbCr_DST_COLORKEY_DR_MAX_REG (0x073C) /* VER4.1 */ 125d722e3fbSopenharmony_ci 126d722e3fbSopenharmony_ci#endif 127d722e3fbSopenharmony_ci 128