/* * Copyright (C) 2012 Samsung Electronics Co.Ltd * Authors: Joonyoung Shim <jy0922.shim@samsung.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundationr */#include<linux/kernel.h>#include<linux/module.h>#include<linux/clk.h>#include<linux/err.h>#include<linux/interrupt.h>#include<linux/io.h>#include<linux/platform_device.h>#include<linux/pm_runtime.h>#include<linux/slab.h>#include<linux/workqueue.h>#include<linux/dma-mapping.h>#include<linux/dma-attrs.h>#include<linux/of.h>#include<drm/drmP.h>#include<drm/exynos_drm.h>#include"exynos_drm_drv.h"#include"exynos_drm_gem.h"#include"exynos_drm_iommu.h"#define G2D_HW_MAJOR_VER 4#define G2D_HW_MINOR_VER 1/* vaild register range set from user: 0x0104 ~ 0x0880 */#define G2D_VALID_START 0x0104#define G2D_VALID_END 0x0880/* general registers */#define G2D_SOFT_RESET 0x0000#define G2D_INTEN 0x0004#define G2D_INTC_PEND 0x000C#define G2D_DMA_SFR_BASE_ADDR 0x0080#define G2D_DMA_COMMAND 0x0084#define G2D_DMA_STATUS 0x008C