📄 atichip.c
字号:
case NewChipID('L', 'M'): case NewChipID('L', 'N'): pATI->ChipRevision = GetBits(pATI->config_chip_id, CFG_CHIP_REVISION); pATI->Chip = ATI_CHIP_MOBILITY; pATI->BusType = ATI_BUS_AGP; pATI->LCDVBlendFIFOSize = 1024; break; default: pATI->Chip = ATI_CHIP_Mach64; break; }}/* * ATIChipID -- * * This returns the ATI_CHIP_* value (generally) associated with a particular * ChipID/ChipRev combination. */ATIChipTypeATIChipID( const CARD16 ChipID, const CARD8 ChipRev){ switch (ChipID) {#ifndef AVOID_CPIO case OldChipID('A', 'A'): case NewChipID('A', 'A'): return ATI_CHIP_68800_3; case OldChipID('X', 'X'): case NewChipID('X', 'X'): return ATI_CHIP_68800_6; case OldChipID('L', 'X'): return ATI_CHIP_68800LX; case OldChipID('A', 'X'): case NewChipID('A', 'X'): return ATI_CHIP_68800AX;#endif /* AVOID_CPIO */ case OldChipID('G', 'X'): case NewChipID('G', 'X'): switch (ChipRev) { case 0x00U: return ATI_CHIP_88800GXC; case 0x01U: return ATI_CHIP_88800GXD; case 0x02U: return ATI_CHIP_88800GXE; case 0x03U: return ATI_CHIP_88800GXF; default: return ATI_CHIP_88800GX; } case OldChipID('C', 'X'): case NewChipID('C', 'X'): return ATI_CHIP_88800CX; case OldChipID('C', 'T'): case NewChipID('C', 'T'): return ATI_CHIP_264CT; case OldChipID('E', 'T'): case NewChipID('E', 'T'): return ATI_CHIP_264ET; case OldChipID('V', 'T'): case NewChipID('V', 'T'): /* For simplicity, ignore ChipID discrepancy that can occur here */ if (!(ChipRev & GetBits(CFG_CHIP_VERSION, CFG_CHIP_REV))) return ATI_CHIP_264VT; return ATI_CHIP_264VTB; case OldChipID('G', 'T'): case NewChipID('G', 'T'): if (!(ChipRev & GetBits(CFG_CHIP_VERSION, CFG_CHIP_REV))) return ATI_CHIP_264GT; return ATI_CHIP_264GTB; case OldChipID('V', 'U'): case NewChipID('V', 'U'): return ATI_CHIP_264VT3; case OldChipID('G', 'U'): case NewChipID('G', 'U'): return ATI_CHIP_264GTDVD; case OldChipID('L', 'G'): case NewChipID('L', 'G'): return ATI_CHIP_264LT; case OldChipID('V', 'V'): case NewChipID('V', 'V'): return ATI_CHIP_264VT4; case OldChipID('G', 'V'): case NewChipID('G', 'V'): case OldChipID('G', 'W'): case NewChipID('G', 'W'): case OldChipID('G', 'Y'): case NewChipID('G', 'Y'): case OldChipID('G', 'Z'): case NewChipID('G', 'Z'): return ATI_CHIP_264GT2C; case OldChipID('G', 'B'): case NewChipID('G', 'B'): case OldChipID('G', 'D'): case NewChipID('G', 'D'): case OldChipID('G', 'I'): case NewChipID('G', 'I'): case OldChipID('G', 'P'): case NewChipID('G', 'P'): case OldChipID('G', 'Q'): case NewChipID('G', 'Q'): return ATI_CHIP_264GTPRO; case OldChipID('L', 'B'): case NewChipID('L', 'B'): case OldChipID('L', 'D'): case NewChipID('L', 'D'): case OldChipID('L', 'I'): case NewChipID('L', 'I'): case OldChipID('L', 'P'): case NewChipID('L', 'P'): case OldChipID('L', 'Q'): case NewChipID('L', 'Q'): return ATI_CHIP_264LTPRO; case OldChipID('G', 'L'): case NewChipID('G', 'L'): case OldChipID('G', 'M'): case NewChipID('G', 'M'): case OldChipID('G', 'N'): case NewChipID('G', 'N'): case OldChipID('G', 'O'): case NewChipID('G', 'O'): case OldChipID('G', 'R'): case NewChipID('G', 'R'): case OldChipID('G', 'S'): case NewChipID('G', 'S'): return ATI_CHIP_264XL; case OldChipID('L', 'M'): case NewChipID('L', 'M'): case OldChipID('L', 'N'): case NewChipID('L', 'N'): case OldChipID('L', 'R'): case NewChipID('L', 'R'): case OldChipID('L', 'S'): case NewChipID('L', 'S'): return ATI_CHIP_MOBILITY; case NewChipID('R', 'E'): case NewChipID('R', 'F'): case NewChipID('R', 'G'): case NewChipID('S', 'K'): case NewChipID('S', 'L'): case NewChipID('S', 'M'): /* "SN" is listed as ATI_CHIP_RAGE128_4X in ATI docs */ case NewChipID('S', 'N'): return ATI_CHIP_RAGE128GL; case NewChipID('R', 'K'): case NewChipID('R', 'L'): /* * ATI documentation lists SE/SF/SG under both ATI_CHIP_RAGE128VR * and ATI_CHIP_RAGE128_4X, and lists SH/SK/SL under Rage 128 4X only. * I'm stuffing them here for now until this can be clarified as ATI * documentation doesn't mention their details. <mharris@redhat.com> */ case NewChipID('S', 'E'): case NewChipID('S', 'F'): case NewChipID('S', 'G'): case NewChipID('S', 'H'): return ATI_CHIP_RAGE128VR; /* case NewChipID('S', 'H'): */ /* case NewChipID('S', 'K'): */ /* case NewChipID('S', 'L'): */ /* case NewChipID('S', 'N'): */ /* return ATI_CHIP_RAGE128_4X; */ case NewChipID('P', 'A'): case NewChipID('P', 'B'): case NewChipID('P', 'C'): case NewChipID('P', 'D'): case NewChipID('P', 'E'): case NewChipID('P', 'F'): return ATI_CHIP_RAGE128PROGL; case NewChipID('P', 'G'): case NewChipID('P', 'H'): case NewChipID('P', 'I'): case NewChipID('P', 'J'): case NewChipID('P', 'K'): case NewChipID('P', 'L'): case NewChipID('P', 'M'): case NewChipID('P', 'N'): case NewChipID('P', 'O'): case NewChipID('P', 'P'): case NewChipID('P', 'Q'): case NewChipID('P', 'R'): case NewChipID('P', 'S'): case NewChipID('P', 'T'): case NewChipID('P', 'U'): case NewChipID('P', 'V'): case NewChipID('P', 'W'): case NewChipID('P', 'X'): return ATI_CHIP_RAGE128PROVR; case NewChipID('T', 'F'): case NewChipID('T', 'L'): case NewChipID('T', 'R'): case NewChipID('T', 'S'): case NewChipID('T', 'T'): case NewChipID('T', 'U'): return ATI_CHIP_RAGE128PROULTRA; case NewChipID('L', 'E'): case NewChipID('L', 'F'): /* * "LK" and "LL" are not in any ATI documentation I can find * - mharris */ case NewChipID('L', 'K'): case NewChipID('L', 'L'): return ATI_CHIP_RAGE128MOBILITY3; case NewChipID('M', 'F'): case NewChipID('M', 'L'): return ATI_CHIP_RAGE128MOBILITY4; case NewChipID('Q', 'D'): case NewChipID('Q', 'E'): case NewChipID('Q', 'F'): case NewChipID('Q', 'G'): return ATI_CHIP_RADEON; case NewChipID('Q', 'Y'): case NewChipID('Q', 'Z'): case NewChipID('Q', '^'): return ATI_CHIP_RADEONVE; case NewChipID('L', 'Y'): case NewChipID('L', 'Z'): return ATI_CHIP_RADEONMOBILITY6; case NewChipID('A', '6'): case NewChipID('C', '6'): return ATI_CHIP_RS100; case NewChipID('A', '7'): case NewChipID('C', '7'): return ATI_CHIP_RS200; case NewChipID('D', '7'): case NewChipID('B', '7'): return ATI_CHIP_RS250; case NewChipID('L', 'W'): case NewChipID('L', 'X'): return ATI_CHIP_RADEONMOBILITY7; case NewChipID('Q', 'H'): case NewChipID('Q', 'I'): case NewChipID('Q', 'J'): case NewChipID('Q', 'K'): case NewChipID('Q', 'L'): case NewChipID('Q', 'M'): case NewChipID('Q', 'N'): case NewChipID('Q', 'O'): case NewChipID('Q', 'h'): case NewChipID('Q', 'i'): case NewChipID('Q', 'j'): case NewChipID('Q', 'k'): case NewChipID('Q', 'l'): case NewChipID('B', 'B'): return ATI_CHIP_R200; case NewChipID('Q', 'W'): case NewChipID('Q', 'X'): return ATI_CHIP_RV200; case NewChipID('I', 'f'): case NewChipID('I', 'g'): return ATI_CHIP_RV250; case NewChipID('L', 'd'): case NewChipID('L', 'f'): case NewChipID('L', 'g'): return ATI_CHIP_RADEONMOBILITY9; case NewChipID('X', '4'): case NewChipID('X', '5'): return ATI_CHIP_RS300; case NewChipID('x', '4'): case NewChipID('x', '5'): return ATI_CHIP_RS350; case NewChipID('Y', '\''): case NewChipID('Y', 'a'): case NewChipID('Y', 'b'): case NewChipID('Y', 'd'): case NewChipID('Y', 'e'): return ATI_CHIP_RV280; case NewChipID('\\', 'a'): case NewChipID('\\', 'c'): return ATI_CHIP_RADEONMOBILITY9PLUS; case NewChipID('A', 'D'): case NewChipID('A', 'E'): case NewChipID('A', 'F'): case NewChipID('A', 'G'): case NewChipID('N', 'D'): case NewChipID('N', 'E'): case NewChipID('N', 'F'): case NewChipID('N', 'G'): return ATI_CHIP_R300; case NewChipID('A', 'H'): case NewChipID('A', 'I'): case NewChipID('A', 'J'): case NewChipID('A', 'K'): case NewChipID('N', 'H'): case NewChipID('N', 'I'): case NewChipID('N', 'K'): return ATI_CHIP_R350; case NewChipID('A', 'P'): case NewChipID('A', 'Q'): case NewChipID('A', 'R'): case NewChipID('A', 'S'): case NewChipID('A', 'T'): case NewChipID('A', 'U'): case NewChipID('A', 'V'): case NewChipID('N', 'P'): case NewChipID('N', 'Q'): case NewChipID('N', 'R'): case NewChipID('N', 'S'): case NewChipID('N', 'T'): case NewChipID('N', 'V'): return ATI_CHIP_RV350; case NewChipID('N', 'J'): return ATI_CHIP_R360; case NewChipID('[', '\''): case NewChipID('[', 'b'): case NewChipID('[', 'c'): case NewChipID('[', 'd'): case NewChipID('[', 'e'): case NewChipID('T', '\''): case NewChipID('T', 'b'): case NewChipID('T', 'd'): return ATI_CHIP_RV370; case NewChipID('>', 'P'): case NewChipID('>', 'T'): case NewChipID('1', 'P'): case NewChipID('1', 'R'): case NewChipID('1', 'T'): return ATI_CHIP_RV380; case NewChipID('J', 'H'): case NewChipID('J', 'I'): case NewChipID('J', 'J'): case NewChipID('J', 'K'): case NewChipID('J', 'L'): case NewChipID('J', 'M'): case NewChipID('J', 'N'): case NewChipID('J', 'O'): case NewChipID('J', 'P'): case NewChipID('J', 'T'): return ATI_CHIP_R420; case NewChipID('U', 'H'): case NewChipID('U', 'I'): case NewChipID('U', 'J'): case NewChipID('U', 'K'): case NewChipID('U', 'P'): case NewChipID('U', 'Q'): case NewChipID('U', 'R'): case NewChipID('U', 'T'): case NewChipID(']', 'W'): /* those are m28, not 100% certain they are r423 could be r480 but not r430 as their pci id names indicate... */ case NewChipID(']', 'H'): case NewChipID(']', 'I'): case NewChipID(']', 'J'): return ATI_CHIP_R423; case NewChipID('U', 'L'): case NewChipID('U', 'M'): case NewChipID('U', 'N'): case NewChipID('U', 'O'): return ATI_CHIP_R430; case NewChipID(']', 'L'): case NewChipID(']', 'M'): case NewChipID(']', 'N'): case NewChipID(']', 'O'): case NewChipID(']', 'P'): case NewChipID(']', 'R'): return ATI_CHIP_R480; case NewChipID('K', 'I'): case NewChipID('K', 'J'): case NewChipID('K', 'K'): case NewChipID('K', 'L'): return ATI_CHIP_R481; case NewChipID('^', 'H'): case NewChipID('^', 'J'): case NewChipID('^', 'K'): case NewChipID('^', 'L'): case NewChipID('^', 'M'): case NewChipID('^', 'O'): case NewChipID('V', 'J'): case NewChipID('V', 'K'): case NewChipID('V', 'O'): case NewChipID('V', 'R'): case NewChipID('V', 'S'): return ATI_CHIP_RV410; case NewChipID('Z', 'A'): case NewChipID('Z', 'B'): case NewChipID('Z', 'a'): case NewChipID('Z', 'b'): case NewChipID('Y', 'T'): case NewChipID('Y', 'U'): case NewChipID('Y', 't'): case NewChipID('Y', 'u'): return ATI_CHIP_RS400; case NewChipID('H', 'D'): return ATI_CHIP_HDTV; default: /* * Treat anything else as an unknown Radeon. Please keep the above * up-to-date however, as it serves as a central chip list. */ return ATI_CHIP_Radeon; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -