drivers/gpu/drm/amd/include/displayobject.h
Source file repositories/reference/linux-study-clean/drivers/gpu/drm/amd/include/displayobject.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/gpu/drm/amd/include/displayobject.h- Extension
.h- Size
- 12043 bytes
- Lines
- 250
- 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.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
enum display_object_typeenum encoder_object_typeenum connector_object_typeenum object_enum_idenum object_id_bitenum gpu_objet_defenum encoder_objet_defenum connector_objet_def
Annotated Snippet
\****************************************************************************/
#ifndef _DISPLAY_OBJECT_SOC15_H_
#define _DISPLAY_OBJECT_SOC15_H_
#if defined(_X86_)
#pragma pack(1)
#endif
/****************************************************
* Display Object Type Definition
*****************************************************/
enum display_object_type{
DISPLAY_OBJECT_TYPE_NONE =0x00,
DISPLAY_OBJECT_TYPE_GPU =0x01,
DISPLAY_OBJECT_TYPE_ENCODER =0x02,
DISPLAY_OBJECT_TYPE_CONNECTOR =0x03
};
/****************************************************
* Encorder Object Type Definition
*****************************************************/
enum encoder_object_type{
ENCODER_OBJECT_ID_NONE =0x00,
ENCODER_OBJECT_ID_INTERNAL_UNIPHY =0x01,
ENCODER_OBJECT_ID_INTERNAL_UNIPHY1 =0x02,
ENCODER_OBJECT_ID_INTERNAL_UNIPHY2 =0x03,
};
/****************************************************
* Connector Object ID Definition
*****************************************************/
enum connector_object_type{
CONNECTOR_OBJECT_ID_NONE =0x00,
CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D =0x01,
CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D =0x02,
CONNECTOR_OBJECT_ID_HDMI_TYPE_A =0x03,
CONNECTOR_OBJECT_ID_LVDS =0x04,
CONNECTOR_OBJECT_ID_DISPLAYPORT =0x05,
CONNECTOR_OBJECT_ID_eDP =0x06,
CONNECTOR_OBJECT_ID_OPM =0x07
};
/****************************************************
* Protection Object ID Definition
*****************************************************/
//No need
/****************************************************
* Object ENUM ID Definition
*****************************************************/
enum object_enum_id{
OBJECT_ENUM_ID1 =0x01,
OBJECT_ENUM_ID2 =0x02,
OBJECT_ENUM_ID3 =0x03,
OBJECT_ENUM_ID4 =0x04,
OBJECT_ENUM_ID5 =0x05,
OBJECT_ENUM_ID6 =0x06
};
/****************************************************
*Object ID Bit definition
*****************************************************/
enum object_id_bit{
OBJECT_ID_MASK =0x00FF,
ENUM_ID_MASK =0x0F00,
OBJECT_TYPE_MASK =0xF000,
OBJECT_ID_SHIFT =0x00,
ENUM_ID_SHIFT =0x08,
OBJECT_TYPE_SHIFT =0x0C
};
/****************************************************
* GPU Object definition - Shared with BIOS
*****************************************************/
enum gpu_objet_def{
GPU_ENUM_ID1 =( DISPLAY_OBJECT_TYPE_GPU << OBJECT_TYPE_SHIFT | OBJECT_ENUM_ID1 << ENUM_ID_SHIFT)
};
/****************************************************
* Encoder Object definition - Shared with BIOS
*****************************************************/
enum encoder_objet_def{
ENCODER_INTERNAL_UNIPHY_ENUM_ID1 =( DISPLAY_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
Annotation
- Detected declarations: `enum display_object_type`, `enum encoder_object_type`, `enum connector_object_type`, `enum object_enum_id`, `enum object_id_bit`, `enum gpu_objet_def`, `enum encoder_objet_def`, `enum connector_objet_def`.
- 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.