mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 03:15:31 +09:00
video: rockchip: mpp: iep2: Add work mode setting
check work mode when irq Change-Id: I46c772e5c8608d8c7aa7e3bec0331da1af4832d3 Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
This commit is contained in:
@@ -368,6 +368,8 @@ static void iep2_config(struct mpp_dev *mpp, struct iep_task *task)
|
|||||||
| IEP2_REG_DEBUG_DATA_EN;
|
| IEP2_REG_DEBUG_DATA_EN;
|
||||||
mpp_write_relaxed(mpp, IEP2_REG_IEP_CONFIG0, reg);
|
mpp_write_relaxed(mpp, IEP2_REG_IEP_CONFIG0, reg);
|
||||||
|
|
||||||
|
mpp_write_relaxed(mpp, IEP2_REG_WORK_MODE, IEP2_REG_IEP2_MODE);
|
||||||
|
|
||||||
reg = IEP2_REG_SRC_PIC_WIDTH(width - 1)
|
reg = IEP2_REG_SRC_PIC_WIDTH(width - 1)
|
||||||
| IEP2_REG_SRC_PIC_HEIGHT(height - 1);
|
| IEP2_REG_SRC_PIC_HEIGHT(height - 1);
|
||||||
mpp_write_relaxed(mpp, IEP2_REG_SRC_IMG_SIZE, reg);
|
mpp_write_relaxed(mpp, IEP2_REG_SRC_IMG_SIZE, reg);
|
||||||
@@ -615,6 +617,10 @@ static int iep2_run(struct mpp_dev *mpp,
|
|||||||
|
|
||||||
static int iep2_irq(struct mpp_dev *mpp)
|
static int iep2_irq(struct mpp_dev *mpp)
|
||||||
{
|
{
|
||||||
|
u32 work_mode = mpp_read(mpp, IEP2_REG_WORK_MODE);
|
||||||
|
|
||||||
|
if (!(work_mode & IEP2_REG_IEP2_MODE))
|
||||||
|
return IRQ_NONE;
|
||||||
mpp->irq_status = mpp_read(mpp, IEP2_REG_INT_STS);
|
mpp->irq_status = mpp_read(mpp, IEP2_REG_INT_STS);
|
||||||
mpp_write(mpp, IEP2_REG_INT_CLR, 0xffffffff);
|
mpp_write(mpp, IEP2_REG_INT_CLR, 0xffffffff);
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,8 @@
|
|||||||
#define IEP2_REG_DST_FMT(x) (((x) & 3) << 8)
|
#define IEP2_REG_DST_FMT(x) (((x) & 3) << 8)
|
||||||
#define IEP2_REG_SRC_YUV_SWAP(x) (((x) & 3) << 4)
|
#define IEP2_REG_SRC_YUV_SWAP(x) (((x) & 3) << 4)
|
||||||
#define IEP2_REG_SRC_FMT(x) ((x) & 3)
|
#define IEP2_REG_SRC_FMT(x) ((x) & 3)
|
||||||
|
#define IEP2_REG_WORK_MODE 0x0008
|
||||||
|
#define IEP2_REG_IEP2_MODE BIT(0)
|
||||||
#define IEP2_REG_GATING_CTRL 0x0010
|
#define IEP2_REG_GATING_CTRL 0x0010
|
||||||
#define IEP2_REG_REG_CLK_ON BIT(11)
|
#define IEP2_REG_REG_CLK_ON BIT(11)
|
||||||
#define IEP2_REG_DMA_CLK_ON BIT(10)
|
#define IEP2_REG_DMA_CLK_ON BIT(10)
|
||||||
|
|||||||
Reference in New Issue
Block a user