mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
1033 lines
44 KiB
C
1033 lines
44 KiB
C
/**
|
|
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
#pragma once
|
|
|
|
#include <stdint.h>
|
|
#include "soc/soc.h"
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/** PPA_BLEND0_CLUT_DATA_REG register
|
|
* CLUT sram data read/write register in background plane of blender
|
|
*/
|
|
#define PPA_BLEND0_CLUT_DATA_REG (DR_REG_PPA_BASE + 0x0)
|
|
/** PPA_RDWR_WORD_BLEND0_CLUT : R/W; bitpos: [31:0]; default: 0;
|
|
* Write and read data to/from CLUT RAM in background plane of blender engine through
|
|
* this field in fifo mode.
|
|
*/
|
|
#define PPA_RDWR_WORD_BLEND0_CLUT 0xFFFFFFFFU
|
|
#define PPA_RDWR_WORD_BLEND0_CLUT_M (PPA_RDWR_WORD_BLEND0_CLUT_V << PPA_RDWR_WORD_BLEND0_CLUT_S)
|
|
#define PPA_RDWR_WORD_BLEND0_CLUT_V 0xFFFFFFFFU
|
|
#define PPA_RDWR_WORD_BLEND0_CLUT_S 0
|
|
|
|
/** PPA_BLEND1_CLUT_DATA_REG register
|
|
* CLUT sram data read/write register in foreground plane of blender
|
|
*/
|
|
#define PPA_BLEND1_CLUT_DATA_REG (DR_REG_PPA_BASE + 0x4)
|
|
/** PPA_RDWR_WORD_BLEND1_CLUT : R/W; bitpos: [31:0]; default: 0;
|
|
* Write and read data to/from CLUT RAM in foreground plane of blender engine through
|
|
* this field in fifo mode.
|
|
*/
|
|
#define PPA_RDWR_WORD_BLEND1_CLUT 0xFFFFFFFFU
|
|
#define PPA_RDWR_WORD_BLEND1_CLUT_M (PPA_RDWR_WORD_BLEND1_CLUT_V << PPA_RDWR_WORD_BLEND1_CLUT_S)
|
|
#define PPA_RDWR_WORD_BLEND1_CLUT_V 0xFFFFFFFFU
|
|
#define PPA_RDWR_WORD_BLEND1_CLUT_S 0
|
|
|
|
/** PPA_CLUT_CONF_REG register
|
|
* CLUT configure register
|
|
*/
|
|
#define PPA_CLUT_CONF_REG (DR_REG_PPA_BASE + 0xc)
|
|
/** PPA_APB_FIFO_MASK : R/W; bitpos: [0]; default: 0;
|
|
* 1'b0: fifo mode to wr/rd clut0/clut1 RAM through register
|
|
* PPA_BLEND0_CLUT_DATA_REG/PPA_BLEND1_CLUT_DATA_REG. 1'b1:
|
|
* memory mode to wr/rd blend0/blend1 clut RAM. The bit 11 and 10 of the waddr
|
|
* should be 01 to access blend0 clut and should be 10 to access blend1 clut in memory mode.
|
|
*/
|
|
#define PPA_APB_FIFO_MASK (BIT(0))
|
|
#define PPA_APB_FIFO_MASK_M (PPA_APB_FIFO_MASK_V << PPA_APB_FIFO_MASK_S)
|
|
#define PPA_APB_FIFO_MASK_V 0x00000001U
|
|
#define PPA_APB_FIFO_MASK_S 0
|
|
/** PPA_BLEND0_CLUT_MEM_RST : R/W; bitpos: [1]; default: 0;
|
|
* Write 1 then write 0 to this bit to reset BLEND0 CLUT.
|
|
*/
|
|
#define PPA_BLEND0_CLUT_MEM_RST (BIT(1))
|
|
#define PPA_BLEND0_CLUT_MEM_RST_M (PPA_BLEND0_CLUT_MEM_RST_V << PPA_BLEND0_CLUT_MEM_RST_S)
|
|
#define PPA_BLEND0_CLUT_MEM_RST_V 0x00000001U
|
|
#define PPA_BLEND0_CLUT_MEM_RST_S 1
|
|
/** PPA_BLEND1_CLUT_MEM_RST : R/W; bitpos: [2]; default: 0;
|
|
* Write 1 then write 0 to this bit to reset BLEND1 CLUT.
|
|
*/
|
|
#define PPA_BLEND1_CLUT_MEM_RST (BIT(2))
|
|
#define PPA_BLEND1_CLUT_MEM_RST_M (PPA_BLEND1_CLUT_MEM_RST_V << PPA_BLEND1_CLUT_MEM_RST_S)
|
|
#define PPA_BLEND1_CLUT_MEM_RST_V 0x00000001U
|
|
#define PPA_BLEND1_CLUT_MEM_RST_S 2
|
|
/** PPA_BLEND0_CLUT_MEM_RDADDR_RST : R/W; bitpos: [3]; default: 0;
|
|
* Write 1 then write 0 to reset the read address of BLEND0 CLUT in fifo mode.
|
|
*/
|
|
#define PPA_BLEND0_CLUT_MEM_RDADDR_RST (BIT(3))
|
|
#define PPA_BLEND0_CLUT_MEM_RDADDR_RST_M (PPA_BLEND0_CLUT_MEM_RDADDR_RST_V << PPA_BLEND0_CLUT_MEM_RDADDR_RST_S)
|
|
#define PPA_BLEND0_CLUT_MEM_RDADDR_RST_V 0x00000001U
|
|
#define PPA_BLEND0_CLUT_MEM_RDADDR_RST_S 3
|
|
/** PPA_BLEND1_CLUT_MEM_RDADDR_RST : R/W; bitpos: [4]; default: 0;
|
|
* Write 1 then write 0 to reset the read address of BLEND1 CLUT in fifo mode.
|
|
*/
|
|
#define PPA_BLEND1_CLUT_MEM_RDADDR_RST (BIT(4))
|
|
#define PPA_BLEND1_CLUT_MEM_RDADDR_RST_M (PPA_BLEND1_CLUT_MEM_RDADDR_RST_V << PPA_BLEND1_CLUT_MEM_RDADDR_RST_S)
|
|
#define PPA_BLEND1_CLUT_MEM_RDADDR_RST_V 0x00000001U
|
|
#define PPA_BLEND1_CLUT_MEM_RDADDR_RST_S 4
|
|
/** PPA_BLEND0_CLUT_MEM_FORCE_PD : R/W; bitpos: [5]; default: 0;
|
|
* 1: force power down BLEND CLUT memory.
|
|
*/
|
|
#define PPA_BLEND0_CLUT_MEM_FORCE_PD (BIT(5))
|
|
#define PPA_BLEND0_CLUT_MEM_FORCE_PD_M (PPA_BLEND0_CLUT_MEM_FORCE_PD_V << PPA_BLEND0_CLUT_MEM_FORCE_PD_S)
|
|
#define PPA_BLEND0_CLUT_MEM_FORCE_PD_V 0x00000001U
|
|
#define PPA_BLEND0_CLUT_MEM_FORCE_PD_S 5
|
|
/** PPA_BLEND0_CLUT_MEM_FORCE_PU : R/W; bitpos: [6]; default: 0;
|
|
* 1: force power up BLEND CLUT memory.
|
|
*/
|
|
#define PPA_BLEND0_CLUT_MEM_FORCE_PU (BIT(6))
|
|
#define PPA_BLEND0_CLUT_MEM_FORCE_PU_M (PPA_BLEND0_CLUT_MEM_FORCE_PU_V << PPA_BLEND0_CLUT_MEM_FORCE_PU_S)
|
|
#define PPA_BLEND0_CLUT_MEM_FORCE_PU_V 0x00000001U
|
|
#define PPA_BLEND0_CLUT_MEM_FORCE_PU_S 6
|
|
/** PPA_BLEND0_CLUT_MEM_CLK_ENA : R/W; bitpos: [7]; default: 0;
|
|
* 1: Force clock on for BLEND CLUT memory.
|
|
*/
|
|
#define PPA_BLEND0_CLUT_MEM_CLK_ENA (BIT(7))
|
|
#define PPA_BLEND0_CLUT_MEM_CLK_ENA_M (PPA_BLEND0_CLUT_MEM_CLK_ENA_V << PPA_BLEND0_CLUT_MEM_CLK_ENA_S)
|
|
#define PPA_BLEND0_CLUT_MEM_CLK_ENA_V 0x00000001U
|
|
#define PPA_BLEND0_CLUT_MEM_CLK_ENA_S 7
|
|
|
|
/** PPA_INT_RAW_REG register
|
|
* Raw status interrupt
|
|
*/
|
|
#define PPA_INT_RAW_REG (DR_REG_PPA_BASE + 0x10)
|
|
/** PPA_SR_EOF_INT_RAW : R/WTC/SS; bitpos: [0]; default: 0;
|
|
* The raw interrupt bit turns to high level when scaling and rotating engine
|
|
* calculate one frame image.
|
|
*/
|
|
#define PPA_SR_EOF_INT_RAW (BIT(0))
|
|
#define PPA_SR_EOF_INT_RAW_M (PPA_SR_EOF_INT_RAW_V << PPA_SR_EOF_INT_RAW_S)
|
|
#define PPA_SR_EOF_INT_RAW_V 0x00000001U
|
|
#define PPA_SR_EOF_INT_RAW_S 0
|
|
/** PPA_BLEND_EOF_INT_RAW : R/WTC/SS; bitpos: [1]; default: 0;
|
|
* The raw interrupt bit turns to high level when blending engine calculate one frame
|
|
* image.
|
|
*/
|
|
#define PPA_BLEND_EOF_INT_RAW (BIT(1))
|
|
#define PPA_BLEND_EOF_INT_RAW_M (PPA_BLEND_EOF_INT_RAW_V << PPA_BLEND_EOF_INT_RAW_S)
|
|
#define PPA_BLEND_EOF_INT_RAW_V 0x00000001U
|
|
#define PPA_BLEND_EOF_INT_RAW_S 1
|
|
/** PPA_SR_PARAM_CFG_ERR_INT_RAW : R/WTC/SS; bitpos: [2]; default: 0;
|
|
* The raw interrupt bit turns to high level when the configured scaling and rotating
|
|
* coefficient is wrong. User can check the reasons through register
|
|
* PPA_SR_PARAM_ERR_ST_REG.
|
|
*/
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_RAW (BIT(2))
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_RAW_M (PPA_SR_PARAM_CFG_ERR_INT_RAW_V << PPA_SR_PARAM_CFG_ERR_INT_RAW_S)
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_RAW_V 0x00000001U
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_RAW_S 2
|
|
|
|
/** PPA_INT_ST_REG register
|
|
* Masked interrupt
|
|
*/
|
|
#define PPA_INT_ST_REG (DR_REG_PPA_BASE + 0x14)
|
|
/** PPA_SR_EOF_INT_ST : RO; bitpos: [0]; default: 0;
|
|
* The raw interrupt status bit for the PPA_SR_EOF_INT interrupt.
|
|
*/
|
|
#define PPA_SR_EOF_INT_ST (BIT(0))
|
|
#define PPA_SR_EOF_INT_ST_M (PPA_SR_EOF_INT_ST_V << PPA_SR_EOF_INT_ST_S)
|
|
#define PPA_SR_EOF_INT_ST_V 0x00000001U
|
|
#define PPA_SR_EOF_INT_ST_S 0
|
|
/** PPA_BLEND_EOF_INT_ST : RO; bitpos: [1]; default: 0;
|
|
* The raw interrupt status bit for the PPA_BLEND_EOF_INT interrupt.
|
|
*/
|
|
#define PPA_BLEND_EOF_INT_ST (BIT(1))
|
|
#define PPA_BLEND_EOF_INT_ST_M (PPA_BLEND_EOF_INT_ST_V << PPA_BLEND_EOF_INT_ST_S)
|
|
#define PPA_BLEND_EOF_INT_ST_V 0x00000001U
|
|
#define PPA_BLEND_EOF_INT_ST_S 1
|
|
/** PPA_SR_PARAM_CFG_ERR_INT_ST : RO; bitpos: [2]; default: 0;
|
|
* The raw interrupt status bit for the PPA_SR_RX_YSCAL_ERR_INT interrupt.
|
|
*/
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_ST (BIT(2))
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_ST_M (PPA_SR_PARAM_CFG_ERR_INT_ST_V << PPA_SR_PARAM_CFG_ERR_INT_ST_S)
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_ST_V 0x00000001U
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_ST_S 2
|
|
|
|
/** PPA_INT_ENA_REG register
|
|
* Interrupt enable bits
|
|
*/
|
|
#define PPA_INT_ENA_REG (DR_REG_PPA_BASE + 0x18)
|
|
/** PPA_SR_EOF_INT_ENA : R/W; bitpos: [0]; default: 0;
|
|
* The interrupt enable bit for the PPA_SR_EOF_INT interrupt.
|
|
*/
|
|
#define PPA_SR_EOF_INT_ENA (BIT(0))
|
|
#define PPA_SR_EOF_INT_ENA_M (PPA_SR_EOF_INT_ENA_V << PPA_SR_EOF_INT_ENA_S)
|
|
#define PPA_SR_EOF_INT_ENA_V 0x00000001U
|
|
#define PPA_SR_EOF_INT_ENA_S 0
|
|
/** PPA_BLEND_EOF_INT_ENA : R/W; bitpos: [1]; default: 0;
|
|
* The interrupt enable bit for the PPA_BLEND_EOF_INT interrupt.
|
|
*/
|
|
#define PPA_BLEND_EOF_INT_ENA (BIT(1))
|
|
#define PPA_BLEND_EOF_INT_ENA_M (PPA_BLEND_EOF_INT_ENA_V << PPA_BLEND_EOF_INT_ENA_S)
|
|
#define PPA_BLEND_EOF_INT_ENA_V 0x00000001U
|
|
#define PPA_BLEND_EOF_INT_ENA_S 1
|
|
/** PPA_SR_PARAM_CFG_ERR_INT_ENA : R/W; bitpos: [2]; default: 0;
|
|
* The interrupt enable bit for the PPA_SR_RX_YSCAL_ERR_INT interrupt.
|
|
*/
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_ENA (BIT(2))
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_ENA_M (PPA_SR_PARAM_CFG_ERR_INT_ENA_V << PPA_SR_PARAM_CFG_ERR_INT_ENA_S)
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_ENA_V 0x00000001U
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_ENA_S 2
|
|
|
|
/** PPA_INT_CLR_REG register
|
|
* Interrupt clear bits
|
|
*/
|
|
#define PPA_INT_CLR_REG (DR_REG_PPA_BASE + 0x1c)
|
|
/** PPA_SR_EOF_INT_CLR : WT; bitpos: [0]; default: 0;
|
|
* Set this bit to clear the PPA_SR_EOF_INT interrupt.
|
|
*/
|
|
#define PPA_SR_EOF_INT_CLR (BIT(0))
|
|
#define PPA_SR_EOF_INT_CLR_M (PPA_SR_EOF_INT_CLR_V << PPA_SR_EOF_INT_CLR_S)
|
|
#define PPA_SR_EOF_INT_CLR_V 0x00000001U
|
|
#define PPA_SR_EOF_INT_CLR_S 0
|
|
/** PPA_BLEND_EOF_INT_CLR : WT; bitpos: [1]; default: 0;
|
|
* Set this bit to clear the PPA_BLEND_EOF_INT interrupt.
|
|
*/
|
|
#define PPA_BLEND_EOF_INT_CLR (BIT(1))
|
|
#define PPA_BLEND_EOF_INT_CLR_M (PPA_BLEND_EOF_INT_CLR_V << PPA_BLEND_EOF_INT_CLR_S)
|
|
#define PPA_BLEND_EOF_INT_CLR_V 0x00000001U
|
|
#define PPA_BLEND_EOF_INT_CLR_S 1
|
|
/** PPA_SR_PARAM_CFG_ERR_INT_CLR : WT; bitpos: [2]; default: 0;
|
|
* Set this bit to clear the PPA_SR_RX_YSCAL_ERR_INT interrupt.
|
|
*/
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_CLR (BIT(2))
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_CLR_M (PPA_SR_PARAM_CFG_ERR_INT_CLR_V << PPA_SR_PARAM_CFG_ERR_INT_CLR_S)
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_CLR_V 0x00000001U
|
|
#define PPA_SR_PARAM_CFG_ERR_INT_CLR_S 2
|
|
|
|
/** PPA_SR_COLOR_MODE_REG register
|
|
* Scaling and rotating engine color mode register
|
|
*/
|
|
#define PPA_SR_COLOR_MODE_REG (DR_REG_PPA_BASE + 0x20)
|
|
/** PPA_SR_RX_CM : R/W; bitpos: [3:0]; default: 0;
|
|
* The source image color mode for Scaling and Rotating engine Rx. 0: ARGB8888. 1:
|
|
* RGB888. 2: RGB565. 8: YUV420. others: Reserved.
|
|
*/
|
|
#define PPA_SR_RX_CM 0x0000000FU
|
|
#define PPA_SR_RX_CM_M (PPA_SR_RX_CM_V << PPA_SR_RX_CM_S)
|
|
#define PPA_SR_RX_CM_V 0x0000000FU
|
|
#define PPA_SR_RX_CM_S 0
|
|
/** PPA_SR_TX_CM : R/W; bitpos: [7:4]; default: 0;
|
|
* The destination image color mode for Scaling and Rotating engine Tx. 0: ARGB8888.
|
|
* 1: RGB888. 2: RGB565. 8: YUV420. others: Reserved.
|
|
*/
|
|
#define PPA_SR_TX_CM 0x0000000FU
|
|
#define PPA_SR_TX_CM_M (PPA_SR_TX_CM_V << PPA_SR_TX_CM_S)
|
|
#define PPA_SR_TX_CM_V 0x0000000FU
|
|
#define PPA_SR_TX_CM_S 4
|
|
/** PPA_YUV_RX_RANGE : R/W; bitpos: [8]; default: 0;
|
|
* YUV input range when reg_sr_rx_cm is 4'd8. 0: limit range. 1: full range
|
|
*/
|
|
#define PPA_YUV_RX_RANGE (BIT(8))
|
|
#define PPA_YUV_RX_RANGE_M (PPA_YUV_RX_RANGE_V << PPA_YUV_RX_RANGE_S)
|
|
#define PPA_YUV_RX_RANGE_V 0x00000001U
|
|
#define PPA_YUV_RX_RANGE_S 8
|
|
/** PPA_YUV_TX_RANGE : R/W; bitpos: [9]; default: 0;
|
|
* YUV output range when reg_sr_tx_cm is 4'd8. 0: limit range. 1: full range
|
|
*/
|
|
#define PPA_YUV_TX_RANGE (BIT(9))
|
|
#define PPA_YUV_TX_RANGE_M (PPA_YUV_TX_RANGE_V << PPA_YUV_TX_RANGE_S)
|
|
#define PPA_YUV_TX_RANGE_V 0x00000001U
|
|
#define PPA_YUV_TX_RANGE_S 9
|
|
/** PPA_YUV2RGB_PROTOCOL : R/W; bitpos: [10]; default: 0;
|
|
* YUV to RGB protocol when reg_sr_rx_cm is 4'd8. 0: BT601. 1: BT709
|
|
*/
|
|
#define PPA_YUV2RGB_PROTOCOL (BIT(10))
|
|
#define PPA_YUV2RGB_PROTOCOL_M (PPA_YUV2RGB_PROTOCOL_V << PPA_YUV2RGB_PROTOCOL_S)
|
|
#define PPA_YUV2RGB_PROTOCOL_V 0x00000001U
|
|
#define PPA_YUV2RGB_PROTOCOL_S 10
|
|
/** PPA_RGB2YUV_PROTOCOL : R/W; bitpos: [11]; default: 0;
|
|
* RGB to YUV protocol when reg_sr_tx_cm is 4'd8. 0: BT601. 1: BT709
|
|
*/
|
|
#define PPA_RGB2YUV_PROTOCOL (BIT(11))
|
|
#define PPA_RGB2YUV_PROTOCOL_M (PPA_RGB2YUV_PROTOCOL_V << PPA_RGB2YUV_PROTOCOL_S)
|
|
#define PPA_RGB2YUV_PROTOCOL_V 0x00000001U
|
|
#define PPA_RGB2YUV_PROTOCOL_S 11
|
|
|
|
/** PPA_BLEND_COLOR_MODE_REG register
|
|
* blending engine color mode register
|
|
*/
|
|
#define PPA_BLEND_COLOR_MODE_REG (DR_REG_PPA_BASE + 0x24)
|
|
/** PPA_BLEND0_RX_CM : R/W; bitpos: [3:0]; default: 0;
|
|
* The source image color mode for background plane. 0: ARGB8888. 1: RGB888. 2:
|
|
* RGB565. 3: Reserved. 4: L8. 5: L4.
|
|
*/
|
|
#define PPA_BLEND0_RX_CM 0x0000000FU
|
|
#define PPA_BLEND0_RX_CM_M (PPA_BLEND0_RX_CM_V << PPA_BLEND0_RX_CM_S)
|
|
#define PPA_BLEND0_RX_CM_V 0x0000000FU
|
|
#define PPA_BLEND0_RX_CM_S 0
|
|
/** PPA_BLEND1_RX_CM : R/W; bitpos: [7:4]; default: 0;
|
|
* The source image color mode for foreground plane. 0: ARGB8888. 1: RGB888. 2:
|
|
* RGB565. 3: Reserved. 4: L8. 5: L4. 6: A8. 7: A4.
|
|
*/
|
|
#define PPA_BLEND1_RX_CM 0x0000000FU
|
|
#define PPA_BLEND1_RX_CM_M (PPA_BLEND1_RX_CM_V << PPA_BLEND1_RX_CM_S)
|
|
#define PPA_BLEND1_RX_CM_V 0x0000000FU
|
|
#define PPA_BLEND1_RX_CM_S 4
|
|
/** PPA_BLEND_TX_CM : R/W; bitpos: [11:8]; default: 0;
|
|
* The destination image color mode for output of blender. 0: ARGB8888. 1: RGB888. 2:
|
|
* RGB565. 3: Reserved..
|
|
*/
|
|
#define PPA_BLEND_TX_CM 0x0000000FU
|
|
#define PPA_BLEND_TX_CM_M (PPA_BLEND_TX_CM_V << PPA_BLEND_TX_CM_S)
|
|
#define PPA_BLEND_TX_CM_V 0x0000000FU
|
|
#define PPA_BLEND_TX_CM_S 8
|
|
|
|
/** PPA_SR_BYTE_ORDER_REG register
|
|
* Scaling and rotating engine byte order register
|
|
*/
|
|
#define PPA_SR_BYTE_ORDER_REG (DR_REG_PPA_BASE + 0x28)
|
|
/** PPA_SR_RX_BYTE_SWAP_EN : R/W; bitpos: [0]; default: 0;
|
|
* Set this bit to 1 the data into Rx channel 0 would be swapped in byte. The Byte0
|
|
* and Byte1 would be swapped while byte 2 and byte 3 would be swappped.
|
|
*/
|
|
#define PPA_SR_RX_BYTE_SWAP_EN (BIT(0))
|
|
#define PPA_SR_RX_BYTE_SWAP_EN_M (PPA_SR_RX_BYTE_SWAP_EN_V << PPA_SR_RX_BYTE_SWAP_EN_S)
|
|
#define PPA_SR_RX_BYTE_SWAP_EN_V 0x00000001U
|
|
#define PPA_SR_RX_BYTE_SWAP_EN_S 0
|
|
/** PPA_SR_RX_RGB_SWAP_EN : R/W; bitpos: [1]; default: 0;
|
|
* Set this bit to 1 the data into Rx channel 0 would be swapped in rgb. It means rgb
|
|
* would be swap to bgr.
|
|
*/
|
|
#define PPA_SR_RX_RGB_SWAP_EN (BIT(1))
|
|
#define PPA_SR_RX_RGB_SWAP_EN_M (PPA_SR_RX_RGB_SWAP_EN_V << PPA_SR_RX_RGB_SWAP_EN_S)
|
|
#define PPA_SR_RX_RGB_SWAP_EN_V 0x00000001U
|
|
#define PPA_SR_RX_RGB_SWAP_EN_S 1
|
|
/** PPA_SR_MACRO_BK_RO_BYPASS : R/W; bitpos: [2]; default: 0;
|
|
* Set this bit to 1 to bypass the macro block order function. This function is used
|
|
* to improve efficient accessing external memory.
|
|
*/
|
|
#define PPA_SR_MACRO_BK_RO_BYPASS (BIT(2))
|
|
#define PPA_SR_MACRO_BK_RO_BYPASS_M (PPA_SR_MACRO_BK_RO_BYPASS_V << PPA_SR_MACRO_BK_RO_BYPASS_S)
|
|
#define PPA_SR_MACRO_BK_RO_BYPASS_V 0x00000001U
|
|
#define PPA_SR_MACRO_BK_RO_BYPASS_S 2
|
|
|
|
/** PPA_BLEND_BYTE_ORDER_REG register
|
|
* Blending engine byte order register
|
|
*/
|
|
#define PPA_BLEND_BYTE_ORDER_REG (DR_REG_PPA_BASE + 0x2c)
|
|
/** PPA_BLEND0_RX_BYTE_SWAP_EN : R/W; bitpos: [0]; default: 0;
|
|
* Set this bit to 1 the data into Rx channel 0 would be swapped in byte. The Byte0
|
|
* and Byte1 would be swapped while byte 2 and byte 3 would be swappped.
|
|
*/
|
|
#define PPA_BLEND0_RX_BYTE_SWAP_EN (BIT(0))
|
|
#define PPA_BLEND0_RX_BYTE_SWAP_EN_M (PPA_BLEND0_RX_BYTE_SWAP_EN_V << PPA_BLEND0_RX_BYTE_SWAP_EN_S)
|
|
#define PPA_BLEND0_RX_BYTE_SWAP_EN_V 0x00000001U
|
|
#define PPA_BLEND0_RX_BYTE_SWAP_EN_S 0
|
|
/** PPA_BLEND1_RX_BYTE_SWAP_EN : R/W; bitpos: [1]; default: 0;
|
|
* Set this bit to 1 the data into Rx channel 0 would be swapped in byte. The Byte0
|
|
* and Byte1 would be swapped while byte 2 and byte 3 would be swappped.
|
|
*/
|
|
#define PPA_BLEND1_RX_BYTE_SWAP_EN (BIT(1))
|
|
#define PPA_BLEND1_RX_BYTE_SWAP_EN_M (PPA_BLEND1_RX_BYTE_SWAP_EN_V << PPA_BLEND1_RX_BYTE_SWAP_EN_S)
|
|
#define PPA_BLEND1_RX_BYTE_SWAP_EN_V 0x00000001U
|
|
#define PPA_BLEND1_RX_BYTE_SWAP_EN_S 1
|
|
/** PPA_BLEND0_RX_RGB_SWAP_EN : R/W; bitpos: [2]; default: 0;
|
|
* Set this bit to 1 the data into Rx channel 0 would be swapped in rgb. It means rgb
|
|
* would be swap to bgr.
|
|
*/
|
|
#define PPA_BLEND0_RX_RGB_SWAP_EN (BIT(2))
|
|
#define PPA_BLEND0_RX_RGB_SWAP_EN_M (PPA_BLEND0_RX_RGB_SWAP_EN_V << PPA_BLEND0_RX_RGB_SWAP_EN_S)
|
|
#define PPA_BLEND0_RX_RGB_SWAP_EN_V 0x00000001U
|
|
#define PPA_BLEND0_RX_RGB_SWAP_EN_S 2
|
|
/** PPA_BLEND1_RX_RGB_SWAP_EN : R/W; bitpos: [3]; default: 0;
|
|
* Set this bit to 1 the data into Rx channel 0 would be swapped in rgb. It means rgb
|
|
* would be swap to bgr.
|
|
*/
|
|
#define PPA_BLEND1_RX_RGB_SWAP_EN (BIT(3))
|
|
#define PPA_BLEND1_RX_RGB_SWAP_EN_M (PPA_BLEND1_RX_RGB_SWAP_EN_V << PPA_BLEND1_RX_RGB_SWAP_EN_S)
|
|
#define PPA_BLEND1_RX_RGB_SWAP_EN_V 0x00000001U
|
|
#define PPA_BLEND1_RX_RGB_SWAP_EN_S 3
|
|
|
|
/** PPA_BLEND_TRANS_MODE_REG register
|
|
* Blending engine mode configure register
|
|
*/
|
|
#define PPA_BLEND_TRANS_MODE_REG (DR_REG_PPA_BASE + 0x34)
|
|
/** PPA_BLEND_EN : R/W; bitpos: [0]; default: 0;
|
|
* Set this bit to enable alpha blending.
|
|
*/
|
|
#define PPA_BLEND_EN (BIT(0))
|
|
#define PPA_BLEND_EN_M (PPA_BLEND_EN_V << PPA_BLEND_EN_S)
|
|
#define PPA_BLEND_EN_V 0x00000001U
|
|
#define PPA_BLEND_EN_S 0
|
|
/** PPA_BLEND_BYPASS : R/W; bitpos: [1]; default: 0;
|
|
* Set this bit to bypass blender. Then background date would be output.
|
|
*/
|
|
#define PPA_BLEND_BYPASS (BIT(1))
|
|
#define PPA_BLEND_BYPASS_M (PPA_BLEND_BYPASS_V << PPA_BLEND_BYPASS_S)
|
|
#define PPA_BLEND_BYPASS_V 0x00000001U
|
|
#define PPA_BLEND_BYPASS_S 1
|
|
/** PPA_BLEND_FIX_PIXEL_FILL_EN : R/W; bitpos: [2]; default: 0;
|
|
* This bit is used to enable fix pixel filling. When this mode is enable only Tx
|
|
* channel is work and the output pixel is configured by PPA_OUT_FIX_PIXEL.
|
|
*/
|
|
#define PPA_BLEND_FIX_PIXEL_FILL_EN (BIT(2))
|
|
#define PPA_BLEND_FIX_PIXEL_FILL_EN_M (PPA_BLEND_FIX_PIXEL_FILL_EN_V << PPA_BLEND_FIX_PIXEL_FILL_EN_S)
|
|
#define PPA_BLEND_FIX_PIXEL_FILL_EN_V 0x00000001U
|
|
#define PPA_BLEND_FIX_PIXEL_FILL_EN_S 2
|
|
/** PPA_BLEND_TRANS_MODE_UPDATE : WT; bitpos: [3]; default: 0;
|
|
* Set this bit to update the transfer mode. Only the bit is set the transfer mode is
|
|
* valid.
|
|
*/
|
|
#define PPA_BLEND_TRANS_MODE_UPDATE (BIT(3))
|
|
#define PPA_BLEND_TRANS_MODE_UPDATE_M (PPA_BLEND_TRANS_MODE_UPDATE_V << PPA_BLEND_TRANS_MODE_UPDATE_S)
|
|
#define PPA_BLEND_TRANS_MODE_UPDATE_V 0x00000001U
|
|
#define PPA_BLEND_TRANS_MODE_UPDATE_S 3
|
|
/** PPA_BLEND_RST : R/W; bitpos: [4]; default: 0;
|
|
* write 1 then write 0 to reset blending engine.
|
|
*/
|
|
#define PPA_BLEND_RST (BIT(4))
|
|
#define PPA_BLEND_RST_M (PPA_BLEND_RST_V << PPA_BLEND_RST_S)
|
|
#define PPA_BLEND_RST_V 0x00000001U
|
|
#define PPA_BLEND_RST_S 4
|
|
|
|
/** PPA_SR_FIX_ALPHA_REG register
|
|
* Scaling and rotating engine alpha override register
|
|
*/
|
|
#define PPA_SR_FIX_ALPHA_REG (DR_REG_PPA_BASE + 0x38)
|
|
/** PPA_SR_RX_FIX_ALPHA : R/W; bitpos: [7:0]; default: 128;
|
|
* The value would replace the alpha value in received pixel for Scaling and Rotating
|
|
* engine when PPA_SR_RX_ALPHA_CONF_EN is enabled.
|
|
*/
|
|
#define PPA_SR_RX_FIX_ALPHA 0x000000FFU
|
|
#define PPA_SR_RX_FIX_ALPHA_M (PPA_SR_RX_FIX_ALPHA_V << PPA_SR_RX_FIX_ALPHA_S)
|
|
#define PPA_SR_RX_FIX_ALPHA_V 0x000000FFU
|
|
#define PPA_SR_RX_FIX_ALPHA_S 0
|
|
/** PPA_SR_RX_ALPHA_MOD : R/W; bitpos: [9:8]; default: 0;
|
|
* Alpha mode. 0/3: not replace alpha. 1: replace alpha with PPA_SR_FIX_ALPHA. 2:
|
|
* Original alpha multiply with PPA_SR_FIX_ALPHA/256.
|
|
*/
|
|
#define PPA_SR_RX_ALPHA_MOD 0x00000003U
|
|
#define PPA_SR_RX_ALPHA_MOD_M (PPA_SR_RX_ALPHA_MOD_V << PPA_SR_RX_ALPHA_MOD_S)
|
|
#define PPA_SR_RX_ALPHA_MOD_V 0x00000003U
|
|
#define PPA_SR_RX_ALPHA_MOD_S 8
|
|
/** PPA_SR_RX_ALPHA_INV : R/W; bitpos: [10]; default: 0;
|
|
* Set this bit to invert the original alpha value. When RX color mode is
|
|
* RGB565/RGB88. The original alpha value is 255.
|
|
*/
|
|
#define PPA_SR_RX_ALPHA_INV (BIT(10))
|
|
#define PPA_SR_RX_ALPHA_INV_M (PPA_SR_RX_ALPHA_INV_V << PPA_SR_RX_ALPHA_INV_S)
|
|
#define PPA_SR_RX_ALPHA_INV_V 0x00000001U
|
|
#define PPA_SR_RX_ALPHA_INV_S 10
|
|
|
|
/** PPA_BLEND_TX_SIZE_REG register
|
|
* Fix pixel filling mode image size register
|
|
*/
|
|
#define PPA_BLEND_TX_SIZE_REG (DR_REG_PPA_BASE + 0x3c)
|
|
/** PPA_BLEND_HB : R/W; bitpos: [13:0]; default: 0;
|
|
* The horizontal width of image block that would be filled in fix pixel filling mode.
|
|
* The unit is pixel
|
|
*/
|
|
#define PPA_BLEND_HB 0x00003FFFU
|
|
#define PPA_BLEND_HB_M (PPA_BLEND_HB_V << PPA_BLEND_HB_S)
|
|
#define PPA_BLEND_HB_V 0x00003FFFU
|
|
#define PPA_BLEND_HB_S 0
|
|
/** PPA_BLEND_VB : R/W; bitpos: [27:14]; default: 0;
|
|
* The vertical width of image block that would be filled in fix pixel filling mode.
|
|
* The unit is pixel
|
|
*/
|
|
#define PPA_BLEND_VB 0x00003FFFU
|
|
#define PPA_BLEND_VB_M (PPA_BLEND_VB_V << PPA_BLEND_VB_S)
|
|
#define PPA_BLEND_VB_V 0x00003FFFU
|
|
#define PPA_BLEND_VB_S 14
|
|
|
|
/** PPA_BLEND_FIX_ALPHA_REG register
|
|
* Blending engine alpha override register
|
|
*/
|
|
#define PPA_BLEND_FIX_ALPHA_REG (DR_REG_PPA_BASE + 0x40)
|
|
/** PPA_BLEND0_RX_FIX_ALPHA : R/W; bitpos: [7:0]; default: 128;
|
|
* The value would replace the alpha value in received pixel for background plane of
|
|
* blender when PPA_BLEND0_RX_ALPHA_CONF_EN is enabled.
|
|
*/
|
|
#define PPA_BLEND0_RX_FIX_ALPHA 0x000000FFU
|
|
#define PPA_BLEND0_RX_FIX_ALPHA_M (PPA_BLEND0_RX_FIX_ALPHA_V << PPA_BLEND0_RX_FIX_ALPHA_S)
|
|
#define PPA_BLEND0_RX_FIX_ALPHA_V 0x000000FFU
|
|
#define PPA_BLEND0_RX_FIX_ALPHA_S 0
|
|
/** PPA_BLEND1_RX_FIX_ALPHA : R/W; bitpos: [15:8]; default: 128;
|
|
* The value would replace the alpha value in received pixel for foreground plane of
|
|
* blender when PPA_BLEND1_RX_ALPHA_CONF_EN is enabled.
|
|
*/
|
|
#define PPA_BLEND1_RX_FIX_ALPHA 0x000000FFU
|
|
#define PPA_BLEND1_RX_FIX_ALPHA_M (PPA_BLEND1_RX_FIX_ALPHA_V << PPA_BLEND1_RX_FIX_ALPHA_S)
|
|
#define PPA_BLEND1_RX_FIX_ALPHA_V 0x000000FFU
|
|
#define PPA_BLEND1_RX_FIX_ALPHA_S 8
|
|
/** PPA_BLEND0_RX_ALPHA_MOD : R/W; bitpos: [17:16]; default: 0;
|
|
* Alpha mode. 0/3: not replace alpha. 1: replace alpha with PPA_SR_FIX_ALPHA. 2:
|
|
* Original alpha multiply with PPA_SR_FIX_ALPHA/256.
|
|
*/
|
|
#define PPA_BLEND0_RX_ALPHA_MOD 0x00000003U
|
|
#define PPA_BLEND0_RX_ALPHA_MOD_M (PPA_BLEND0_RX_ALPHA_MOD_V << PPA_BLEND0_RX_ALPHA_MOD_S)
|
|
#define PPA_BLEND0_RX_ALPHA_MOD_V 0x00000003U
|
|
#define PPA_BLEND0_RX_ALPHA_MOD_S 16
|
|
/** PPA_BLEND1_RX_ALPHA_MOD : R/W; bitpos: [19:18]; default: 0;
|
|
* Alpha mode. 0/3: not replace alpha. 1: replace alpha with PPA_SR_FIX_ALPHA. 2:
|
|
* Original alpha multiply with PPA_SR_FIX_ALPHA/256.
|
|
*/
|
|
#define PPA_BLEND1_RX_ALPHA_MOD 0x00000003U
|
|
#define PPA_BLEND1_RX_ALPHA_MOD_M (PPA_BLEND1_RX_ALPHA_MOD_V << PPA_BLEND1_RX_ALPHA_MOD_S)
|
|
#define PPA_BLEND1_RX_ALPHA_MOD_V 0x00000003U
|
|
#define PPA_BLEND1_RX_ALPHA_MOD_S 18
|
|
/** PPA_BLEND0_RX_ALPHA_INV : R/W; bitpos: [20]; default: 0;
|
|
* Set this bit to invert the original alpha value. When RX color mode is
|
|
* RGB565/RGB88. The original alpha value is 255.
|
|
*/
|
|
#define PPA_BLEND0_RX_ALPHA_INV (BIT(20))
|
|
#define PPA_BLEND0_RX_ALPHA_INV_M (PPA_BLEND0_RX_ALPHA_INV_V << PPA_BLEND0_RX_ALPHA_INV_S)
|
|
#define PPA_BLEND0_RX_ALPHA_INV_V 0x00000001U
|
|
#define PPA_BLEND0_RX_ALPHA_INV_S 20
|
|
/** PPA_BLEND1_RX_ALPHA_INV : R/W; bitpos: [21]; default: 0;
|
|
* Set this bit to invert the original alpha value. When RX color mode is
|
|
* RGB565/RGB88. The original alpha value is 255.
|
|
*/
|
|
#define PPA_BLEND1_RX_ALPHA_INV (BIT(21))
|
|
#define PPA_BLEND1_RX_ALPHA_INV_M (PPA_BLEND1_RX_ALPHA_INV_V << PPA_BLEND1_RX_ALPHA_INV_S)
|
|
#define PPA_BLEND1_RX_ALPHA_INV_V 0x00000001U
|
|
#define PPA_BLEND1_RX_ALPHA_INV_S 21
|
|
|
|
/** PPA_BLEND_RGB_REG register
|
|
* RGB color register
|
|
*/
|
|
#define PPA_BLEND_RGB_REG (DR_REG_PPA_BASE + 0x48)
|
|
/** PPA_BLEND1_RX_B : R/W; bitpos: [7:0]; default: 128;
|
|
* blue color for A4/A8 mode.
|
|
*/
|
|
#define PPA_BLEND1_RX_B 0x000000FFU
|
|
#define PPA_BLEND1_RX_B_M (PPA_BLEND1_RX_B_V << PPA_BLEND1_RX_B_S)
|
|
#define PPA_BLEND1_RX_B_V 0x000000FFU
|
|
#define PPA_BLEND1_RX_B_S 0
|
|
/** PPA_BLEND1_RX_G : R/W; bitpos: [15:8]; default: 128;
|
|
* green color for A4/A8 mode.
|
|
*/
|
|
#define PPA_BLEND1_RX_G 0x000000FFU
|
|
#define PPA_BLEND1_RX_G_M (PPA_BLEND1_RX_G_V << PPA_BLEND1_RX_G_S)
|
|
#define PPA_BLEND1_RX_G_V 0x000000FFU
|
|
#define PPA_BLEND1_RX_G_S 8
|
|
/** PPA_BLEND1_RX_R : R/W; bitpos: [23:16]; default: 128;
|
|
* red color for A4/A8 mode.
|
|
*/
|
|
#define PPA_BLEND1_RX_R 0x000000FFU
|
|
#define PPA_BLEND1_RX_R_M (PPA_BLEND1_RX_R_V << PPA_BLEND1_RX_R_S)
|
|
#define PPA_BLEND1_RX_R_V 0x000000FFU
|
|
#define PPA_BLEND1_RX_R_S 16
|
|
|
|
/** PPA_BLEND_FIX_PIXEL_REG register
|
|
* Blending engine fix pixel register
|
|
*/
|
|
#define PPA_BLEND_FIX_PIXEL_REG (DR_REG_PPA_BASE + 0x4c)
|
|
/** PPA_BLEND_TX_FIX_PIXEL : R/W; bitpos: [31:0]; default: 0;
|
|
* The configure fix pixel in fix pixel filling mode for blender engine.
|
|
*/
|
|
#define PPA_BLEND_TX_FIX_PIXEL 0xFFFFFFFFU
|
|
#define PPA_BLEND_TX_FIX_PIXEL_M (PPA_BLEND_TX_FIX_PIXEL_V << PPA_BLEND_TX_FIX_PIXEL_S)
|
|
#define PPA_BLEND_TX_FIX_PIXEL_V 0xFFFFFFFFU
|
|
#define PPA_BLEND_TX_FIX_PIXEL_S 0
|
|
|
|
/** PPA_CK_FG_LOW_REG register
|
|
* foreground color key lower threshold
|
|
*/
|
|
#define PPA_CK_FG_LOW_REG (DR_REG_PPA_BASE + 0x50)
|
|
/** PPA_COLORKEY_FG_B_LOW : R/W; bitpos: [7:0]; default: 255;
|
|
* color key lower threshold of foreground b channel
|
|
*/
|
|
#define PPA_COLORKEY_FG_B_LOW 0x000000FFU
|
|
#define PPA_COLORKEY_FG_B_LOW_M (PPA_COLORKEY_FG_B_LOW_V << PPA_COLORKEY_FG_B_LOW_S)
|
|
#define PPA_COLORKEY_FG_B_LOW_V 0x000000FFU
|
|
#define PPA_COLORKEY_FG_B_LOW_S 0
|
|
/** PPA_COLORKEY_FG_G_LOW : R/W; bitpos: [15:8]; default: 255;
|
|
* color key lower threshold of foreground g channel
|
|
*/
|
|
#define PPA_COLORKEY_FG_G_LOW 0x000000FFU
|
|
#define PPA_COLORKEY_FG_G_LOW_M (PPA_COLORKEY_FG_G_LOW_V << PPA_COLORKEY_FG_G_LOW_S)
|
|
#define PPA_COLORKEY_FG_G_LOW_V 0x000000FFU
|
|
#define PPA_COLORKEY_FG_G_LOW_S 8
|
|
/** PPA_COLORKEY_FG_R_LOW : R/W; bitpos: [23:16]; default: 255;
|
|
* color key lower threshold of foreground r channel
|
|
*/
|
|
#define PPA_COLORKEY_FG_R_LOW 0x000000FFU
|
|
#define PPA_COLORKEY_FG_R_LOW_M (PPA_COLORKEY_FG_R_LOW_V << PPA_COLORKEY_FG_R_LOW_S)
|
|
#define PPA_COLORKEY_FG_R_LOW_V 0x000000FFU
|
|
#define PPA_COLORKEY_FG_R_LOW_S 16
|
|
|
|
/** PPA_CK_FG_HIGH_REG register
|
|
* foreground color key higher threshold
|
|
*/
|
|
#define PPA_CK_FG_HIGH_REG (DR_REG_PPA_BASE + 0x54)
|
|
/** PPA_COLORKEY_FG_B_HIGH : R/W; bitpos: [7:0]; default: 0;
|
|
* color key higher threshold of foreground b channel
|
|
*/
|
|
#define PPA_COLORKEY_FG_B_HIGH 0x000000FFU
|
|
#define PPA_COLORKEY_FG_B_HIGH_M (PPA_COLORKEY_FG_B_HIGH_V << PPA_COLORKEY_FG_B_HIGH_S)
|
|
#define PPA_COLORKEY_FG_B_HIGH_V 0x000000FFU
|
|
#define PPA_COLORKEY_FG_B_HIGH_S 0
|
|
/** PPA_COLORKEY_FG_G_HIGH : R/W; bitpos: [15:8]; default: 0;
|
|
* color key higher threshold of foreground g channel
|
|
*/
|
|
#define PPA_COLORKEY_FG_G_HIGH 0x000000FFU
|
|
#define PPA_COLORKEY_FG_G_HIGH_M (PPA_COLORKEY_FG_G_HIGH_V << PPA_COLORKEY_FG_G_HIGH_S)
|
|
#define PPA_COLORKEY_FG_G_HIGH_V 0x000000FFU
|
|
#define PPA_COLORKEY_FG_G_HIGH_S 8
|
|
/** PPA_COLORKEY_FG_R_HIGH : R/W; bitpos: [23:16]; default: 0;
|
|
* color key higher threshold of foreground r channel
|
|
*/
|
|
#define PPA_COLORKEY_FG_R_HIGH 0x000000FFU
|
|
#define PPA_COLORKEY_FG_R_HIGH_M (PPA_COLORKEY_FG_R_HIGH_V << PPA_COLORKEY_FG_R_HIGH_S)
|
|
#define PPA_COLORKEY_FG_R_HIGH_V 0x000000FFU
|
|
#define PPA_COLORKEY_FG_R_HIGH_S 16
|
|
|
|
/** PPA_CK_BG_LOW_REG register
|
|
* background color key lower threshold
|
|
*/
|
|
#define PPA_CK_BG_LOW_REG (DR_REG_PPA_BASE + 0x58)
|
|
/** PPA_COLORKEY_BG_B_LOW : R/W; bitpos: [7:0]; default: 255;
|
|
* color key lower threshold of background b channel
|
|
*/
|
|
#define PPA_COLORKEY_BG_B_LOW 0x000000FFU
|
|
#define PPA_COLORKEY_BG_B_LOW_M (PPA_COLORKEY_BG_B_LOW_V << PPA_COLORKEY_BG_B_LOW_S)
|
|
#define PPA_COLORKEY_BG_B_LOW_V 0x000000FFU
|
|
#define PPA_COLORKEY_BG_B_LOW_S 0
|
|
/** PPA_COLORKEY_BG_G_LOW : R/W; bitpos: [15:8]; default: 255;
|
|
* color key lower threshold of background g channel
|
|
*/
|
|
#define PPA_COLORKEY_BG_G_LOW 0x000000FFU
|
|
#define PPA_COLORKEY_BG_G_LOW_M (PPA_COLORKEY_BG_G_LOW_V << PPA_COLORKEY_BG_G_LOW_S)
|
|
#define PPA_COLORKEY_BG_G_LOW_V 0x000000FFU
|
|
#define PPA_COLORKEY_BG_G_LOW_S 8
|
|
/** PPA_COLORKEY_BG_R_LOW : R/W; bitpos: [23:16]; default: 255;
|
|
* color key lower threshold of background r channel
|
|
*/
|
|
#define PPA_COLORKEY_BG_R_LOW 0x000000FFU
|
|
#define PPA_COLORKEY_BG_R_LOW_M (PPA_COLORKEY_BG_R_LOW_V << PPA_COLORKEY_BG_R_LOW_S)
|
|
#define PPA_COLORKEY_BG_R_LOW_V 0x000000FFU
|
|
#define PPA_COLORKEY_BG_R_LOW_S 16
|
|
|
|
/** PPA_CK_BG_HIGH_REG register
|
|
* background color key higher threshold
|
|
*/
|
|
#define PPA_CK_BG_HIGH_REG (DR_REG_PPA_BASE + 0x5c)
|
|
/** PPA_COLORKEY_BG_B_HIGH : R/W; bitpos: [7:0]; default: 0;
|
|
* color key higher threshold of background b channel
|
|
*/
|
|
#define PPA_COLORKEY_BG_B_HIGH 0x000000FFU
|
|
#define PPA_COLORKEY_BG_B_HIGH_M (PPA_COLORKEY_BG_B_HIGH_V << PPA_COLORKEY_BG_B_HIGH_S)
|
|
#define PPA_COLORKEY_BG_B_HIGH_V 0x000000FFU
|
|
#define PPA_COLORKEY_BG_B_HIGH_S 0
|
|
/** PPA_COLORKEY_BG_G_HIGH : R/W; bitpos: [15:8]; default: 0;
|
|
* color key higher threshold of background g channel
|
|
*/
|
|
#define PPA_COLORKEY_BG_G_HIGH 0x000000FFU
|
|
#define PPA_COLORKEY_BG_G_HIGH_M (PPA_COLORKEY_BG_G_HIGH_V << PPA_COLORKEY_BG_G_HIGH_S)
|
|
#define PPA_COLORKEY_BG_G_HIGH_V 0x000000FFU
|
|
#define PPA_COLORKEY_BG_G_HIGH_S 8
|
|
/** PPA_COLORKEY_BG_R_HIGH : R/W; bitpos: [23:16]; default: 0;
|
|
* color key higher threshold of background r channel
|
|
*/
|
|
#define PPA_COLORKEY_BG_R_HIGH 0x000000FFU
|
|
#define PPA_COLORKEY_BG_R_HIGH_M (PPA_COLORKEY_BG_R_HIGH_V << PPA_COLORKEY_BG_R_HIGH_S)
|
|
#define PPA_COLORKEY_BG_R_HIGH_V 0x000000FFU
|
|
#define PPA_COLORKEY_BG_R_HIGH_S 16
|
|
|
|
/** PPA_CK_DEFAULT_REG register
|
|
* default value when foreground and background both in color key range
|
|
*/
|
|
#define PPA_CK_DEFAULT_REG (DR_REG_PPA_BASE + 0x60)
|
|
/** PPA_COLORKEY_DEFAULT_B : R/W; bitpos: [7:0]; default: 0;
|
|
* default B channle value of color key
|
|
*/
|
|
#define PPA_COLORKEY_DEFAULT_B 0x000000FFU
|
|
#define PPA_COLORKEY_DEFAULT_B_M (PPA_COLORKEY_DEFAULT_B_V << PPA_COLORKEY_DEFAULT_B_S)
|
|
#define PPA_COLORKEY_DEFAULT_B_V 0x000000FFU
|
|
#define PPA_COLORKEY_DEFAULT_B_S 0
|
|
/** PPA_COLORKEY_DEFAULT_G : R/W; bitpos: [15:8]; default: 0;
|
|
* default G channle value of color key
|
|
*/
|
|
#define PPA_COLORKEY_DEFAULT_G 0x000000FFU
|
|
#define PPA_COLORKEY_DEFAULT_G_M (PPA_COLORKEY_DEFAULT_G_V << PPA_COLORKEY_DEFAULT_G_S)
|
|
#define PPA_COLORKEY_DEFAULT_G_V 0x000000FFU
|
|
#define PPA_COLORKEY_DEFAULT_G_S 8
|
|
/** PPA_COLORKEY_DEFAULT_R : R/W; bitpos: [23:16]; default: 0;
|
|
* default R channle value of color key
|
|
*/
|
|
#define PPA_COLORKEY_DEFAULT_R 0x000000FFU
|
|
#define PPA_COLORKEY_DEFAULT_R_M (PPA_COLORKEY_DEFAULT_R_V << PPA_COLORKEY_DEFAULT_R_S)
|
|
#define PPA_COLORKEY_DEFAULT_R_V 0x000000FFU
|
|
#define PPA_COLORKEY_DEFAULT_R_S 16
|
|
/** PPA_COLORKEY_FG_BG_REVERSE : R/W; bitpos: [24]; default: 0;
|
|
* when pixel in bg ck range but not in fg ck range, 0: the result is bg, 1: the
|
|
* result is fg
|
|
*/
|
|
#define PPA_COLORKEY_FG_BG_REVERSE (BIT(24))
|
|
#define PPA_COLORKEY_FG_BG_REVERSE_M (PPA_COLORKEY_FG_BG_REVERSE_V << PPA_COLORKEY_FG_BG_REVERSE_S)
|
|
#define PPA_COLORKEY_FG_BG_REVERSE_V 0x00000001U
|
|
#define PPA_COLORKEY_FG_BG_REVERSE_S 24
|
|
|
|
/** PPA_SR_SCAL_ROTATE_REG register
|
|
* Scaling and rotating coefficient register
|
|
*/
|
|
#define PPA_SR_SCAL_ROTATE_REG (DR_REG_PPA_BASE + 0x64)
|
|
/** PPA_SR_SCAL_X_INT : R/W; bitpos: [7:0]; default: 1;
|
|
* The integrated part of scaling coefficient in X direction.
|
|
*/
|
|
#define PPA_SR_SCAL_X_INT 0x000000FFU
|
|
#define PPA_SR_SCAL_X_INT_M (PPA_SR_SCAL_X_INT_V << PPA_SR_SCAL_X_INT_S)
|
|
#define PPA_SR_SCAL_X_INT_V 0x000000FFU
|
|
#define PPA_SR_SCAL_X_INT_S 0
|
|
/** PPA_SR_SCAL_X_FRAG : R/W; bitpos: [11:8]; default: 0;
|
|
* The fragment part of scaling coefficient in X direction.
|
|
*/
|
|
#define PPA_SR_SCAL_X_FRAG 0x0000000FU
|
|
#define PPA_SR_SCAL_X_FRAG_M (PPA_SR_SCAL_X_FRAG_V << PPA_SR_SCAL_X_FRAG_S)
|
|
#define PPA_SR_SCAL_X_FRAG_V 0x0000000FU
|
|
#define PPA_SR_SCAL_X_FRAG_S 8
|
|
/** PPA_SR_SCAL_Y_INT : R/W; bitpos: [19:12]; default: 1;
|
|
* The integrated part of scaling coefficient in Y direction.
|
|
*/
|
|
#define PPA_SR_SCAL_Y_INT 0x000000FFU
|
|
#define PPA_SR_SCAL_Y_INT_M (PPA_SR_SCAL_Y_INT_V << PPA_SR_SCAL_Y_INT_S)
|
|
#define PPA_SR_SCAL_Y_INT_V 0x000000FFU
|
|
#define PPA_SR_SCAL_Y_INT_S 12
|
|
/** PPA_SR_SCAL_Y_FRAG : R/W; bitpos: [23:20]; default: 0;
|
|
* The fragment part of scaling coefficient in Y direction.
|
|
*/
|
|
#define PPA_SR_SCAL_Y_FRAG 0x0000000FU
|
|
#define PPA_SR_SCAL_Y_FRAG_M (PPA_SR_SCAL_Y_FRAG_V << PPA_SR_SCAL_Y_FRAG_S)
|
|
#define PPA_SR_SCAL_Y_FRAG_V 0x0000000FU
|
|
#define PPA_SR_SCAL_Y_FRAG_S 20
|
|
/** PPA_SR_ROTATE_ANGLE : R/W; bitpos: [25:24]; default: 0;
|
|
* The rotate angle. 0: 0 degree. 1: 90 degree. 2: 180 degree. 3: 270 degree.
|
|
*/
|
|
#define PPA_SR_ROTATE_ANGLE 0x00000003U
|
|
#define PPA_SR_ROTATE_ANGLE_M (PPA_SR_ROTATE_ANGLE_V << PPA_SR_ROTATE_ANGLE_S)
|
|
#define PPA_SR_ROTATE_ANGLE_V 0x00000003U
|
|
#define PPA_SR_ROTATE_ANGLE_S 24
|
|
/** PPA_SCAL_ROTATE_RST : R/W; bitpos: [26]; default: 0;
|
|
* Write 1 then write 0 to this bit to reset scaling and rotating engine.
|
|
*/
|
|
#define PPA_SCAL_ROTATE_RST (BIT(26))
|
|
#define PPA_SCAL_ROTATE_RST_M (PPA_SCAL_ROTATE_RST_V << PPA_SCAL_ROTATE_RST_S)
|
|
#define PPA_SCAL_ROTATE_RST_V 0x00000001U
|
|
#define PPA_SCAL_ROTATE_RST_S 26
|
|
/** PPA_SCAL_ROTATE_START : WT; bitpos: [27]; default: 0;
|
|
* Write 1 to enable scaling and rotating engine after parameter is configured.
|
|
*/
|
|
#define PPA_SCAL_ROTATE_START (BIT(27))
|
|
#define PPA_SCAL_ROTATE_START_M (PPA_SCAL_ROTATE_START_V << PPA_SCAL_ROTATE_START_S)
|
|
#define PPA_SCAL_ROTATE_START_V 0x00000001U
|
|
#define PPA_SCAL_ROTATE_START_S 27
|
|
/** PPA_SR_MIRROR_X : R/W; bitpos: [28]; default: 0;
|
|
* Image mirror in X direction. 0: disable, 1: enable
|
|
*/
|
|
#define PPA_SR_MIRROR_X (BIT(28))
|
|
#define PPA_SR_MIRROR_X_M (PPA_SR_MIRROR_X_V << PPA_SR_MIRROR_X_S)
|
|
#define PPA_SR_MIRROR_X_V 0x00000001U
|
|
#define PPA_SR_MIRROR_X_S 28
|
|
/** PPA_SR_MIRROR_Y : R/W; bitpos: [29]; default: 0;
|
|
* Image mirror in Y direction. 0: disable, 1: enable
|
|
*/
|
|
#define PPA_SR_MIRROR_Y (BIT(29))
|
|
#define PPA_SR_MIRROR_Y_M (PPA_SR_MIRROR_Y_V << PPA_SR_MIRROR_Y_S)
|
|
#define PPA_SR_MIRROR_Y_V 0x00000001U
|
|
#define PPA_SR_MIRROR_Y_S 29
|
|
|
|
/** PPA_SR_MEM_PD_REG register
|
|
* SR memory power done register
|
|
*/
|
|
#define PPA_SR_MEM_PD_REG (DR_REG_PPA_BASE + 0x68)
|
|
/** PPA_SR_MEM_CLK_ENA : R/W; bitpos: [0]; default: 0;
|
|
* Set this bit to force clock enable of scaling and rotating engine's data memory.
|
|
*/
|
|
#define PPA_SR_MEM_CLK_ENA (BIT(0))
|
|
#define PPA_SR_MEM_CLK_ENA_M (PPA_SR_MEM_CLK_ENA_V << PPA_SR_MEM_CLK_ENA_S)
|
|
#define PPA_SR_MEM_CLK_ENA_V 0x00000001U
|
|
#define PPA_SR_MEM_CLK_ENA_S 0
|
|
/** PPA_SR_MEM_FORCE_PD : R/W; bitpos: [1]; default: 0;
|
|
* Set this bit to force power down scaling and rotating engine's data memory.
|
|
*/
|
|
#define PPA_SR_MEM_FORCE_PD (BIT(1))
|
|
#define PPA_SR_MEM_FORCE_PD_M (PPA_SR_MEM_FORCE_PD_V << PPA_SR_MEM_FORCE_PD_S)
|
|
#define PPA_SR_MEM_FORCE_PD_V 0x00000001U
|
|
#define PPA_SR_MEM_FORCE_PD_S 1
|
|
/** PPA_SR_MEM_FORCE_PU : R/W; bitpos: [2]; default: 0;
|
|
* Set this bit to force power up scaling and rotating engine's data memory.
|
|
*/
|
|
#define PPA_SR_MEM_FORCE_PU (BIT(2))
|
|
#define PPA_SR_MEM_FORCE_PU_M (PPA_SR_MEM_FORCE_PU_V << PPA_SR_MEM_FORCE_PU_S)
|
|
#define PPA_SR_MEM_FORCE_PU_V 0x00000001U
|
|
#define PPA_SR_MEM_FORCE_PU_S 2
|
|
|
|
/** PPA_REG_CONF_REG register
|
|
* Register clock enable register
|
|
*/
|
|
#define PPA_REG_CONF_REG (DR_REG_PPA_BASE + 0x6c)
|
|
/** PPA_CLK_EN : R/W; bitpos: [0]; default: 0;
|
|
* PPA register clock gate enable signal.
|
|
*/
|
|
#define PPA_CLK_EN (BIT(0))
|
|
#define PPA_CLK_EN_M (PPA_CLK_EN_V << PPA_CLK_EN_S)
|
|
#define PPA_CLK_EN_V 0x00000001U
|
|
#define PPA_CLK_EN_S 0
|
|
|
|
/** PPA_CLUT_CNT_REG register
|
|
* BLEND CLUT write counter register
|
|
*/
|
|
#define PPA_CLUT_CNT_REG (DR_REG_PPA_BASE + 0x70)
|
|
/** PPA_BLEND0_CLUT_CNT : RO; bitpos: [8:0]; default: 0;
|
|
* The write data counter of BLEND0 CLUT in fifo mode.
|
|
*/
|
|
#define PPA_BLEND0_CLUT_CNT 0x000001FFU
|
|
#define PPA_BLEND0_CLUT_CNT_M (PPA_BLEND0_CLUT_CNT_V << PPA_BLEND0_CLUT_CNT_S)
|
|
#define PPA_BLEND0_CLUT_CNT_V 0x000001FFU
|
|
#define PPA_BLEND0_CLUT_CNT_S 0
|
|
/** PPA_BLEND1_CLUT_CNT : RO; bitpos: [17:9]; default: 0;
|
|
* The write data counter of BLEND1 CLUT in fifo mode.
|
|
*/
|
|
#define PPA_BLEND1_CLUT_CNT 0x000001FFU
|
|
#define PPA_BLEND1_CLUT_CNT_M (PPA_BLEND1_CLUT_CNT_V << PPA_BLEND1_CLUT_CNT_S)
|
|
#define PPA_BLEND1_CLUT_CNT_V 0x000001FFU
|
|
#define PPA_BLEND1_CLUT_CNT_S 9
|
|
|
|
/** PPA_BLEND_ST_REG register
|
|
* Blending engine status register
|
|
*/
|
|
#define PPA_BLEND_ST_REG (DR_REG_PPA_BASE + 0x74)
|
|
/** PPA_BLEND_SIZE_DIFF_ST : RO; bitpos: [0]; default: 0;
|
|
* 1: indicate the size of two image is different.
|
|
*/
|
|
#define PPA_BLEND_SIZE_DIFF_ST (BIT(0))
|
|
#define PPA_BLEND_SIZE_DIFF_ST_M (PPA_BLEND_SIZE_DIFF_ST_V << PPA_BLEND_SIZE_DIFF_ST_S)
|
|
#define PPA_BLEND_SIZE_DIFF_ST_V 0x00000001U
|
|
#define PPA_BLEND_SIZE_DIFF_ST_S 0
|
|
|
|
/** PPA_SR_PARAM_ERR_ST_REG register
|
|
* Scaling and rotating coefficient error register
|
|
*/
|
|
#define PPA_SR_PARAM_ERR_ST_REG (DR_REG_PPA_BASE + 0x78)
|
|
/** PPA_TX_DSCR_VB_ERR_ST : RO; bitpos: [0]; default: 0;
|
|
* The error is that the scaled VB plus the offset of Y coordinate in 2DDMA receive
|
|
* descriptor is larger than VA in 2DDMA receive descriptor.
|
|
*/
|
|
#define PPA_TX_DSCR_VB_ERR_ST (BIT(0))
|
|
#define PPA_TX_DSCR_VB_ERR_ST_M (PPA_TX_DSCR_VB_ERR_ST_V << PPA_TX_DSCR_VB_ERR_ST_S)
|
|
#define PPA_TX_DSCR_VB_ERR_ST_V 0x00000001U
|
|
#define PPA_TX_DSCR_VB_ERR_ST_S 0
|
|
/** PPA_TX_DSCR_HB_ERR_ST : RO; bitpos: [1]; default: 0;
|
|
* The error is that the scaled HB plus the offset of X coordinate in 2DDMA receive
|
|
* descriptor is larger than HA in 2DDMA receive descriptor.
|
|
*/
|
|
#define PPA_TX_DSCR_HB_ERR_ST (BIT(1))
|
|
#define PPA_TX_DSCR_HB_ERR_ST_M (PPA_TX_DSCR_HB_ERR_ST_V << PPA_TX_DSCR_HB_ERR_ST_S)
|
|
#define PPA_TX_DSCR_HB_ERR_ST_V 0x00000001U
|
|
#define PPA_TX_DSCR_HB_ERR_ST_S 1
|
|
/** PPA_Y_RX_SCAL_EQUAL_0_ERR_ST : RO; bitpos: [2]; default: 0;
|
|
* The error is that the PPA_SR_SCAL_Y_INT and PPA_SR_CAL_Y_FRAG both are 0.
|
|
*/
|
|
#define PPA_Y_RX_SCAL_EQUAL_0_ERR_ST (BIT(2))
|
|
#define PPA_Y_RX_SCAL_EQUAL_0_ERR_ST_M (PPA_Y_RX_SCAL_EQUAL_0_ERR_ST_V << PPA_Y_RX_SCAL_EQUAL_0_ERR_ST_S)
|
|
#define PPA_Y_RX_SCAL_EQUAL_0_ERR_ST_V 0x00000001U
|
|
#define PPA_Y_RX_SCAL_EQUAL_0_ERR_ST_S 2
|
|
/** PPA_RX_DSCR_VB_ERR_ST : RO; bitpos: [3]; default: 0;
|
|
* The error is that VB in 2DDMA receive descriptor plus the offset of Y coordinate in
|
|
* 2DDMA transmit descriptor is larger than VA in 2DDMA transmit descriptor
|
|
*/
|
|
#define PPA_RX_DSCR_VB_ERR_ST (BIT(3))
|
|
#define PPA_RX_DSCR_VB_ERR_ST_M (PPA_RX_DSCR_VB_ERR_ST_V << PPA_RX_DSCR_VB_ERR_ST_S)
|
|
#define PPA_RX_DSCR_VB_ERR_ST_V 0x00000001U
|
|
#define PPA_RX_DSCR_VB_ERR_ST_S 3
|
|
/** PPA_YDST_LEN_TOO_SAMLL_ERR_ST : RO; bitpos: [4]; default: 0;
|
|
* The error is that the scaled image width is 0. For example. when source width is
|
|
* 14. scaled value is 1/16. and no rotate operation. then scaled width would be 0 as
|
|
* the result would be floored.
|
|
*/
|
|
#define PPA_YDST_LEN_TOO_SAMLL_ERR_ST (BIT(4))
|
|
#define PPA_YDST_LEN_TOO_SAMLL_ERR_ST_M (PPA_YDST_LEN_TOO_SAMLL_ERR_ST_V << PPA_YDST_LEN_TOO_SAMLL_ERR_ST_S)
|
|
#define PPA_YDST_LEN_TOO_SAMLL_ERR_ST_V 0x00000001U
|
|
#define PPA_YDST_LEN_TOO_SAMLL_ERR_ST_S 4
|
|
/** PPA_YDST_LEN_TOO_LARGE_ERR_ST : RO; bitpos: [5]; default: 0;
|
|
* The error is that the scaled width is larger than (2^13 - 1).
|
|
*/
|
|
#define PPA_YDST_LEN_TOO_LARGE_ERR_ST (BIT(5))
|
|
#define PPA_YDST_LEN_TOO_LARGE_ERR_ST_M (PPA_YDST_LEN_TOO_LARGE_ERR_ST_V << PPA_YDST_LEN_TOO_LARGE_ERR_ST_S)
|
|
#define PPA_YDST_LEN_TOO_LARGE_ERR_ST_V 0x00000001U
|
|
#define PPA_YDST_LEN_TOO_LARGE_ERR_ST_S 5
|
|
/** PPA_X_RX_SCAL_EQUAL_0_ERR_ST : RO; bitpos: [6]; default: 0;
|
|
* The error is that the scaled image height is 0.
|
|
*/
|
|
#define PPA_X_RX_SCAL_EQUAL_0_ERR_ST (BIT(6))
|
|
#define PPA_X_RX_SCAL_EQUAL_0_ERR_ST_M (PPA_X_RX_SCAL_EQUAL_0_ERR_ST_V << PPA_X_RX_SCAL_EQUAL_0_ERR_ST_S)
|
|
#define PPA_X_RX_SCAL_EQUAL_0_ERR_ST_V 0x00000001U
|
|
#define PPA_X_RX_SCAL_EQUAL_0_ERR_ST_S 6
|
|
/** PPA_RX_DSCR_HB_ERR_ST : RO; bitpos: [7]; default: 0;
|
|
* The error is that the HB in 2DDMA transmit descriptor plus the offset of X
|
|
* coordinate in 2DDMA transmit descriptor is larger than HA in 2DDMA transmit
|
|
* descriptor.
|
|
*/
|
|
#define PPA_RX_DSCR_HB_ERR_ST (BIT(7))
|
|
#define PPA_RX_DSCR_HB_ERR_ST_M (PPA_RX_DSCR_HB_ERR_ST_V << PPA_RX_DSCR_HB_ERR_ST_S)
|
|
#define PPA_RX_DSCR_HB_ERR_ST_V 0x00000001U
|
|
#define PPA_RX_DSCR_HB_ERR_ST_S 7
|
|
/** PPA_XDST_LEN_TOO_SAMLL_ERR_ST : RO; bitpos: [8]; default: 0;
|
|
* The error is that the scaled image height is 0. For example. when source height is
|
|
* 14. scaled value is 1/16. and no rotate operation. then scaled height would be 0 as
|
|
* the result would be floored.
|
|
*/
|
|
#define PPA_XDST_LEN_TOO_SAMLL_ERR_ST (BIT(8))
|
|
#define PPA_XDST_LEN_TOO_SAMLL_ERR_ST_M (PPA_XDST_LEN_TOO_SAMLL_ERR_ST_V << PPA_XDST_LEN_TOO_SAMLL_ERR_ST_S)
|
|
#define PPA_XDST_LEN_TOO_SAMLL_ERR_ST_V 0x00000001U
|
|
#define PPA_XDST_LEN_TOO_SAMLL_ERR_ST_S 8
|
|
/** PPA_XDST_LEN_TOO_LARGE_ERR_ST : RO; bitpos: [9]; default: 0;
|
|
* The error is that the scaled image height is larger than (2^13 - 1).
|
|
*/
|
|
#define PPA_XDST_LEN_TOO_LARGE_ERR_ST (BIT(9))
|
|
#define PPA_XDST_LEN_TOO_LARGE_ERR_ST_M (PPA_XDST_LEN_TOO_LARGE_ERR_ST_V << PPA_XDST_LEN_TOO_LARGE_ERR_ST_S)
|
|
#define PPA_XDST_LEN_TOO_LARGE_ERR_ST_V 0x00000001U
|
|
#define PPA_XDST_LEN_TOO_LARGE_ERR_ST_S 9
|
|
/** PPA_X_YUV420_RX_SCALE_ERR_ST : RO; bitpos: [10]; default: 0;
|
|
* The error is that the ha/hb/x param in dma2d descriptor is an odd num when enable
|
|
* yuv420 rx
|
|
*/
|
|
#define PPA_X_YUV420_RX_SCALE_ERR_ST (BIT(10))
|
|
#define PPA_X_YUV420_RX_SCALE_ERR_ST_M (PPA_X_YUV420_RX_SCALE_ERR_ST_V << PPA_X_YUV420_RX_SCALE_ERR_ST_S)
|
|
#define PPA_X_YUV420_RX_SCALE_ERR_ST_V 0x00000001U
|
|
#define PPA_X_YUV420_RX_SCALE_ERR_ST_S 10
|
|
/** PPA_Y_YUV420_RX_SCALE_ERR_ST : RO; bitpos: [11]; default: 0;
|
|
* The error is that the va/vb/y param in dma2d descriptor is an odd num when enable
|
|
* yuv420 rx
|
|
*/
|
|
#define PPA_Y_YUV420_RX_SCALE_ERR_ST (BIT(11))
|
|
#define PPA_Y_YUV420_RX_SCALE_ERR_ST_M (PPA_Y_YUV420_RX_SCALE_ERR_ST_V << PPA_Y_YUV420_RX_SCALE_ERR_ST_S)
|
|
#define PPA_Y_YUV420_RX_SCALE_ERR_ST_V 0x00000001U
|
|
#define PPA_Y_YUV420_RX_SCALE_ERR_ST_S 11
|
|
/** PPA_X_YUV420_TX_SCALE_ERR_ST : RO; bitpos: [12]; default: 0;
|
|
* The error is that the ha/hb/x param in dma2d descriptor is an odd num when enable
|
|
* yuv420 tx
|
|
*/
|
|
#define PPA_X_YUV420_TX_SCALE_ERR_ST (BIT(12))
|
|
#define PPA_X_YUV420_TX_SCALE_ERR_ST_M (PPA_X_YUV420_TX_SCALE_ERR_ST_V << PPA_X_YUV420_TX_SCALE_ERR_ST_S)
|
|
#define PPA_X_YUV420_TX_SCALE_ERR_ST_V 0x00000001U
|
|
#define PPA_X_YUV420_TX_SCALE_ERR_ST_S 12
|
|
/** PPA_Y_YUV420_TX_SCALE_ERR_ST : RO; bitpos: [13]; default: 0;
|
|
* The error is that the va/vb/y param in dma2d descriptor is an odd num when enable
|
|
* yuv420 tx
|
|
*/
|
|
#define PPA_Y_YUV420_TX_SCALE_ERR_ST (BIT(13))
|
|
#define PPA_Y_YUV420_TX_SCALE_ERR_ST_M (PPA_Y_YUV420_TX_SCALE_ERR_ST_V << PPA_Y_YUV420_TX_SCALE_ERR_ST_S)
|
|
#define PPA_Y_YUV420_TX_SCALE_ERR_ST_V 0x00000001U
|
|
#define PPA_Y_YUV420_TX_SCALE_ERR_ST_S 13
|
|
|
|
/** PPA_SR_STATUS_REG register
|
|
* SR FSM register
|
|
*/
|
|
#define PPA_SR_STATUS_REG (DR_REG_PPA_BASE + 0x7c)
|
|
/** PPA_SR_RX_DSCR_SAMPLE_STATE : RO; bitpos: [1:0]; default: 0;
|
|
* Reserved.
|
|
*/
|
|
#define PPA_SR_RX_DSCR_SAMPLE_STATE 0x00000003U
|
|
#define PPA_SR_RX_DSCR_SAMPLE_STATE_M (PPA_SR_RX_DSCR_SAMPLE_STATE_V << PPA_SR_RX_DSCR_SAMPLE_STATE_S)
|
|
#define PPA_SR_RX_DSCR_SAMPLE_STATE_V 0x00000003U
|
|
#define PPA_SR_RX_DSCR_SAMPLE_STATE_S 0
|
|
/** PPA_SR_RX_SCAN_STATE : RO; bitpos: [3:2]; default: 0;
|
|
* Reserved.
|
|
*/
|
|
#define PPA_SR_RX_SCAN_STATE 0x00000003U
|
|
#define PPA_SR_RX_SCAN_STATE_M (PPA_SR_RX_SCAN_STATE_V << PPA_SR_RX_SCAN_STATE_S)
|
|
#define PPA_SR_RX_SCAN_STATE_V 0x00000003U
|
|
#define PPA_SR_RX_SCAN_STATE_S 2
|
|
/** PPA_SR_TX_DSCR_SAMPLE_STATE : RO; bitpos: [5:4]; default: 0;
|
|
* Reserved.
|
|
*/
|
|
#define PPA_SR_TX_DSCR_SAMPLE_STATE 0x00000003U
|
|
#define PPA_SR_TX_DSCR_SAMPLE_STATE_M (PPA_SR_TX_DSCR_SAMPLE_STATE_V << PPA_SR_TX_DSCR_SAMPLE_STATE_S)
|
|
#define PPA_SR_TX_DSCR_SAMPLE_STATE_V 0x00000003U
|
|
#define PPA_SR_TX_DSCR_SAMPLE_STATE_S 4
|
|
/** PPA_SR_TX_SCAN_STATE : RO; bitpos: [8:6]; default: 0;
|
|
* Reserved.
|
|
*/
|
|
#define PPA_SR_TX_SCAN_STATE 0x00000007U
|
|
#define PPA_SR_TX_SCAN_STATE_M (PPA_SR_TX_SCAN_STATE_V << PPA_SR_TX_SCAN_STATE_S)
|
|
#define PPA_SR_TX_SCAN_STATE_V 0x00000007U
|
|
#define PPA_SR_TX_SCAN_STATE_S 6
|
|
|
|
/** PPA_ECO_LOW_REG register
|
|
* Reserved.
|
|
*/
|
|
#define PPA_ECO_LOW_REG (DR_REG_PPA_BASE + 0x80)
|
|
/** PPA_RND_ECO_LOW : R/W; bitpos: [31:0]; default: 0;
|
|
* Reserved.
|
|
*/
|
|
#define PPA_RND_ECO_LOW 0xFFFFFFFFU
|
|
#define PPA_RND_ECO_LOW_M (PPA_RND_ECO_LOW_V << PPA_RND_ECO_LOW_S)
|
|
#define PPA_RND_ECO_LOW_V 0xFFFFFFFFU
|
|
#define PPA_RND_ECO_LOW_S 0
|
|
|
|
/** PPA_ECO_HIGH_REG register
|
|
* Reserved.
|
|
*/
|
|
#define PPA_ECO_HIGH_REG (DR_REG_PPA_BASE + 0x84)
|
|
/** PPA_RND_ECO_HIGH : R/W; bitpos: [31:0]; default: 4294967295;
|
|
* Reserved.
|
|
*/
|
|
#define PPA_RND_ECO_HIGH 0xFFFFFFFFU
|
|
#define PPA_RND_ECO_HIGH_M (PPA_RND_ECO_HIGH_V << PPA_RND_ECO_HIGH_S)
|
|
#define PPA_RND_ECO_HIGH_V 0xFFFFFFFFU
|
|
#define PPA_RND_ECO_HIGH_S 0
|
|
|
|
/** PPA_ECO_CELL_CTRL_REG register
|
|
* Reserved.
|
|
*/
|
|
#define PPA_ECO_CELL_CTRL_REG (DR_REG_PPA_BASE + 0x88)
|
|
/** PPA_RDN_RESULT : RO; bitpos: [0]; default: 0;
|
|
* Reserved.
|
|
*/
|
|
#define PPA_RDN_RESULT (BIT(0))
|
|
#define PPA_RDN_RESULT_M (PPA_RDN_RESULT_V << PPA_RDN_RESULT_S)
|
|
#define PPA_RDN_RESULT_V 0x00000001U
|
|
#define PPA_RDN_RESULT_S 0
|
|
/** PPA_RDN_ENA : R/W; bitpos: [1]; default: 0;
|
|
* Reserved.
|
|
*/
|
|
#define PPA_RDN_ENA (BIT(1))
|
|
#define PPA_RDN_ENA_M (PPA_RDN_ENA_V << PPA_RDN_ENA_S)
|
|
#define PPA_RDN_ENA_V 0x00000001U
|
|
#define PPA_RDN_ENA_S 1
|
|
|
|
/** PPA_SRAM_CTRL_REG register
|
|
* PPA SRAM Control Register
|
|
*/
|
|
#define PPA_SRAM_CTRL_REG (DR_REG_PPA_BASE + 0x8c)
|
|
/** PPA_MEM_AUX_CTRL : R/W; bitpos: [13:0]; default: 4896;
|
|
* Control signals
|
|
*/
|
|
#define PPA_MEM_AUX_CTRL 0x00003FFFU
|
|
#define PPA_MEM_AUX_CTRL_M (PPA_MEM_AUX_CTRL_V << PPA_MEM_AUX_CTRL_S)
|
|
#define PPA_MEM_AUX_CTRL_V 0x00003FFFU
|
|
#define PPA_MEM_AUX_CTRL_S 0
|
|
|
|
/** PPA_DATE_REG register
|
|
* PPA Version register
|
|
*/
|
|
#define PPA_DATE_REG (DR_REG_PPA_BASE + 0x100)
|
|
/** PPA_DATE : R/W; bitpos: [31:0]; default: 36716609;
|
|
* register version.
|
|
*/
|
|
#define PPA_DATE 0xFFFFFFFFU
|
|
#define PPA_DATE_M (PPA_DATE_V << PPA_DATE_S)
|
|
#define PPA_DATE_V 0xFFFFFFFFU
|
|
#define PPA_DATE_S 0
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|