drivers/gpu/drm/radeon/evergreen_smc.h

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/radeon/evergreen_smc.h

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/radeon/evergreen_smc.h
Extension
.h
Size
2223 bytes
Lines
65
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

struct SMC_Evergreen_MCRegisterAddress {
    uint16_t s0;
    uint16_t s1;
};

typedef struct SMC_Evergreen_MCRegisterAddress SMC_Evergreen_MCRegisterAddress;


struct SMC_Evergreen_MCRegisterSet {
    uint32_t value[SMC_EVERGREEN_MC_REGISTER_ARRAY_SIZE];
};

typedef struct SMC_Evergreen_MCRegisterSet SMC_Evergreen_MCRegisterSet;

struct SMC_Evergreen_MCRegisters {
    uint8_t                             last;
    uint8_t                             reserved[3];
    SMC_Evergreen_MCRegisterAddress     address[SMC_EVERGREEN_MC_REGISTER_ARRAY_SIZE];
    SMC_Evergreen_MCRegisterSet         data[5];
};

typedef struct SMC_Evergreen_MCRegisters SMC_Evergreen_MCRegisters;

#define EVERGREEN_SMC_FIRMWARE_HEADER_LOCATION 0x100

#define EVERGREEN_SMC_FIRMWARE_HEADER_softRegisters   0x8
#define EVERGREEN_SMC_FIRMWARE_HEADER_stateTable      0xC
#define EVERGREEN_SMC_FIRMWARE_HEADER_mcRegisterTable 0x20


#pragma pack(pop)

#endif

Annotation

Implementation Notes