RADEON: Add untested support for RS400 chips
GART setup appears to work the same as RS480 chips. Also RC4xx chips are actually RS400 based, not RS480 based.main
parent
f6982b54c9
commit
4b8aecbde8
|
@ -99,7 +99,7 @@
|
||||||
0x1002 0x5653 CHIP_RV410|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP "ATI Radeon Mobility X700 M26"
|
0x1002 0x5653 CHIP_RV410|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP "ATI Radeon Mobility X700 M26"
|
||||||
0x1002 0x5834 CHIP_RS300|RADEON_IS_IGP "ATI Radeon RS300 9100 IGP"
|
0x1002 0x5834 CHIP_RS300|RADEON_IS_IGP "ATI Radeon RS300 9100 IGP"
|
||||||
0x1002 0x5835 CHIP_RS300|RADEON_IS_IGP|RADEON_IS_MOBILITY "ATI Radeon RS300 Mobility IGP"
|
0x1002 0x5835 CHIP_RS300|RADEON_IS_IGP|RADEON_IS_MOBILITY "ATI Radeon RS300 Mobility IGP"
|
||||||
0x1002 0x5954 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI RS480 XPRESS 200G"
|
0x1002 0x5954 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_IGPGART "ATI RS480 XPRESS 200G"
|
||||||
0x1002 0x5955 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon XPRESS 200M 5955"
|
0x1002 0x5955 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon XPRESS 200M 5955"
|
||||||
0x1002 0x5974 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon RS482 XPRESS 200"
|
0x1002 0x5974 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon RS482 XPRESS 200"
|
||||||
0x1002 0x5975 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon RS485 XPRESS 1100 IGP"
|
0x1002 0x5975 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon RS485 XPRESS 1100 IGP"
|
||||||
|
@ -109,8 +109,10 @@
|
||||||
0x1002 0x5964 CHIP_RV280 "ATI Radeon RV280 9200 SE"
|
0x1002 0x5964 CHIP_RV280 "ATI Radeon RV280 9200 SE"
|
||||||
0x1002 0x5965 CHIP_RV280 "ATI FireMV 2200 PCI"
|
0x1002 0x5965 CHIP_RV280 "ATI FireMV 2200 PCI"
|
||||||
0x1002 0x5969 CHIP_RV100 "ATI ES1000 RN50"
|
0x1002 0x5969 CHIP_RV100 "ATI ES1000 RN50"
|
||||||
0x1002 0x5a61 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon RC410 XPRESS 200"
|
0x1002 0x5a41 CHIP_RS400|RADEON_IS_IGP|RADEON_IS_IGPGART "ATI Radeon XPRESS 200 5A41 (PCIE)"
|
||||||
0x1002 0x5a62 CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon RC410 XPRESS 200M"
|
0x1002 0x5a42 CHIP_RS400|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon XPRESS 200M 5A42 (PCIE)"
|
||||||
|
0x1002 0x5a61 CHIP_RS400|RADEON_IS_IGP|RADEON_IS_IGPGART "ATI Radeon RC410 XPRESS 200"
|
||||||
|
0x1002 0x5a62 CHIP_RS400|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART "ATI Radeon RC410 XPRESS 200M"
|
||||||
0x1002 0x5b60 CHIP_RV380|RADEON_NEW_MEMMAP "ATI Radeon RV370 X300 SE"
|
0x1002 0x5b60 CHIP_RV380|RADEON_NEW_MEMMAP "ATI Radeon RV370 X300 SE"
|
||||||
0x1002 0x5b62 CHIP_RV380|RADEON_NEW_MEMMAP "ATI Radeon RV370 X600 Pro"
|
0x1002 0x5b62 CHIP_RV380|RADEON_NEW_MEMMAP "ATI Radeon RV370 X600 Pro"
|
||||||
0x1002 0x5b63 CHIP_RV380|RADEON_NEW_MEMMAP "ATI Radeon RV370 X550"
|
0x1002 0x5b63 CHIP_RV380|RADEON_NEW_MEMMAP "ATI Radeon RV370 X550"
|
||||||
|
|
|
@ -126,9 +126,10 @@ static void radeon_write_agp_base(drm_radeon_private_t *dev_priv, u64 agp_base)
|
||||||
} else if ((dev_priv->flags & RADEON_FAMILY_MASK) > CHIP_RV515) {
|
} else if ((dev_priv->flags & RADEON_FAMILY_MASK) > CHIP_RV515) {
|
||||||
R500_WRITE_MCIND(R520_MC_AGP_BASE, agp_base_lo);
|
R500_WRITE_MCIND(R520_MC_AGP_BASE, agp_base_lo);
|
||||||
R500_WRITE_MCIND(R520_MC_AGP_BASE_2, agp_base_hi);
|
R500_WRITE_MCIND(R520_MC_AGP_BASE_2, agp_base_hi);
|
||||||
} else if ((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS480) {
|
} else if (((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS400) ||
|
||||||
|
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS480)) {
|
||||||
RADEON_WRITE(RADEON_AGP_BASE, agp_base_lo);
|
RADEON_WRITE(RADEON_AGP_BASE, agp_base_lo);
|
||||||
RADEON_WRITE(RS480_AGP_BASE_2, 0);
|
RADEON_WRITE(RS480_AGP_BASE_2, agp_base_hi);
|
||||||
} else {
|
} else {
|
||||||
RADEON_WRITE(RADEON_AGP_BASE, agp_base_lo);
|
RADEON_WRITE(RADEON_AGP_BASE, agp_base_lo);
|
||||||
if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R200)
|
if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R200)
|
||||||
|
@ -355,6 +356,7 @@ static void radeon_cp_load_microcode(drm_radeon_private_t * dev_priv)
|
||||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_R350) ||
|
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_R350) ||
|
||||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV350) ||
|
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV350) ||
|
||||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV380) ||
|
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV380) ||
|
||||||
|
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS400) ||
|
||||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS480)) {
|
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS480)) {
|
||||||
DRM_INFO("Loading R300 Microcode\n");
|
DRM_INFO("Loading R300 Microcode\n");
|
||||||
for (i = 0; i < 256; i++) {
|
for (i = 0; i < 256; i++) {
|
||||||
|
|
|
@ -124,6 +124,7 @@ enum radeon_family {
|
||||||
CHIP_RV380,
|
CHIP_RV380,
|
||||||
CHIP_R420,
|
CHIP_R420,
|
||||||
CHIP_RV410,
|
CHIP_RV410,
|
||||||
|
CHIP_RS400,
|
||||||
CHIP_RS480,
|
CHIP_RS480,
|
||||||
CHIP_RS690,
|
CHIP_RS690,
|
||||||
CHIP_RV515,
|
CHIP_RV515,
|
||||||
|
|
Loading…
Reference in New Issue