159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* 259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * TI OMAP4 ISS V4L2 Driver - Register defines 359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * 459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * Copyright (C) 2012 Texas Instruments. 559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * 659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * Author: Sergio Aguirre <sergio.a.aguirre@gmail.com> 759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * 859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * This program is free software; you can redistribute it and/or modify 959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * it under the terms of the GNU General Public License as published by 1059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * the Free Software Foundation; either version 2 of the License, or 1159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre * (at your option) any later version. 1259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre */ 1359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 1459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#ifndef _OMAP4_ISS_REGS_H_ 1559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define _OMAP4_ISS_REGS_H_ 1659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 1759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* ISS */ 1859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_REVISION 0x0 1959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 2059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_SYSCONFIG 0x10 2159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_SYSCONFIG_IDLEMODE_SHIFT 2 2259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_SYSCONFIG_IDLEMODE_FORCEIDLE 0x0 2359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_SYSCONFIG_IDLEMODE_NOIDLE 0x1 2459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_SYSCONFIG_IDLEMODE_SMARTIDLE 0x2 2559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_SYSCONFIG_SOFTRESET (1 << 0) 2659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 27ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISS_HL_IRQSTATUS_RAW(i) (0x20 + (0x10 * (i))) 28ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISS_HL_IRQSTATUS(i) (0x24 + (0x10 * (i))) 29ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISS_HL_IRQENABLE_SET(i) (0x28 + (0x10 * (i))) 30ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISS_HL_IRQENABLE_CLR(i) (0x2c + (0x10 * (i))) 3159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 32ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISS_HL_IRQ_HS_VS (1 << 17) 33ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISS_HL_IRQ_SIMCOP(i) (1 << (12 + (i))) 3459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_IRQ_BTE (1 << 11) 3559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_IRQ_CBUFF (1 << 10) 36ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISS_HL_IRQ_CCP2(i) (1 << ((i) > 3 ? 16 : 14 + (i))) 3759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_IRQ_CSIB (1 << 5) 3859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_IRQ_CSIA (1 << 4) 3959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_HL_IRQ_ISP(i) (1 << (i)) 4059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 4159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CTRL 0x80 4259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CTRL_CLK_DIV_MASK (3 << 4) 4359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CTRL_INPUT_SEL_MASK (3 << 2) 4459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CTRL_INPUT_SEL_CSI2A (0 << 2) 4559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CTRL_INPUT_SEL_CSI2B (1 << 2) 4659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CTRL_SYNC_DETECT_VS_RAISING (3 << 0) 4759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 4859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL 0x84 4959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL_VPORT2_CLK (1 << 30) 5059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL_VPORT1_CLK (1 << 29) 5159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL_VPORT0_CLK (1 << 28) 5259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL_CCP2 (1 << 4) 5359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL_CSI2_B (1 << 3) 5459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL_CSI2_A (1 << 2) 5559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL_ISP (1 << 1) 5659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKCTRL_SIMCOP (1 << 0) 5759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 5859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT 0x88 5959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT_VPORT2_CLK (1 << 30) 6059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT_VPORT1_CLK (1 << 29) 6159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT_VPORT0_CLK (1 << 28) 6259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT_CCP2 (1 << 4) 6359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT_CSI2_B (1 << 3) 6459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT_CSI2_A (1 << 2) 6559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT_ISP (1 << 1) 6659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_CLKSTAT_SIMCOP (1 << 0) 6759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 683c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISS_PM_STATUS 0x8c 6959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_PM_STATUS_CBUFF_PM_MASK (3 << 12) 7059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_PM_STATUS_BTE_PM_MASK (3 << 10) 7159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_PM_STATUS_SIMCOP_PM_MASK (3 << 8) 7259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_PM_STATUS_ISP_PM_MASK (3 << 6) 7359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_PM_STATUS_CCP2_PM_MASK (3 << 4) 7459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_PM_STATUS_CSI2_B_PM_MASK (3 << 2) 7559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISS_PM_STATUS_CSI2_A_PM_MASK (3 << 0) 7659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 7759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER0 0x0 7859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER0_HSCLOCKCONFIG (1 << 24) 793c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define REGISTER0_THS_TERM_MASK (0xff << 8) 8059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER0_THS_TERM_SHIFT 8 813c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define REGISTER0_THS_SETTLE_MASK (0xff << 0) 8259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER0_THS_SETTLE_SHIFT 0 8359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER1 0x4 8559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER1_RESET_DONE_CTRLCLK (1 << 29) 8659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER1_CLOCK_MISS_DETECTOR_STATUS (1 << 25) 873c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define REGISTER1_TCLK_TERM_MASK (0x3f << 18) 8859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER1_TCLK_TERM_SHIFT 18 8959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER1_DPHY_HS_SYNC_PATTERN_SHIFT 10 9059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER1_CTRLCLK_DIV_FACTOR_MASK (0x3 << 8) 9159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER1_CTRLCLK_DIV_FACTOR_SHIFT 8 923c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define REGISTER1_TCLK_SETTLE_MASK (0xff << 0) 9359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER1_TCLK_SETTLE_SHIFT 0 9459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 9559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define REGISTER2 0x8 9659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 9759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSCONFIG 0x10 9859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSCONFIG_MSTANDBY_MODE_MASK (3 << 12) 9959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSCONFIG_MSTANDBY_MODE_FORCE (0 << 12) 10059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSCONFIG_MSTANDBY_MODE_NO (1 << 12) 10159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSCONFIG_MSTANDBY_MODE_SMART (2 << 12) 10259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSCONFIG_SOFT_RESET (1 << 1) 10359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSCONFIG_AUTO_IDLE (1 << 0) 10459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 10559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSSTATUS 0x14 10659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_SYSSTATUS_RESET_DONE (1 << 0) 10759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 10859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_IRQSTATUS 0x18 1093c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_IRQENABLE 0x1c 11059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 11159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* Shared bits across CSI2_IRQENABLE and IRQSTATUS */ 11259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 11359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_IRQ_OCP_ERR (1 << 14) 11459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_IRQ_SHORT_PACKET (1 << 13) 11559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_IRQ_ECC_CORRECTION (1 << 12) 11659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_IRQ_ECC_NO_CORRECTION (1 << 11) 11759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_IRQ_COMPLEXIO_ERR (1 << 9) 11859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_IRQ_FIFO_OVF (1 << 8) 11959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_IRQ_CONTEXT0 (1 << 0) 12059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 12159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL 0x40 12259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_MFLAG_LEVH_MASK (7 << 20) 12359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_MFLAG_LEVH_SHIFT 20 12459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_MFLAG_LEVL_MASK (7 << 17) 12559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_MFLAG_LEVL_SHIFT 17 12659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_BURST_SIZE_EXPAND (1 << 16) 12759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_VP_CLK_EN (1 << 15) 12859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_NON_POSTED_WRITE (1 << 13) 12959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_VP_ONLY_EN (1 << 11) 13059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_VP_OUT_CTRL_MASK (3 << 8) 13159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_VP_OUT_CTRL_SHIFT 8 13259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_DBG_EN (1 << 7) 13359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_BURST_SIZE_MASK (3 << 5) 13459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_ENDIANNESS (1 << 4) 13559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_FRAME (1 << 3) 13659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_ECC_EN (1 << 2) 13759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTRL_IF_EN (1 << 0) 13859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 13959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_DBG_H 0x44 14059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 14159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG 0x50 14259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_RESET_CTRL (1 << 30) 14359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_RESET_DONE (1 << 29) 14459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWD_CMD_MASK (3 << 27) 14559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWD_CMD_OFF (0 << 27) 14659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWD_CMD_ON (1 << 27) 14759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWD_CMD_ULP (2 << 27) 14859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWD_STATUS_MASK (3 << 25) 14959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWD_STATUS_OFF (0 << 25) 15059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWD_STATUS_ON (1 << 25) 15159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWD_STATUS_ULP (2 << 25) 15259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_PWR_AUTO (1 << 24) 15359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_DATA_POL(i) (1 << (((i) * 4) + 3)) 15459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_DATA_POSITION_MASK(i) (7 << ((i) * 4)) 15559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_DATA_POSITION_SHIFT(i) ((i) * 4) 15659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_CLOCK_POL (1 << 3) 15759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_CLOCK_POSITION_MASK (7 << 0) 15859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_CFG_CLOCK_POSITION_SHIFT 0 15959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 16059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQSTATUS 0x54 16159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 1623c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_SHORT_PACKET 0x5c 16359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 16459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQENABLE 0x60 16559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 16659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* Shared bits across CSI2_COMPLEXIO_IRQENABLE and IRQSTATUS */ 16759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_STATEALLULPMEXIT (1 << 26) 16859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_STATEALLULPMENTER (1 << 25) 16959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_STATEULPM5 (1 << 24) 17059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_STATEULPM4 (1 << 23) 17159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_STATEULPM3 (1 << 22) 17259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_STATEULPM2 (1 << 21) 17359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_STATEULPM1 (1 << 20) 17459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRCONTROL5 (1 << 19) 17559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRCONTROL4 (1 << 18) 17659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRCONTROL3 (1 << 17) 17759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRCONTROL2 (1 << 16) 17859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRCONTROL1 (1 << 15) 17959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRESC5 (1 << 14) 18059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRESC4 (1 << 13) 18159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRESC3 (1 << 12) 18259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRESC2 (1 << 11) 18359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRESC1 (1 << 10) 18459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTSYNCHS5 (1 << 9) 18559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTSYNCHS4 (1 << 8) 18659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTSYNCHS3 (1 << 7) 18759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTSYNCHS2 (1 << 6) 18859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTSYNCHS1 (1 << 5) 18959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTHS5 (1 << 4) 19059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTHS4 (1 << 3) 19159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTHS3 (1 << 2) 19259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTHS2 (1 << 1) 19359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_COMPLEXIO_IRQ_ERRSOTHS1 (1 << 0) 19459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 19559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_DBG_P 0x68 19659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 1973c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_TIMING 0x6c 19859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_TIMING_FORCE_RX_MODE_IO1 (1 << 15) 19959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_TIMING_STOP_STATE_X16_IO1 (1 << 14) 20059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_TIMING_STOP_STATE_X4_IO1 (1 << 13) 2013c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_TIMING_STOP_STATE_COUNTER_IO1_MASK (0x1fff << 0) 20259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_TIMING_STOP_STATE_COUNTER_IO1_SHIFT 0 20359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 20459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1(i) (0x70 + (0x20 * i)) 20559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1_GENERIC (1 << 30) 2063c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_CTX_CTRL1_TRANSCODE (0xf << 24) 2073c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_CTX_CTRL1_FEC_NUMBER_MASK (0xff << 16) 2083c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_CTX_CTRL1_COUNT_MASK (0xff << 8) 20959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1_COUNT_SHIFT 8 21059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1_EOF_EN (1 << 7) 21159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1_EOL_EN (1 << 6) 21259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1_CS_EN (1 << 5) 21359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1_COUNT_UNLOCK (1 << 4) 21459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1_PING_PONG (1 << 3) 21559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL1_CTX_EN (1 << 0) 21659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 21759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL2(i) (0x74 + (0x20 * i)) 21859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL2_USER_DEF_MAP_SHIFT 13 21959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL2_USER_DEF_MAP_MASK \ 22059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre (0x3 << CSI2_CTX_CTRL2_USER_DEF_MAP_SHIFT) 22159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL2_VIRTUAL_ID_MASK (3 << 11) 22259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL2_VIRTUAL_ID_SHIFT 11 22359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL2_DPCM_PRED (1 << 10) 2243c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_CTX_CTRL2_FORMAT_MASK (0x3ff << 0) 22559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL2_FORMAT_SHIFT 0 22659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 22759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_DAT_OFST(i) (0x78 + (0x20 * i)) 2283c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_CTX_DAT_OFST_MASK (0xfff << 5) 22959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 2303c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_CTX_PING_ADDR(i) (0x7c + (0x20 * i)) 2313c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_CTX_PING_ADDR_MASK 0xffffffe0 23259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 23359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_PONG_ADDR(i) (0x80 + (0x20 * i)) 23459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_PONG_ADDR_MASK CSI2_CTX_PING_ADDR_MASK 23559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 23659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQENABLE(i) (0x84 + (0x20 * i)) 23759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQSTATUS(i) (0x88 + (0x20 * i)) 23859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 2393c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define CSI2_CTX_CTRL3(i) (0x8c + (0x20 * i)) 24059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL3_ALPHA_SHIFT 5 24159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_CTRL3_ALPHA_MASK \ 24259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre (0x3fff << CSI2_CTX_CTRL3_ALPHA_SHIFT) 24359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 24459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* Shared bits across CSI2_CTX_IRQENABLE and IRQSTATUS */ 24559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQ_ECC_CORRECTION (1 << 8) 24659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQ_LINE_NUMBER (1 << 7) 24759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQ_FRAME_NUMBER (1 << 6) 24859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQ_CS (1 << 5) 24959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQ_LE (1 << 3) 25059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQ_LS (1 << 2) 25159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQ_FE (1 << 1) 25259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define CSI2_CTX_IRQ_FS (1 << 0) 25359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 25459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* ISS BTE */ 25559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define BTE_CTRL (0x0030) 2563c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define BTE_CTRL_BW_LIMITER_MASK (0x3ff << 22) 25759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define BTE_CTRL_BW_LIMITER_SHIFT 22 25859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 25959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* ISS ISP_SYS1 */ 26059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_REVISION (0x0000) 26159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_SYSCONFIG (0x0010) 26259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_SYSCONFIG_STANDBYMODE_MASK (3 << 4) 26359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_SYSCONFIG_STANDBYMODE_FORCE (0 << 4) 26459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_SYSCONFIG_STANDBYMODE_NO (1 << 4) 26559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_SYSCONFIG_STANDBYMODE_SMART (2 << 4) 26659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_SYSCONFIG_SOFTRESET (1 << 1) 26759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 26859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_IRQSTATUS(i) (0x0028 + (0x10 * (i))) 2693c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISP5_IRQENABLE_SET(i) (0x002c + (0x10 * (i))) 27059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_IRQENABLE_CLR(i) (0x0030 + (0x10 * (i))) 27159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 27259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* Bits shared for ISP5_IRQ* registers */ 27359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_IRQ_OCP_ERR (1 << 31) 274ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_DPC_RNEW1 (1 << 29) 275ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_DPC_RNEW0 (1 << 28) 276ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_DPC_INIT (1 << 27) 277ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_EOF (1 << 25) 278ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_H3A_INT_EOF (1 << 24) 279ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_RSZ_INT_EOF1 (1 << 23) 28059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_IRQ_RSZ_INT_EOF0 (1 << 22) 281ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_RSZ_FIFO_IN_BLK_ERR (1 << 19) 28259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_IRQ_RSZ_FIFO_OVF (1 << 18) 283ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_RSZ_INT_CYC_RSZB (1 << 17) 28459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_IRQ_RSZ_INT_CYC_RSZA (1 << 16) 28559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_IRQ_RSZ_INT_DMA (1 << 15) 286ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_RSZ_INT_LAST_PIX (1 << 14) 287ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_RSZ_INT_REG (1 << 13) 288ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_H3A_INT (1 << 12) 289ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_AF_INT (1 << 11) 290ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_AEW_INT (1 << 10) 291ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPEIF_IRQ (1 << 9) 292ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_HST (1 << 8) 293ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_BSC (1 << 7) 294ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_DMA (1 << 6) 295ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_LAST_PIX (1 << 5) 296ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_IPIPE_INT_REG (1 << 4) 297ade1ec3736c432981fefaa07b20e818c8501a44eLaurent Pinchart#define ISP5_IRQ_ISIF_INT(i) (1 << (i)) 29859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 2993c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISP5_CTRL (0x006c) 30059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_MSTANDBY (1 << 24) 30159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_VD_PULSE_EXT (1 << 23) 30259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_MSTANDBY_WAIT (1 << 20) 30359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_BL_CLK_ENABLE (1 << 15) 30459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_ISIF_CLK_ENABLE (1 << 14) 30559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_H3A_CLK_ENABLE (1 << 13) 30659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_RSZ_CLK_ENABLE (1 << 12) 30759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_IPIPE_CLK_ENABLE (1 << 11) 30859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_IPIPEIF_CLK_ENABLE (1 << 10) 30959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_SYNC_ENABLE (1 << 9) 31059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISP5_CTRL_PSYNC_CLK_SEL (1 << 8) 31159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 31259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* ISS ISP ISIF register offsets */ 31359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_SYNCEN (0x0000) 31459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_SYNCEN_DWEN (1 << 1) 31559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_SYNCEN_SYEN (1 << 0) 31659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 31759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET (0x0004) 31859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_INPMOD_MASK (3 << 12) 31959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_INPMOD_RAW (0 << 12) 32059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_INPMOD_YCBCR16 (1 << 12) 32159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_INPMOD_YCBCR8 (2 << 12) 32259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_CCDW_MASK (7 << 8) 32359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_CCDW_2BIT (2 << 8) 32459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_CCDMD (1 << 7) 32559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_SWEN (1 << 5) 32659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_HDPOL (1 << 3) 32759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_MODESET_VDPOL (1 << 2) 32859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 32959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_SPH (0x0018) 3303c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_SPH_MASK (0x7fff) 33159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 3323c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_LNH (0x001c) 3333c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_LNH_MASK (0x7fff) 33459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 33559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_LNV (0x0028) 3363c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_LNV_MASK (0x7fff) 33759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 33859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_HSIZE (0x0034) 33959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_HSIZE_ADCR (1 << 12) 3403c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_HSIZE_HSIZE_MASK (0xfff) 34159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 3423c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_CADU (0x003c) 3433c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_CADU_MASK (0x7ff) 34459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 34559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CADL (0x0040) 3463c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_CADL_MASK (0xffff) 34759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 3483c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_CCOLP (0x004c) 34959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP0_F0_R (0 << 6) 35059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP0_F0_GR (1 << 6) 35159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP0_F0_B (3 << 6) 35259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP0_F0_GB (2 << 6) 35359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP1_F0_R (0 << 4) 35459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP1_F0_GR (1 << 4) 35559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP1_F0_B (3 << 4) 35659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP1_F0_GB (2 << 4) 35759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP2_F0_R (0 << 2) 35859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP2_F0_GR (1 << 2) 35959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP2_F0_B (3 << 2) 36059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP2_F0_GB (2 << 2) 36159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP3_F0_R (0 << 0) 36259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP3_F0_GR (1 << 0) 36359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP3_F0_B (3 << 0) 36459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCOLP_CP3_F0_GB (2 << 0) 36559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 36654d0059c7bbc26b10d11148f507c3a3a56d2bdd5Laurent Pinchart#define ISIF_VDINT(i) (0x0070 + (i) * 4) 36754d0059c7bbc26b10d11148f507c3a3a56d2bdd5Laurent Pinchart#define ISIF_VDINT_MASK (0x7fff) 36859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 36959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CGAMMAWD (0x0080) 3703c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define ISIF_CGAMMAWD_GWDI_MASK (0xf << 1) 37186efc5043269df417d6145d912c87aafbed0c5c9Laurent Pinchart#define ISIF_CGAMMAWD_GWDI(bpp) ((16 - (bpp)) << 1) 37259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 37359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCDCFG (0x0088) 37459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define ISIF_CCDCFG_Y8POS (1 << 11) 37559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 37659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* ISS ISP IPIPEIF register offsets */ 37759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_ENABLE (0x0000) 37859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 37959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1 (0x0004) 38059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC1_MASK (3 << 14) 38159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC1_VPORT_RAW (0 << 14) 38259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC1_SDRAM_RAW (1 << 14) 38359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC1_ISIF_DARKFM (2 << 14) 38459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC1_SDRAM_YUV (3 << 14) 38559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC2_MASK (3 << 2) 38659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC2_ISIF (0 << 2) 38759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC2_SDRAM_RAW (1 << 2) 38859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC2_ISIF_DARKFM (2 << 2) 38959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG1_INPSRC2_SDRAM_YUV (3 << 2) 39059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 39159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG2 (0x0030) 39259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG2_YUV8P (1 << 7) 39359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG2_YUV8 (1 << 6) 39459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG2_YUV16 (1 << 3) 39559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG2_VDPOL (1 << 2) 39659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG2_HDPOL (1 << 1) 39759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CFG2_INTSW (1 << 0) 39859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 39959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPEIF_CLKDIV (0x0040) 40059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 40159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* ISS ISP IPIPE register offsets */ 40259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_EN (0x0000) 40359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_EN_EN (1 << 0) 40459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 40559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_MODE (0x0004) 40659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_MODE_WRT (1 << 1) 40759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_MODE_OST (1 << 0) 40859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 40959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_FMT (0x0008) 41059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_FMT_RAW2YUV (0 << 0) 41159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_FMT_RAW2RAW (1 << 0) 41259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_FMT_RAW2STATS (2 << 0) 41359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_FMT_YUV2YUV (3 << 0) 41459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 4153c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_SRC_COL (0x000c) 41659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_OO_R (0 << 6) 41759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_OO_GR (1 << 6) 41859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_OO_B (3 << 6) 41959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_OO_GB (2 << 6) 42059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_OE_R (0 << 4) 42159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_OE_GR (1 << 4) 42259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_OE_B (3 << 4) 42359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_OE_GB (2 << 4) 42459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_EO_R (0 << 2) 42559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_EO_GR (1 << 2) 42659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_EO_B (3 << 2) 42759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_EO_GB (2 << 2) 42859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_EE_R (0 << 0) 42959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_EE_GR (1 << 0) 43059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_EE_B (3 << 0) 43159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_COL_EE_GB (2 << 0) 43259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 43359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_VPS (0x0010) 4343c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_SRC_VPS_MASK (0xffff) 43559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 43659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_VSZ (0x0014) 4373c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_SRC_VSZ_MASK (0x1fff) 43859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 43959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_HPS (0x0018) 4403c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_SRC_HPS_MASK (0xffff) 44159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 4423c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_SRC_HSZ (0x001c) 4433c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_SRC_HSZ_MASK (0x1ffe) 44459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 44559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SEL_SBU (0x0020) 44659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 44759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_SRC_STA (0x0024) 44859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 44959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_GCK_MMR (0x0028) 45059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_GCK_MMR_REG (1 << 0) 45159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 4523c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_GCK_PIX (0x002c) 45359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_GCK_PIX_G3 (1 << 3) 45459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_GCK_PIX_G2 (1 << 2) 45559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_GCK_PIX_G1 (1 << 1) 45659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_GCK_PIX_G0 (1 << 0) 45759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 45859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_LUT_EN (0x0034) 45959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_LUT_SEL (0x0038) 4603c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_DPC_LUT_ADR (0x003c) 46159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_LUT_SIZ (0x0040) 46259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 46359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_EN (0x0044) 46459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_TYP (0x0048) 4653c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_DPC_OTF_2_D_THR_R (0x004c) 46659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_2_D_THR_GR (0x0050) 46759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_2_D_THR_GB (0x0054) 46859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_2_D_THR_B (0x0058) 4693c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_DPC_OTF_2_C_THR_R (0x005c) 47059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_2_C_THR_GR (0x0060) 47159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_2_C_THR_GB (0x0064) 47259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_2_C_THR_B (0x0068) 4733c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_DPC_OTF_3_SHF (0x006c) 47459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_3_D_THR (0x0070) 47559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_3_D_SPL (0x0074) 47659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_3_D_MIN (0x0078) 4773c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_DPC_OTF_3_D_MAX (0x007c) 47859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_3_C_THR (0x0080) 47959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_3_C_SLP (0x0084) 48059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_DPC_OTF_3_C_MIN (0x0088) 4813c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_DPC_OTF_3_C_MAX (0x008c) 48259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 48359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_LSC_VOFT (0x0090) 48459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_LSC_VA2 (0x0094) 48559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_LSC_VA1 (0x0098) 4863c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_VS (0x009c) 4873c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_HOFT (0x00a0) 4883c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_HA2 (0x00a4) 4893c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_HA1 (0x00a8) 4903c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_HS (0x00ac) 4913c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_GAN_R (0x00b0) 4923c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_GAN_GR (0x00b4) 4933c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_GAN_GB (0x00b8) 4943c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_GAN_B (0x00bc) 4953c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_OFT_R (0x00c0) 4963c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_OFT_GR (0x00c4) 4973c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_OFT_GB (0x00c8) 4983c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_OFT_B (0x00cc) 4993c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_SHF (0x00d0) 5003c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_LSC_MAX (0x00d4) 5013c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart 5023c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_EN (0x00d8) 5033c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_TYP (0x00dc) 5043c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_THR_00 (0x00e0) 5053c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_THR_01 (0x00e4) 5063c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_THR_02 (0x00e8) 5073c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_THR_03 (0x00ec) 5083c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_THR_04 (0x00f0) 5093c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_THR_05 (0x00f4) 5103c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_THR_06 (0x00f8) 5113c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_THR_07 (0x00fc) 51259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_STR_00 (0x0100) 51359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_STR_01 (0x0104) 51459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_STR_02 (0x0108) 5153c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_STR_03 (0x010c) 51659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_STR_04 (0x0110) 51759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_STR_05 (0x0114) 51859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_STR_06 (0x0118) 5193c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_STR_07 (0x011c) 52059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_SPR_00 (0x0120) 52159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_SPR_01 (0x0124) 52259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_SPR_02 (0x0128) 5233c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_SPR_03 (0x012c) 52459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_SPR_04 (0x0130) 52559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_SPR_05 (0x0134) 52659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_SPR_06 (0x0138) 5273c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_1ST_SPR_07 (0x013c) 52859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_EDG_MIN (0x0140) 52959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_1ST_EDG_MAX (0x0144) 53059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_EN (0x0148) 5313c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_TYP (0x014c) 53259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_THR00 (0x0150) 53359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_THR01 (0x0154) 53459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_THR02 (0x0158) 5353c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_THR03 (0x015c) 53659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_THR04 (0x0160) 53759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_THR05 (0x0164) 53859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_THR06 (0x0168) 5393c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_THR07 (0x016c) 54059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_STR_00 (0x0170) 54159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_STR_01 (0x0174) 54259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_STR_02 (0x0178) 5433c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_STR_03 (0x017c) 54459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_STR_04 (0x0180) 54559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_STR_05 (0x0184) 54659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_STR_06 (0x0188) 5473c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_STR_07 (0x018c) 54859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_SPR_00 (0x0190) 54959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_SPR_01 (0x0194) 55059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_D2F_2ND_SPR_02 (0x0198) 5513c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_SPR_03 (0x019c) 5523c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_SPR_04 (0x01a0) 5533c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_SPR_05 (0x01a4) 5543c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_SPR_06 (0x01a8) 5553c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_SPR_07 (0x01ac) 5563c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_EDG_MIN (0x01b0) 5573c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_D2F_2ND_EDG_MAX (0x01b4) 5583c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart 5593c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_GIC_EN (0x01b8) 5603c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_GIC_TYP (0x01bc) 5613c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_GIC_GAN (0x01c0) 5623c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_GIC_NFGAIN (0x01c4) 5633c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_GIC_THR (0x01c8) 5643c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_GIC_SLP (0x01cc) 5653c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart 5663c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_WB2_OFT_R (0x01d0) 5673c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_WB2_OFT_GR (0x01d4) 5683c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_WB2_OFT_GB (0x01d8) 5693c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_WB2_OFT_B (0x01dc) 5703c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart 5713c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_WB2_WGN_R (0x01e0) 5723c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_WB2_WGN_GR (0x01e4) 5733c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_WB2_WGN_GB (0x01e8) 5743c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_WB2_WGN_B (0x01ec) 5753c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart 5763c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CFA_MODE (0x01f0) 5773c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CFA_2DIR_HPF_THR (0x01f4) 5783c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CFA_2DIR_HPF_SLP (0x01f8) 5793c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CFA_2DIR_MIX_THR (0x01fc) 58059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_2DIR_MIX_SLP (0x0200) 58159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_2DIR_DIR_TRH (0x0204) 58259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_2DIR_DIR_SLP (0x0208) 5833c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CFA_2DIR_NDWT (0x020c) 58459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_MONO_HUE_FRA (0x0210) 58559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_MONO_EDG_THR (0x0214) 58659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_MONO_THR_MIN (0x0218) 58759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 5883c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CFA_MONO_THR_SLP (0x021c) 58959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_MONO_SLP_MIN (0x0220) 59059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_MONO_SLP_SLP (0x0224) 59159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CFA_MONO_LPWT (0x0228) 59259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 5933c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_RGB1_MUL_RR (0x022c) 59459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_MUL_GR (0x0230) 59559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_MUL_BR (0x0234) 59659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_MUL_RG (0x0238) 5973c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_RGB1_MUL_GG (0x023c) 59859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_MUL_BG (0x0240) 59959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_MUL_RB (0x0244) 60059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_MUL_GB (0x0248) 6013c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_RGB1_MUL_BB (0x024c) 60259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_OFT_OR (0x0250) 60359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_OFT_OG (0x0254) 60459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB1_OFT_OB (0x0258) 6053c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_GMM_CFG (0x025c) 60659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_MUL_RR (0x0260) 60759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_MUL_GR (0x0264) 60859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_MUL_BR (0x0268) 6093c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_RGB2_MUL_RG (0x026c) 61059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_MUL_GG (0x0270) 61159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_MUL_BG (0x0274) 61259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_MUL_RB (0x0278) 6133c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_RGB2_MUL_GB (0x027c) 61459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_MUL_BB (0x0280) 61559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_OFT_OR (0x0284) 61659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_RGB2_OFT_OG (0x0288) 6173c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_RGB2_OFT_OB (0x028c) 61859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 61959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YUV_ADJ (0x0294) 62059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YUV_MUL_RY (0x0298) 6213c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_MUL_GY (0x029c) 6223c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_MUL_BY (0x02a0) 6233c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_MUL_RCB (0x02a4) 6243c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_MUL_GCB (0x02a8) 6253c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_MUL_BCB (0x02ac) 6263c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_MUL_RCR (0x02b0) 6273c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_MUL_GCR (0x02b4) 6283c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_MUL_BCR (0x02b8) 6293c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_OFT_Y (0x02bc) 6303c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_OFT_CB (0x02c0) 6313c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_OFT_CR (0x02c4) 6323c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart 6333c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YUV_PHS (0x02c8) 63459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YUV_PHS_LPF (1 << 1) 63559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YUV_PHS_POS (1 << 0) 63659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 6373c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_EN (0x02d4) 6383c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_TYP (0x02d8) 6393c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_SHF (0x02dc) 6403c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_MUL_00 (0x02e0) 6413c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_MUL_01 (0x02e4) 6423c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_MUL_02 (0x02e8) 6433c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_MUL_10 (0x02ec) 6443c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_MUL_11 (0x02f0) 6453c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_MUL_12 (0x02f4) 6463c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_MUL_20 (0x02f8) 6473c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_MUL_21 (0x02fc) 64859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YEE_MUL_22 (0x0300) 64959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YEE_THR (0x0304) 65059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YEE_E_GAN (0x0308) 6513c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_YEE_E_THR_1 (0x030c) 65259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YEE_E_THR_2 (0x0310) 65359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YEE_G_GAN (0x0314) 65459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_YEE_G_OFT (0x0318) 65559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 6563c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CAR_EN (0x031c) 65759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_TYP (0x0320) 65859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_SW (0x0324) 65959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_HPF_TYP (0x0328) 6603c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CAR_HPF_SHF (0x032c) 66159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_HPF_THR (0x0330) 66259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_GN1_GAN (0x0334) 66359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_GN1_SHF (0x0338) 6643c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CAR_GN1_MIN (0x033c) 66559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_GN2_GAN (0x0340) 66659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_GN2_SHF (0x0344) 66759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CAR_GN2_MIN (0x0348) 6683c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CGS_EN (0x034c) 66959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN1_L_THR (0x0350) 67059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN1_L_GAIN (0x0354) 67159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN1_L_SHF (0x0358) 6723c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CGS_GN1_L_MIN (0x035c) 67359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN1_H_THR (0x0360) 67459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN1_H_GAIN (0x0364) 67559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN1_H_SHF (0x0368) 6763c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CGS_GN1_H_MIN (0x036c) 67759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN2_L_THR (0x0370) 67859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN2_L_GAIN (0x0374) 67959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_CGS_GN2_L_SHF (0x0378) 6803c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_CGS_GN2_L_MIN (0x037c) 68159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 68259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BOX_EN (0x0380) 68359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BOX_MODE (0x0384) 68459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BOX_TYP (0x0388) 6853c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_BOX_SHF (0x038c) 68659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BOX_SDR_SAD_H (0x0390) 68759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BOX_SDR_SAD_L (0x0394) 68859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 6893c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_EN (0x039c) 6903c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_MODE (0x03a0) 6913c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_SEL (0x03a4) 6923c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_PARA (0x03a8) 6933c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_0_VPS (0x03ac) 6943c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_0_VSZ (0x03b0) 6953c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_0_HPS (0x03b4) 6963c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_0_HSZ (0x03b8) 6973c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_1_VPS (0x03bc) 6983c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_1_VSZ (0x03c0) 6993c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_1_HPS (0x03c4) 7003c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_1_HSZ (0x03c8) 7013c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_2_VPS (0x03cc) 7023c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_2_VSZ (0x03d0) 7033c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_2_HPS (0x03d4) 7043c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_2_HSZ (0x03d8) 7053c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_3_VPS (0x03dc) 7063c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_3_VSZ (0x03e0) 7073c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_3_HPS (0x03e4) 7083c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_3_HSZ (0x03e8) 7093c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_TBL (0x03ec) 7103c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_MUL_R (0x03f0) 7113c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_MUL_GR (0x03f4) 7123c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_MUL_GB (0x03f8) 7133c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_HST_MUL_B (0x03fc) 71459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 71559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_EN (0x0400) 71659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_MODE (0x0404) 71759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_TYP (0x0408) 7183c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_BSC_ROW_VCT (0x040c) 71959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_ROW_SHF (0x0410) 72059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_ROW_VPO (0x0414) 72159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_ROW_VNU (0x0418) 7223c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_BSC_ROW_VSKIP (0x041c) 72359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_ROW_HPO (0x0420) 72459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_ROW_HNU (0x0424) 72559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_ROW_HSKIP (0x0428) 7263c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_BSC_COL_VCT (0x042c) 72759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_COL_SHF (0x0430) 72859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_COL_VPO (0x0434) 72959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_COL_VNU (0x0438) 7303c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define IPIPE_BSC_COL_VSKIP (0x043c) 73159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_COL_HPO (0x0440) 73259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_COL_HNU (0x0444) 73359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_COL_HSKIP (0x0448) 73459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 73559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define IPIPE_BSC_EN (0x0400) 73659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 73759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* ISS ISP Resizer register offsets */ 73859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_REVISION (0x0000) 73959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SYSCONFIG (0x0004) 74059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SYSCONFIG_RSZB_CLK_EN (1 << 9) 74159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SYSCONFIG_RSZA_CLK_EN (1 << 8) 74259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 7433c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_IN_FIFO_CTRL (0x000c) 7443c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_IN_FIFO_CTRL_THRLD_LOW_MASK (0x1ff << 16) 74559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_IN_FIFO_CTRL_THRLD_LOW_SHIFT 16 7463c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_IN_FIFO_CTRL_THRLD_HIGH_MASK (0x1ff << 0) 74759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_IN_FIFO_CTRL_THRLD_HIGH_SHIFT 0 74859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 74959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_FRACDIV (0x0008) 7503c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_FRACDIV_MASK (0xffff) 75159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 75259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_EN (0x0020) 75359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_EN_SRC_EN (1 << 0) 75459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 75559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_MODE (0x0024) 75659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_MODE_OST (1 << 0) 75759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_MODE_WRT (1 << 1) 75859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 75959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_FMT0 (0x0028) 76059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_FMT0_BYPASS (1 << 1) 76159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_FMT0_SEL (1 << 0) 76259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 7633c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_SRC_FMT1 (0x002c) 76459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_FMT1_IN420 (1 << 1) 76559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 76659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_VPS (0x0030) 76759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_VSZ (0x0034) 76859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SRC_HPS (0x0038) 7693c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_SRC_HSZ (0x003c) 77059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_DMA_RZA (0x0040) 77159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_DMA_RZB (0x0044) 77259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_DMA_STA (0x0048) 7733c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_GCK_MMR (0x004c) 77459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_GCK_MMR_MMR (1 << 0) 77559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 77659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_GCK_SDR (0x0054) 77759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_GCK_SDR_CORE (1 << 0) 77859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 77959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_IRQ_RZA (0x0058) 7803c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_IRQ_RZA_MASK (0x1fff) 78159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 7823c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_IRQ_RZB (0x005c) 7833c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_IRQ_RZB_MASK (0x1fff) 78459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 78559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_YUV_Y_MIN (0x0060) 78659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_YUV_Y_MAX (0x0064) 78759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_YUV_C_MIN (0x0068) 7883c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_YUV_C_MAX (0x006c) 78959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 79059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SEQ (0x0074) 79159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SEQ_HRVB (1 << 2) 79259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_SEQ_HRVA (1 << 0) 79359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 79459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_EN (0x0078) 7953c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_MODE (0x007c) 79659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_MODE_ONE_SHOT (1 << 0) 79759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 79859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_420 (0x0080) 79959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_I_VPS (0x0084) 80059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_I_HPS (0x0088) 8013c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_O_VSZ (0x008c) 80259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_O_HSZ (0x0090) 80359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_V_PHS_Y (0x0094) 80459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_V_PHS_C (0x0098) 8053c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_V_DIF (0x009c) 8063c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_V_TYP (0x00a0) 8073c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_V_LPF (0x00a4) 8083c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_H_PHS (0x00a8) 8093c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_H_DIF (0x00b0) 8103c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_H_TYP (0x00b4) 8113c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_H_LPF (0x00b8) 8123c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_DWN_EN (0x00bc) 8133c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_Y_BAD_H (0x00d0) 8143c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_Y_BAD_L (0x00d4) 8153c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_Y_SAD_H (0x00d8) 8163c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_Y_SAD_L (0x00dc) 8173c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_Y_OFT (0x00e0) 8183c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_Y_PTR_S (0x00e4) 8193c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_Y_PTR_E (0x00e8) 8203c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_C_BAD_H (0x00ec) 8213c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_C_BAD_L (0x00f0) 8223c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_C_SAD_H (0x00f4) 8233c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_C_SAD_L (0x00f8) 8243c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZA_SDR_C_OFT (0x00fc) 82559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_SDR_C_PTR_S (0x0100) 82659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZA_SDR_C_PTR_E (0x0104) 82759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 82859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_EN (0x0108) 8293c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZB_MODE (0x010c) 83059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_420 (0x0110) 83159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_I_VPS (0x0114) 83259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_I_HPS (0x0118) 8333c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZB_O_VSZ (0x011c) 83459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_O_HSZ (0x0120) 83559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8363c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZB_V_DIF (0x012c) 83759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_V_TYP (0x0130) 83859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_V_LPF (0x0134) 83959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 84059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_H_DIF (0x0140) 84159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_H_TYP (0x0144) 84259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_H_LPF (0x0148) 84359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 84459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_Y_BAD_H (0x0160) 84559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_Y_BAD_L (0x0164) 84659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_Y_SAD_H (0x0168) 8473c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZB_SDR_Y_SAD_L (0x016c) 84859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_Y_OFT (0x0170) 84959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_Y_PTR_S (0x0174) 85059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_Y_PTR_E (0x0178) 8513c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RZB_SDR_C_BAD_H (0x017c) 85259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_C_BAD_L (0x0180) 85359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_C_SAD_H (0x0184) 85459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_C_SAD_L (0x0188) 85559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 85659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_C_PTR_S (0x0190) 85759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RZB_SDR_C_PTR_E (0x0194) 85859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 85959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre/* Shared Bitmasks between RZA & RZB */ 86059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_EN_EN (1 << 0) 86159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 86259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_420_CEN (1 << 1) 86359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_420_YEN (1 << 0) 86459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8653c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_I_VPS_MASK (0x1fff) 86659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8673c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_I_HPS_MASK (0x1fff) 86859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8693c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_O_VSZ_MASK (0x1fff) 87059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8713c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_O_HSZ_MASK (0x1ffe) 87259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8733c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_V_PHS_Y_MASK (0x3fff) 87459f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8753c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_V_PHS_C_MASK (0x3fff) 87659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8773c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_V_DIF_MASK (0x3fff) 87859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 87959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_V_TYP_C (1 << 1) 88059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_V_TYP_Y (1 << 0) 88159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8823c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_V_LPF_C_MASK (0x3f << 6) 88359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_V_LPF_C_SHIFT 6 8843c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_V_LPF_Y_MASK (0x3f << 0) 88559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_V_LPF_Y_SHIFT 0 88659f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8873c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_H_PHS_MASK (0x3fff) 88859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8893c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_H_DIF_MASK (0x3fff) 89059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 89159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_H_TYP_C (1 << 1) 89259f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_H_TYP_Y (1 << 0) 89359f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 8943c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_H_LPF_C_MASK (0x3f << 6) 89559f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_H_LPF_C_SHIFT 6 8963c4ee96b5fd5bb0223965fda97918fdd353d240cLaurent Pinchart#define RSZ_H_LPF_Y_MASK (0x3f << 0) 89759f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_H_LPF_Y_SHIFT 0 89859f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 89959f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#define RSZ_DWN_EN_DWN_EN (1 << 0) 90059f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre 90159f0ad8076816d13f7cba80d2b178ff5ab787e2eSergio Aguirre#endif /* _OMAP4_ISS_REGS_H_ */ 902