drivers/gpu/drm/amd/display/dc/gpio/ddc_regs.h
Source file repositories/reference/linux-study-clean/drivers/gpu/drm/amd/display/dc/gpio/ddc_regs.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/gpu/drm/amd/display/dc/gpio/ddc_regs.h- Extension
.h- Size
- 5667 bytes
- Lines
- 202
- Domain
- Driver Families
- Bucket
- drivers/gpu
- 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
gpio_regs.h
Detected Declarations
struct ddc_registersstruct ddc_sh_mask
Annotated Snippet
struct ddc_registers {
struct gpio_registers gpio;
uint32_t ddc_setup;
uint32_t phy_aux_cntl;
uint32_t dc_gpio_aux_ctrl_5;
};
struct ddc_sh_mask {
/* i2c_dd_setup */
uint32_t DC_I2C_DDC1_ENABLE;
uint32_t DC_I2C_DDC1_EDID_DETECT_ENABLE;
uint32_t DC_I2C_DDC1_EDID_DETECT_MODE;
/* ddc1_mask */
uint32_t DC_GPIO_DDC1DATA_PD_EN;
uint32_t DC_GPIO_DDC1CLK_PD_EN;
uint32_t AUX_PAD1_MODE;
/* i2cpad_mask */
uint32_t DC_GPIO_SDA_PD_DIS;
uint32_t DC_GPIO_SCL_PD_DIS;
//phy_aux_cntl
uint32_t AUX_PAD_RXSEL;
uint32_t DDC_PAD_I2CMODE;
};
/*** following in dc_resource */
#define ddc_data_regs(id) \
{\
DDC_REG_LIST(DATA, id)\
}
#define ddc_clk_regs(id) \
{\
DDC_REG_LIST(CLK, id)\
}
#define ddc_vga_data_regs \
{\
DDC_VGA_REG_LIST(DATA)\
}
#define ddc_vga_clk_regs \
{\
DDC_VGA_REG_LIST(CLK)\
}
#define ddc_i2c_data_regs \
{\
DDC_I2C_REG_LIST(SDA)\
}
#define ddc_i2c_clk_regs \
{\
DDC_I2C_REG_LIST(SCL)\
}
#define ddc_data_regs_dcn2(id) \
{\
DDC_REG_LIST_DCN2(DATA, id)\
}
#define ddc_clk_regs_dcn2(id) \
{\
DDC_REG_LIST_DCN2(CLK, id)\
}
#define ddc_i2c_data_regs_dcn2 \
{\
DDC_I2C_REG_LIST_DCN2(SDA)\
}
#define ddc_i2c_clk_regs_dcn2 \
{\
DDC_REG_LIST_DCN2(SCL)\
}
#endif /* DRIVERS_GPU_DRM_AMD_DC_DEV_DC_GPIO_DDC_REGS_H_ */
Annotation
- Immediate include surface: `gpio_regs.h`.
- Detected declarations: `struct ddc_registers`, `struct ddc_sh_mask`.
- Atlas domain: Driver Families / drivers/gpu.
- 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.