drivers/gpu/drm/amd/include/vega10_ip_offset.h

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/amd/include/vega10_ip_offset.h

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/amd/include/vega10_ip_offset.h
Extension
.h
Size
55954 bytes
Lines
1264
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 IP_BASE_INSTANCE {
    unsigned int segment[MAX_SEGMENT];
};

struct IP_BASE {
    struct IP_BASE_INSTANCE instance[MAX_INSTANCE];
};


static const struct IP_BASE __maybe_unused NBIF_BASE	= { { { { 0x00000000, 0x00000014, 0x00000D20, 0x00010400, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };
static const struct IP_BASE __maybe_unused NBIO_BASE	= { { { { 0x00000000, 0x00000014, 0x00000D20, 0x00010400, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };
static const struct IP_BASE __maybe_unused DCE_BASE	= { { { { 0x00000012, 0x000000C0, 0x000034C0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };
static const struct IP_BASE __maybe_unused DCN_BASE	= { { { { 0x00000012, 0x000000C0, 0x000034C0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };
static const struct IP_BASE __maybe_unused MP0_BASE	= { { { { 0x00016000, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };
static const struct IP_BASE __maybe_unused MP1_BASE	= { { { { 0x00016000, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };
static const struct IP_BASE __maybe_unused MP2_BASE	= { { { { 0x00016000, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };
static const struct IP_BASE __maybe_unused DF_BASE	= { { { { 0x00007000, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };
static const struct IP_BASE __maybe_unused UVD_BASE	= { { { { 0x00007800, 0x00007E00, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };  //note: GLN does not use the first segment
static const struct IP_BASE __maybe_unused VCN_BASE	= { { { { 0x00007800, 0x00007E00, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } };  //note: GLN does not use the first segment
static const struct IP_BASE __maybe_unused DBGU_BASE	= { { { { 0x00000180, 0x000001A0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } }; // not exist
static const struct IP_BASE __maybe_unused DBGU_NBIO_BASE	= { { { { 0x000001C0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } }; // not exist
static const struct IP_BASE __maybe_unused DBGU_IO_BASE	= { { { { 0x000001E0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } }; // not exist
static const struct IP_BASE __maybe_unused DFX_DAP_BASE	= { { { { 0x000005A0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } }; // not exist
static const struct IP_BASE __maybe_unused DFX_BASE	= { { { { 0x00000580, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } }; // this file does not contain registers
static const struct IP_BASE __maybe_unused ISP_BASE	= { { { { 0x00018000, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } },
										{ { 0, 0, 0, 0, 0 } } } }; // not exist
static const struct IP_BASE __maybe_unused SYSTEMHUB_BASE	= { { { { 0x00000EA0, 0, 0, 0, 0 } },

Annotation

Implementation Notes