drivers/media/platform/rockchip/rkcif/rkcif-regs.h
Source file repositories/reference/linux-study-clean/drivers/media/platform/rockchip/rkcif/rkcif-regs.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/media/platform/rockchip/rkcif/rkcif-regs.h- Extension
.h- Size
- 4811 bytes
- Lines
- 154
- Domain
- Driver Families
- Bucket
- drivers/media
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
enum rkcif_dvp_register_indexenum rkcif_mipi_register_indexenum rkcif_mipi_id_register_index
Annotated Snippet
#ifndef _RKCIF_REGS_H
#define _RKCIF_REGS_H
#define RKCIF_REGISTER_NOTSUPPORTED 0x420000
#define RKCIF_FETCH_Y(VAL) ((VAL) & 0x1fff)
#define RKCIF_XY_COORD(x, y) (((y) << 16) | (x))
/* DVP register contents */
#define RKCIF_CTRL_ENABLE_CAPTURE BIT(0)
#define RKCIF_CTRL_MODE_PINGPONG BIT(1)
#define RKCIF_CTRL_MODE_LINELOOP BIT(2)
#define RKCIF_CTRL_AXI_BURST_16 (0xf << 12)
#define RKCIF_INTEN_FRAME_END_EN BIT(0)
#define RKCIF_INTEN_LINE_ERR_EN BIT(2)
#define RKCIF_INTEN_BUS_ERR_EN BIT(6)
#define RKCIF_INTEN_SCL_ERR_EN BIT(7)
#define RKCIF_INTEN_PST_INF_FRAME_END_EN BIT(9)
#define RKCIF_INTSTAT_CLS 0x3ff
#define RKCIF_INTSTAT_FRAME_END BIT(0)
#define RKCIF_INTSTAT_LINE_END BIT(1)
#define RKCIF_INTSTAT_LINE_ERR BIT(2)
#define RKCIF_INTSTAT_PIX_ERR BIT(3)
#define RKCIF_INTSTAT_DFIFO_OF BIT(5)
#define RKCIF_INTSTAT_BUS_ERR BIT(6)
#define RKCIF_INTSTAT_PRE_INF_FRAME_END BIT(8)
#define RKCIF_INTSTAT_PST_INF_FRAME_END BIT(9)
#define RKCIF_INTSTAT_FRAME_END_CLR BIT(0)
#define RKCIF_INTSTAT_LINE_END_CLR BIT(1)
#define RKCIF_INTSTAT_LINE_ERR_CLR BIT(2)
#define RKCIF_INTSTAT_PST_INF_FRAME_END_CLR BIT(9)
#define RKCIF_INTSTAT_ERR 0xfc
#define RKCIF_FRAME_STAT_CLS 0x00
#define RKCIF_FRAME_FRM0_STAT_CLS 0x20
#define RKCIF_FORMAT_VSY_HIGH_ACTIVE BIT(0)
#define RKCIF_FORMAT_HSY_LOW_ACTIVE BIT(1)
#define RKCIF_FORMAT_INPUT_MODE_YUV (0x00 << 2)
#define RKCIF_FORMAT_INPUT_MODE_PAL (0x02 << 2)
#define RKCIF_FORMAT_INPUT_MODE_NTSC (0x03 << 2)
#define RKCIF_FORMAT_INPUT_MODE_BT1120 (0x07 << 2)
#define RKCIF_FORMAT_INPUT_MODE_RAW (0x04 << 2)
#define RKCIF_FORMAT_INPUT_MODE_JPEG (0x05 << 2)
#define RKCIF_FORMAT_INPUT_MODE_MIPI (0x06 << 2)
#define RKCIF_FORMAT_YUV_INPUT_ORDER_UYVY (0x00 << 5)
#define RKCIF_FORMAT_YUV_INPUT_ORDER_YVYU (0x01 << 5)
#define RKCIF_FORMAT_YUV_INPUT_ORDER_VYUY (0x02 << 5)
#define RKCIF_FORMAT_YUV_INPUT_ORDER_YUYV (0x03 << 5)
#define RKCIF_FORMAT_YUV_INPUT_422 (0x00 << 7)
#define RKCIF_FORMAT_YUV_INPUT_420 BIT(7)
#define RKCIF_FORMAT_INPUT_420_ORDER_ODD BIT(8)
#define RKCIF_FORMAT_CCIR_INPUT_ORDER_EVEN BIT(9)
#define RKCIF_FORMAT_RAW_DATA_WIDTH_8 (0x00 << 11)
#define RKCIF_FORMAT_RAW_DATA_WIDTH_10 (0x01 << 11)
#define RKCIF_FORMAT_RAW_DATA_WIDTH_12 (0x02 << 11)
#define RKCIF_FORMAT_YUV_OUTPUT_422 (0x00 << 16)
#define RKCIF_FORMAT_YUV_OUTPUT_420 BIT(16)
#define RKCIF_FORMAT_OUTPUT_420_ORDER_EVEN (0x00 << 17)
#define RKCIF_FORMAT_OUTPUT_420_ORDER_ODD BIT(17)
#define RKCIF_FORMAT_RAWD_DATA_LITTLE_ENDIAN (0x00 << 18)
#define RKCIF_FORMAT_RAWD_DATA_BIG_ENDIAN BIT(18)
#define RKCIF_FORMAT_UV_STORAGE_ORDER_UVUV (0x00 << 19)
#define RKCIF_FORMAT_UV_STORAGE_ORDER_VUVU BIT(19)
#define RKCIF_FORMAT_BT1120_CLOCK_SINGLE_EDGES (0x00 << 24)
#define RKCIF_FORMAT_BT1120_CLOCK_DOUBLE_EDGES BIT(24)
#define RKCIF_FORMAT_BT1120_TRANSMIT_INTERFACE (0x00 << 25)
#define RKCIF_FORMAT_BT1120_TRANSMIT_PROGRESS BIT(25)
#define RKCIF_FORMAT_BT1120_YC_SWAP BIT(26)
#define RKCIF_SCL_CTRL_ENABLE_SCL_DOWN BIT(0)
#define RKCIF_SCL_CTRL_ENABLE_SCL_UP BIT(1)
#define RKCIF_SCL_CTRL_ENABLE_YUV_16BIT_BYPASS BIT(4)
#define RKCIF_SCL_CTRL_ENABLE_RAW_16BIT_BYPASS BIT(5)
#define RKCIF_SCL_CTRL_ENABLE_32BIT_BYPASS BIT(6)
#define RKCIF_SCL_CTRL_DISABLE_32BIT_BYPASS (0x00 << 6)
#define RKCIF_INTSTAT_F0_READY BIT(0)
#define RKCIF_INTSTAT_F1_READY BIT(1)
Annotation
- Detected declarations: `enum rkcif_dvp_register_index`, `enum rkcif_mipi_register_index`, `enum rkcif_mipi_id_register_index`.
- Atlas domain: Driver Families / drivers/media.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.