include/uapi/drm/exynos_drm.h
Source file repositories/reference/linux-study-clean/include/uapi/drm/exynos_drm.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/drm/exynos_drm.h- Extension
.h- Size
- 11148 bytes
- Lines
- 425
- Domain
- Repository Root And Misc
- Bucket
- include
- Inferred role
- Repository Root And Misc: implementation source
- Status
- source implementation candidate
Why This File Exists
Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
drm.h
Detected Declarations
struct drm_exynos_gem_createstruct drm_exynos_gem_mapstruct drm_exynos_gem_infostruct drm_exynos_vidi_connectionstruct drm_exynos_g2d_get_verstruct drm_exynos_g2d_cmdstruct drm_exynos_g2d_userptrstruct drm_exynos_g2d_set_cmdliststruct drm_exynos_g2d_execstruct drm_exynos_ioctl_ipp_get_resstruct drm_exynos_ipp_formatstruct drm_exynos_ioctl_ipp_get_capsstruct drm_exynos_ipp_limit_valstruct drm_exynos_ipp_limitstruct drm_exynos_ioctl_ipp_get_limitsstruct drm_exynos_ipp_task_bufferstruct drm_exynos_ipp_task_rectstruct drm_exynos_ipp_task_transformstruct drm_exynos_ipp_task_alphastruct drm_exynos_ioctl_ipp_commitstruct drm_exynos_g2d_eventstruct drm_exynos_ipp_eventenum e_drm_exynos_gem_mem_typeenum drm_exynos_g2d_buf_typeenum drm_exynos_g2d_event_typeenum drm_exynos_ipp_format_typeenum drm_exynos_ipp_capabilityenum drm_exynos_ipp_limit_typeenum drm_exynos_ipp_task_idenum drm_exynos_ipp_flag
Annotated Snippet
struct drm_exynos_gem_create {
__u64 size;
__u32 flags;
__u32 handle;
};
/**
* A structure for getting a fake-offset that can be used with mmap.
*
* @handle: handle of gem object.
* @reserved: just padding to be 64-bit aligned.
* @offset: a fake-offset of gem object.
*/
struct drm_exynos_gem_map {
__u32 handle;
__u32 reserved;
__u64 offset;
};
/**
* A structure to gem information.
*
* @handle: a handle to gem object created.
* @flags: flag value including memory type and cache attribute and
* this value would be set by driver.
* @size: size to memory region allocated by gem and this size would
* be set by driver.
*/
struct drm_exynos_gem_info {
__u32 handle;
__u32 flags;
__u64 size;
};
/**
* A structure for user connection request of virtual display.
*
* @connection: indicate whether doing connection or not by user.
* @extensions: if this value is 1 then the vidi driver would need additional
* 128bytes edid data.
* @edid: the edid data pointer from user side.
*/
struct drm_exynos_vidi_connection {
__u32 connection;
__u32 extensions;
__u64 edid;
};
/* memory type definitions. */
enum e_drm_exynos_gem_mem_type {
/* Physically Continuous memory and used as default. */
EXYNOS_BO_CONTIG = 0 << 0,
/* Physically Non-Continuous memory. */
EXYNOS_BO_NONCONTIG = 1 << 0,
/* non-cachable mapping and used as default. */
EXYNOS_BO_NONCACHABLE = 0 << 1,
/* cachable mapping. */
EXYNOS_BO_CACHABLE = 1 << 1,
/* write-combine mapping. */
EXYNOS_BO_WC = 1 << 2,
EXYNOS_BO_MASK = EXYNOS_BO_NONCONTIG | EXYNOS_BO_CACHABLE |
EXYNOS_BO_WC
};
struct drm_exynos_g2d_get_ver {
__u32 major;
__u32 minor;
};
struct drm_exynos_g2d_cmd {
__u32 offset;
__u32 data;
};
enum drm_exynos_g2d_buf_type {
G2D_BUF_USERPTR = 1 << 31,
};
enum drm_exynos_g2d_event_type {
G2D_EVENT_NOT,
G2D_EVENT_NONSTOP,
G2D_EVENT_STOP, /* not yet */
};
struct drm_exynos_g2d_userptr {
unsigned long userptr;
unsigned long size;
};
struct drm_exynos_g2d_set_cmdlist {
Annotation
- Immediate include surface: `drm.h`.
- Detected declarations: `struct drm_exynos_gem_create`, `struct drm_exynos_gem_map`, `struct drm_exynos_gem_info`, `struct drm_exynos_vidi_connection`, `struct drm_exynos_g2d_get_ver`, `struct drm_exynos_g2d_cmd`, `struct drm_exynos_g2d_userptr`, `struct drm_exynos_g2d_set_cmdlist`, `struct drm_exynos_g2d_exec`, `struct drm_exynos_ioctl_ipp_get_res`.
- Atlas domain: Repository Root And Misc / include.
- 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.