drivers/gpu/drm/mediatek/mtk_drm_drv.h
Source file repositories/reference/linux-study-clean/drivers/gpu/drm/mediatek/mtk_drm_drv.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/gpu/drm/mediatek/mtk_drm_drv.h- Extension
.h- Size
- 2190 bytes
- Lines
- 85
- 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.
- Uses kernel synchronization; read lock ordering, sleepability, and interrupt context assumptions before translating.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/io.hmtk_ddp_comp.h
Detected Declarations
struct devicestruct device_nodestruct drm_crtcstruct drm_devicestruct drm_fb_helperstruct drm_propertystruct regmapstruct mtk_drm_routestruct mtk_mmsys_driver_datastruct mtk_drm_privateenum mtk_crtc_path
Annotated Snippet
struct mtk_drm_route {
const unsigned int crtc_id;
const unsigned int route_ddp;
};
struct mtk_mmsys_driver_data {
const unsigned int *main_path;
unsigned int main_len;
const unsigned int *ext_path;
unsigned int ext_len;
const unsigned int *third_path;
unsigned int third_len;
const struct mtk_drm_route *conn_routes;
unsigned int num_conn_routes;
bool shadow_register;
unsigned int mmsys_id;
unsigned int mmsys_dev_num;
u16 max_width;
u16 min_width;
u16 min_height;
};
struct mtk_drm_private {
struct drm_device *drm;
bool mtk_drm_bound;
bool drm_master;
struct device *dev;
struct device_node *mutex_node;
struct device *mutex_dev;
struct device *mmsys_dev;
struct device_node *comp_node[DDP_COMPONENT_DRM_ID_MAX];
struct mtk_ddp_comp ddp_comp[DDP_COMPONENT_DRM_ID_MAX];
struct mtk_mmsys_driver_data *data;
struct drm_atomic_commit *suspend_state;
unsigned int mbox_index;
struct mtk_drm_private **all_drm_private;
};
extern struct platform_driver mtk_disp_aal_driver;
extern struct platform_driver mtk_disp_ccorr_driver;
extern struct platform_driver mtk_disp_color_driver;
extern struct platform_driver mtk_disp_gamma_driver;
extern struct platform_driver mtk_disp_merge_driver;
extern struct platform_driver mtk_disp_ovl_adaptor_driver;
extern struct platform_driver mtk_disp_ovl_driver;
extern struct platform_driver mtk_disp_rdma_driver;
extern struct platform_driver mtk_dpi_driver;
extern struct platform_driver mtk_dsi_driver;
extern struct platform_driver mtk_ethdr_driver;
extern struct platform_driver mtk_mdp_rdma_driver;
extern struct platform_driver mtk_padding_driver;
#endif /* MTK_DRM_DRV_H */
Annotation
- Immediate include surface: `linux/io.h`, `mtk_ddp_comp.h`.
- Detected declarations: `struct device`, `struct device_node`, `struct drm_crtc`, `struct drm_device`, `struct drm_fb_helper`, `struct drm_property`, `struct regmap`, `struct mtk_drm_route`, `struct mtk_mmsys_driver_data`, `struct mtk_drm_private`.
- Atlas domain: Driver Families / drivers/gpu.
- Implementation status: source implementation candidate.
- Synchronization appears in or near this file; preserve lock ordering, sleepability, and interrupt-context constraints.
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.