drivers/gpu/drm/amd/amdgpu/ObjectID.h

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/amd/amdgpu/ObjectID.h

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/amd/amdgpu/ObjectID.h
Extension
.h
Size
48025 bytes
Lines
746
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.

Dependency Surface

Detected Declarations

Annotated Snippet

#ifndef _OBJECTID_H
#define _OBJECTID_H

#if defined(_X86_)
#pragma pack(1)
#endif

/****************************************************/
/* Graphics Object Type Definition                  */
/****************************************************/
#define GRAPH_OBJECT_TYPE_NONE                    0x0
#define GRAPH_OBJECT_TYPE_GPU                     0x1
#define GRAPH_OBJECT_TYPE_ENCODER                 0x2
#define GRAPH_OBJECT_TYPE_CONNECTOR               0x3
#define GRAPH_OBJECT_TYPE_ROUTER                  0x4
/* deleted */
#define GRAPH_OBJECT_TYPE_DISPLAY_PATH            0x6  
#define GRAPH_OBJECT_TYPE_GENERIC                 0x7

/****************************************************/
/* Encoder Object ID Definition                     */
/****************************************************/
#define ENCODER_OBJECT_ID_NONE                    0x00 

/* Radeon Class Display Hardware */
#define ENCODER_OBJECT_ID_INTERNAL_LVDS           0x01
#define ENCODER_OBJECT_ID_INTERNAL_TMDS1          0x02
#define ENCODER_OBJECT_ID_INTERNAL_TMDS2          0x03
#define ENCODER_OBJECT_ID_INTERNAL_DAC1           0x04
#define ENCODER_OBJECT_ID_INTERNAL_DAC2           0x05     /* TV/CV DAC */
#define ENCODER_OBJECT_ID_INTERNAL_SDVOA          0x06
#define ENCODER_OBJECT_ID_INTERNAL_SDVOB          0x07

/* External Third Party Encoders */
#define ENCODER_OBJECT_ID_SI170B                  0x08
#define ENCODER_OBJECT_ID_CH7303                  0x09
#define ENCODER_OBJECT_ID_CH7301                  0x0A
#define ENCODER_OBJECT_ID_INTERNAL_DVO1           0x0B    /* This belongs to Radeon Class Display Hardware */
#define ENCODER_OBJECT_ID_EXTERNAL_SDVOA          0x0C
#define ENCODER_OBJECT_ID_EXTERNAL_SDVOB          0x0D
#define ENCODER_OBJECT_ID_TITFP513                0x0E
#define ENCODER_OBJECT_ID_INTERNAL_LVTM1          0x0F    /* not used for Radeon */
#define ENCODER_OBJECT_ID_VT1623                  0x10
#define ENCODER_OBJECT_ID_HDMI_SI1930             0x11
#define ENCODER_OBJECT_ID_HDMI_INTERNAL           0x12
#define ENCODER_OBJECT_ID_ALMOND                  0x22
#define ENCODER_OBJECT_ID_TRAVIS                  0x23
#define ENCODER_OBJECT_ID_NUTMEG                  0x22
#define ENCODER_OBJECT_ID_HDMI_ANX9805            0x26

/* Kaleidoscope (KLDSCP) Class Display Hardware (internal) */
#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1   0x13
#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1    0x14
#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1    0x15
#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2    0x16  /* Shared with CV/TV and CRT */
#define ENCODER_OBJECT_ID_SI178                   0X17  /* External TMDS (dual link, no HDCP.) */
#define ENCODER_OBJECT_ID_MVPU_FPGA               0x18  /* MVPU FPGA chip */
#define ENCODER_OBJECT_ID_INTERNAL_DDI            0x19
#define ENCODER_OBJECT_ID_VT1625                  0x1A
#define ENCODER_OBJECT_ID_HDMI_SI1932             0x1B
#define ENCODER_OBJECT_ID_DP_AN9801               0x1C
#define ENCODER_OBJECT_ID_DP_DP501                0x1D
#define ENCODER_OBJECT_ID_INTERNAL_UNIPHY         0x1E
#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA   0x1F
#define ENCODER_OBJECT_ID_INTERNAL_UNIPHY1        0x20
#define ENCODER_OBJECT_ID_INTERNAL_UNIPHY2        0x21
#define ENCODER_OBJECT_ID_INTERNAL_VCE            0x24
#define ENCODER_OBJECT_ID_INTERNAL_UNIPHY3        0x25
#define ENCODER_OBJECT_ID_INTERNAL_AMCLK          0x27

#define ENCODER_OBJECT_ID_GENERAL_EXTERNAL_DVO    0xFF

/****************************************************/
/* Connector Object ID Definition                   */
/****************************************************/
#define CONNECTOR_OBJECT_ID_NONE                  0x00 
#define CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I     0x01
#define CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I       0x02
#define CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D     0x03
#define CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D       0x04
#define CONNECTOR_OBJECT_ID_VGA                   0x05
#define CONNECTOR_OBJECT_ID_COMPOSITE             0x06
#define CONNECTOR_OBJECT_ID_SVIDEO                0x07
#define CONNECTOR_OBJECT_ID_YPbPr                 0x08
#define CONNECTOR_OBJECT_ID_D_CONNECTOR           0x09
#define CONNECTOR_OBJECT_ID_9PIN_DIN              0x0A  /* Supports both CV & TV */
#define CONNECTOR_OBJECT_ID_SCART                 0x0B
#define CONNECTOR_OBJECT_ID_HDMI_TYPE_A           0x0C
#define CONNECTOR_OBJECT_ID_HDMI_TYPE_B           0x0D
#define CONNECTOR_OBJECT_ID_LVDS                  0x0E

Annotation

Implementation Notes