On 01/09/11 17:23, Ted Unangst wrote: > these are some new IDs extracted from version 6.12.7 of the ati driver. > they may not all work, depending on kernel support. untested, i have no > hardware. part 1 of a broken up ati driver update. > > diff -ru xf86-video-ati-orig/src/ati_pciids_gen.h > xf86-video-ati/src/ati_pciids_gen.h > --- xf86-video-ati-orig/src/ati_pciids_gen.h Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/ati_pciids_gen.h Sun Jan 9 11:43:36 2011 > @@ -60,6 +60,8 @@ > #define PCI_CHIP_R420_JN 0x4A4E > #define PCI_CHIP_R420_4A4F 0x4A4F > #define PCI_CHIP_R420_JP 0x4A50 > +#define PCI_CHIP_R420_JT 0x4A54 > +#define PCI_CHIP_R481_4B48 0x4B48 > #define PCI_CHIP_R481_4B49 0x4B49 > #define PCI_CHIP_R481_4B4A 0x4B4A > #define PCI_CHIP_R481_4B4B 0x4B4B > @@ -334,6 +336,7 @@ > #define PCI_CHIP_RV770_9440 0x9440 > #define PCI_CHIP_RV770_9441 0x9441 > #define PCI_CHIP_RV770_9442 0x9442 > +#define PCI_CHIP_RV770_9443 0x9443 > #define PCI_CHIP_RV770_9444 0x9444 > #define PCI_CHIP_RV770_9446 0x9446 > #define PCI_CHIP_RV770_944A 0x944A > @@ -351,15 +354,26 @@ > #define PCI_CHIP_RV770_946B 0x946B > #define PCI_CHIP_RV770_947A 0x947A > #define PCI_CHIP_RV770_947B 0x947B > +#define PCI_CHIP_RV730_9480 0x9480 > #define PCI_CHIP_RV730_9487 0x9487 > +#define PCI_CHIP_RV730_9488 0x9488 > #define PCI_CHIP_RV730_9489 0x9489 > #define PCI_CHIP_RV730_948F 0x948F > #define PCI_CHIP_RV730_9490 0x9490 > #define PCI_CHIP_RV730_9491 0x9491 > +#define PCI_CHIP_RV730_9495 0x9495 > #define PCI_CHIP_RV730_9498 0x9498 > #define PCI_CHIP_RV730_949C 0x949C > #define PCI_CHIP_RV730_949E 0x949E > #define PCI_CHIP_RV730_949F 0x949F > +#define PCI_CHIP_RV740_94A0 0x94A0 > +#define PCI_CHIP_RV740_94A1 0x94A1 > +#define PCI_CHIP_RV740_94A3 0x94A3 > +#define PCI_CHIP_RV740_94B1 0x94B1 > +#define PCI_CHIP_RV740_94B3 0x94B3 > +#define PCI_CHIP_RV740_94B4 0x94B4 > +#define PCI_CHIP_RV740_94B5 0x94B5 > +#define PCI_CHIP_RV740_94B9 0x94B9 > #define PCI_CHIP_RV610_94C0 0x94C0 > #define PCI_CHIP_RV610_94C1 0x94C1 > #define PCI_CHIP_RV610_94C3 0x94C3 > @@ -392,6 +406,7 @@ > #define PCI_CHIP_RV710_9552 0x9552 > #define PCI_CHIP_RV710_9553 0x9553 > #define PCI_CHIP_RV710_9555 0x9555 > +#define PCI_CHIP_RV710_9557 0x9557 > #define PCI_CHIP_RV630_9580 0x9580 > #define PCI_CHIP_RV630_9581 0x9581 > #define PCI_CHIP_RV630_9583 0x9583 > @@ -438,3 +453,4 @@ > #define PCI_CHIP_RS880_9712 0x9712 > #define PCI_CHIP_RS880_9713 0x9713 > #define PCI_CHIP_RS880_9714 0x9714 > +#define PCI_CHIP_RS880_9715 0x9715 > diff -ru xf86-video-ati-orig/src/atipciids.h xf86-video-ati/src/atipciids.h > --- xf86-video-ati-orig/src/atipciids.h Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/atipciids.h Sun Jan 9 11:43:36 2011 > @@ -41,6 +41,9 @@ > #define PCI_VENDOR_DELL 0x1028 > #define PCI_VENDOR_VIA 0x1106 > #define PCI_VENDOR_INTEL 0x8086 > +#ifndef PCI_VENDOR_HP > +#define PCI_VENDOR_HP 0x103c > +#endif > > #include "ati_pciids_gen.h" > > diff -ru xf86-video-ati-orig/src/legacy_crtc.c > xf86-video-ati/src/legacy_crtc.c > --- xf86-video-ati-orig/src/legacy_crtc.c Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/legacy_crtc.c Sun Jan 9 11:43:36 2011 > @@ -649,6 +649,9 @@ > if (!info->directRenderingEnabled) > return; > > + if (info->ChipFamily >= CHIP_FAMILY_R600) > + return; > + > modeset.crtc = radeon_crtc->crtc_id; > modeset.cmd = post ? _DRM_POST_MODESET : _DRM_PRE_MODESET; > > diff -ru xf86-video-ati-orig/src/pcidb/ati_pciids.csv > xf86-video-ati/src/pcidb/ati_pciids.csv > --- xf86-video-ati-orig/src/pcidb/ati_pciids.csv Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/pcidb/ati_pciids.csv Sun Jan 9 11:43:36 2011 > @@ -61,6 +61,8 @@ > "0x4A4E","R420_JN","R420",1,,,,,"ATI Radeon Mobility 9800 (M18) JN (AGP)" > "0x4A4F","R420_4A4F","R420",,,,,,"ATI Radeon X800 SE (R420) (AGP)" > "0x4A50","R420_JP","R420",,,,,,"ATI Radeon X800XT (R420) JP (AGP)" > +"0x4A54","R420_JT","R420",,,,,,"ATI Radeon X800 VE (R420) JT (AGP)" > +"0x4B48","R481_4B48","R420",,,,,,"ATI Radeon X850 (R480) (AGP)" > "0x4B49","R481_4B49","R420",,,,,,"ATI Radeon X850 XT (R480) (AGP)" > "0x4B4A","R481_4B4A","R420",,,,,,"ATI Radeon X850 SE (R480) (AGP)" > "0x4B4B","R481_4B4B","R420",,,,,,"ATI Radeon X850 PRO (R480) (AGP)" > @@ -335,6 +337,7 @@ > "0x9440","RV770_9440","RV770",,,,,,"ATI Radeon 4800 Series" > "0x9441","RV770_9441","RV770",,,,,,"ATI Radeon HD 4870 x2" > "0x9442","RV770_9442","RV770",,,,,,"ATI Radeon 4800 Series" > +"0x9443","RV770_9443","RV770",,,,,,"ATI Radeon HD 4850 x2" > "0x9444","RV770_9444","RV770",,,,,,"ATI FirePro V8750 (FireGL)" > "0x9446","RV770_9446","RV770",,,,,,"ATI FirePro V7760 (FireGL)" > "0x944A","RV770_944A","RV770",1,,,,,"ATI Mobility RADEON HD 4850" > @@ -352,15 +355,26 @@ > "0x946B","RV770_946B","RV770",1,,,,,"ATI M98" > "0x947A","RV770_947A","RV770",1,,,,,"ATI M98" > "0x947B","RV770_947B","RV770",1,,,,,"ATI M98" > +"0x9480","RV730_9480","RV730",1,,,,,"ATI Mobility Radeon HD 4650" > "0x9487","RV730_9487","RV730",,,,,,"ATI Radeon RV730 (AGP)" > +"0x9488","RV730_9488","RV730",1,,,,,"ATI Mobility Radeon HD 4670" > "0x9489","RV730_9489","RV730",1,,,,,"ATI FirePro M5750" > "0x948F","RV730_948F","RV730",,,,,,"ATI Radeon RV730 (AGP)" > "0x9490","RV730_9490","RV730",,,,,,"ATI RV730XT [Radeon HD 4670]" > "0x9491","RV730_9491","RV730",,,,,,"ATI RADEON E4600" > +"0x9495","RV730_9495","RV730",,,,,,"ATI Radeon HD 4600 Series" > "0x9498","RV730_9498","RV730",,,,,,"ATI RV730 PRO [Radeon HD 4650]" > "0x949C","RV730_949C","RV730",,,,,,"ATI FirePro V7750 (FireGL)" > "0x949E","RV730_949E","RV730",,,,,,"ATI FirePro V5700 (FireGL)" > "0x949F","RV730_949F","RV730",,,,,,"ATI FirePro V3750 (FireGL)" > +"0x94A0","RV740_94A0","RV740",1,,,,,"ATI Mobility Radeon HD 4830" > +"0x94A1","RV740_94A1","RV740",1,,,,,"ATI Mobility Radeon HD 4850" > +"0x94A3","RV740_94A3","RV740",1,,,,,"ATI FirePro M7740" > +"0x94B1","RV740_94B1","RV740",,,,,,"ATI RV740" > +"0x94B3","RV740_94B3","RV740",,,,,,"ATI Radeon HD 4770" > +"0x94B4","RV740_94B4","RV740",,,,,,"ATI Radeon HD 4700 Series" > +"0x94B5","RV740_94B5","RV740",,,,,,"ATI Radeon HD 4770" > +"0x94B9","RV740_94B9","RV740",1,,,,,"ATI FirePro M5750" > "0x94C0","RV610_94C0","RV610",,,,,,"ATI RV610" > "0x94C1","RV610_94C1","RV610",,,,,,"ATI Radeon HD 2400 XT" > "0x94C3","RV610_94C3","RV610",,,,,,"ATI Radeon HD 2400 Pro" > @@ -393,6 +407,7 @@ > "0x9552","RV710_9552","RV710",1,,,,,"ATI Mobility Radeon 4300 Series" > "0x9553","RV710_9553","RV710",1,,,,,"ATI Mobility Radeon 4500 Series" > "0x9555","RV710_9555","RV710",1,,,,,"ATI Mobility Radeon 4500 Series" > +"0x9557","RV710_9557","RV710",1,,,,,"ATI FirePro RG220" > "0x9580","RV630_9580","RV630",,,,,,"ATI RV630" > "0x9581","RV630_9581","RV630",1,,,,,"ATI Mobility Radeon HD 2600" > "0x9583","RV630_9583","RV630",1,,,,,"ATI Mobility Radeon HD 2600 XT" > @@ -434,8 +449,9 @@ > "0x9614","RS780_9614","RS780",,1,,,1,"ATI Radeon HD 3300 Graphics" > "0x9615","RS780_9615","RS780",,1,,,1,"ATI Radeon HD 3200 Graphics" > "0x9616","RS780_9616","RS780",,1,,,1,"ATI Radeon 3000 Graphics" > -"0x9710","RS880_9710","RS880",,1,,,1,"ATI Radeon HD Graphics" > -"0x9711","RS880_9711","RS880",,1,,,1,"ATI Radeon Graphics" > -"0x9712","RS880_9712","RS880",1,1,,,1,"ATI Mobility Radeon HD Graphics" > -"0x9713","RS880_9713","RS880",1,1,,,1,"ATI Mobility Radeon Graphics" > -"0x9714","RS880_9714","RS880",,1,,,1,"ATI Radeon Graphics" > +"0x9710","RS880_9710","RS880",,1,,,1,"ATI Radeon HD 4200" > +"0x9711","RS880_9711","RS880",,1,,,1,"ATI Radeon 4100" > +"0x9712","RS880_9712","RS880",1,1,,,1,"ATI Mobility Radeon HD 4200" > +"0x9713","RS880_9713","RS880",1,1,,,1,"ATI Mobility Radeon 4100" > +"0x9714","RS880_9714","RS880",,1,,,1,"ATI Radeon HD 4290" > +"0x9715","RS880_9715","RS880",,1,,,1,"ATI Radeon HD 4290" > diff -ru xf86-video-ati-orig/src/r600_exa.c xf86-video-ati/src/r600_exa.c > --- xf86-video-ati-orig/src/r600_exa.c Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/r600_exa.c Sun Jan 9 11:43:36 2011 > @@ -315,6 +315,7 @@ > if ((info->ChipFamily == CHIP_FAMILY_RV610) || > (info->ChipFamily == CHIP_FAMILY_RV620) || > (info->ChipFamily == CHIP_FAMILY_RS780) || > + (info->ChipFamily == CHIP_FAMILY_RS880) || > (info->ChipFamily == CHIP_FAMILY_RV710)) > cp_set_surface_sync(pScrn, accel_state->ib, TC_ACTION_ENA_bit, > accel_state->vb_size, accel_state->vb_mc_addr); > @@ -553,6 +554,7 @@ > if ((info->ChipFamily == CHIP_FAMILY_RV610) || > (info->ChipFamily == CHIP_FAMILY_RV620) || > (info->ChipFamily == CHIP_FAMILY_RS780) || > + (info->ChipFamily == CHIP_FAMILY_RS880) || > (info->ChipFamily == CHIP_FAMILY_RV710)) > cp_set_surface_sync(pScrn, accel_state->ib, TC_ACTION_ENA_bit, > accel_state->vb_size, accel_state->vb_mc_addr); > @@ -1723,6 +1725,7 @@ > if ((info->ChipFamily == CHIP_FAMILY_RV610) || > (info->ChipFamily == CHIP_FAMILY_RV620) || > (info->ChipFamily == CHIP_FAMILY_RS780) || > + (info->ChipFamily == CHIP_FAMILY_RS880) || > (info->ChipFamily == CHIP_FAMILY_RV710)) > cp_set_surface_sync(pScrn, accel_state->ib, TC_ACTION_ENA_bit, > accel_state->vb_size, accel_state->vb_mc_addr); > @@ -1851,6 +1854,10 @@ > uint32_t scratch_pitch = scratch_pitch_bytes / (bpp / 8); > int wpass = w * (bpp/8); > drmBufPtr scratch; > + > + /* RV740 seems to be particularly problematic with small xfers */ > + if ((info->ChipFamily == CHIP_FAMILY_RV740) && (w < 32 || h < 32)) > + return FALSE; > > if (src_pitch & 7) > return FALSE; > diff -ru xf86-video-ati-orig/src/r600_textured_videofuncs.c > xf86-video-ati/src/r600_textured_videofuncs.c > --- xf86-video-ati-orig/src/r600_textured_videofuncs.c Sun Jan 9 > 11:43:11 2011 > +++ xf86-video-ati/src/r600_textured_videofuncs.c Sun Jan 9 11:43:36 2011 > @@ -69,6 +69,7 @@ > if ((info->ChipFamily == CHIP_FAMILY_RV610) || > (info->ChipFamily == CHIP_FAMILY_RV620) || > (info->ChipFamily == CHIP_FAMILY_RS780) || > + (info->ChipFamily == CHIP_FAMILY_RS880) || > (info->ChipFamily == CHIP_FAMILY_RV710)) > cp_set_surface_sync(pScrn, accel_state->ib, TC_ACTION_ENA_bit, > accel_state->vb_size, accel_state->vb_mc_addr); > diff -ru xf86-video-ati-orig/src/r6xx_accel.c xf86-video-ati/src/r6xx_accel.c > --- xf86-video-ati-orig/src/r6xx_accel.c Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/r6xx_accel.c Sun Jan 9 11:43:36 2011 > @@ -197,6 +197,7 @@ > if ((info->ChipFamily == CHIP_FAMILY_RV610) || > (info->ChipFamily == CHIP_FAMILY_RV620) || > (info->ChipFamily == CHIP_FAMILY_RS780) || > + (info->ChipFamily == CHIP_FAMILY_RS880) || > (info->ChipFamily == CHIP_FAMILY_RV710)) > sq_config = 0; // no VC > else > @@ -738,6 +739,7 @@ > case CHIP_FAMILY_RV610: > case CHIP_FAMILY_RV620: > case CHIP_FAMILY_RS780: > + case CHIP_FAMILY_RS880: > default: > sq_conf.num_ps_gprs = 84; > sq_conf.num_vs_gprs = 36; > @@ -784,6 +786,7 @@ > sq_conf.num_es_stack_entries = 0; > break; > case CHIP_FAMILY_RV730: > + case CHIP_FAMILY_RV740: > sq_conf.num_ps_gprs = 84; > sq_conf.num_vs_gprs = 36; > sq_conf.num_temp_gprs = 4; > diff -ru xf86-video-ati-orig/src/radeon.h xf86-video-ati/src/radeon.h > --- xf86-video-ati-orig/src/radeon.h Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon.h Sun Jan 9 11:43:36 2011 > @@ -318,7 +318,6 @@ > CHIP_FAMILY_RS690, > CHIP_FAMILY_RS740, > CHIP_FAMILY_R600, /* r600 */ > - CHIP_FAMILY_R630, > CHIP_FAMILY_RV610, > CHIP_FAMILY_RV630, > CHIP_FAMILY_RV670, > @@ -329,6 +328,7 @@ > CHIP_FAMILY_RV770, > CHIP_FAMILY_RV730, > CHIP_FAMILY_RV710, > + CHIP_FAMILY_RV740, > CHIP_FAMILY_LAST > } RADEONChipFamily; > > diff -ru xf86-video-ati-orig/src/radeon_chipinfo_gen.h > xf86-video-ati/src/radeon_chipinfo_gen.h > --- xf86-video-ati-orig/src/radeon_chipinfo_gen.h Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon_chipinfo_gen.h Sun Jan 9 11:43:36 2011 > @@ -40,6 +40,8 @@ > { 0x4A4E, CHIP_FAMILY_R420, 1, 0, 0, 0, 0 }, > { 0x4A4F, CHIP_FAMILY_R420, 0, 0, 0, 0, 0 }, > { 0x4A50, CHIP_FAMILY_R420, 0, 0, 0, 0, 0 }, > + { 0x4A54, CHIP_FAMILY_R420, 0, 0, 0, 0, 0 }, > + { 0x4B48, CHIP_FAMILY_R420, 0, 0, 0, 0, 0 }, > { 0x4B49, CHIP_FAMILY_R420, 0, 0, 0, 0, 0 }, > { 0x4B4A, CHIP_FAMILY_R420, 0, 0, 0, 0, 0 }, > { 0x4B4B, CHIP_FAMILY_R420, 0, 0, 0, 0, 0 }, > @@ -254,6 +256,7 @@ > { 0x9440, CHIP_FAMILY_RV770, 0, 0, 0, 0, 0 }, > { 0x9441, CHIP_FAMILY_RV770, 0, 0, 0, 0, 0 }, > { 0x9442, CHIP_FAMILY_RV770, 0, 0, 0, 0, 0 }, > + { 0x9443, CHIP_FAMILY_RV770, 0, 0, 0, 0, 0 }, > { 0x9444, CHIP_FAMILY_RV770, 0, 0, 0, 0, 0 }, > { 0x9446, CHIP_FAMILY_RV770, 0, 0, 0, 0, 0 }, > { 0x944A, CHIP_FAMILY_RV770, 1, 0, 0, 0, 0 }, > @@ -271,15 +274,26 @@ > { 0x946B, CHIP_FAMILY_RV770, 1, 0, 0, 0, 0 }, > { 0x947A, CHIP_FAMILY_RV770, 1, 0, 0, 0, 0 }, > { 0x947B, CHIP_FAMILY_RV770, 1, 0, 0, 0, 0 }, > + { 0x9480, CHIP_FAMILY_RV730, 1, 0, 0, 0, 0 }, > { 0x9487, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > + { 0x9488, CHIP_FAMILY_RV730, 1, 0, 0, 0, 0 }, > { 0x9489, CHIP_FAMILY_RV730, 1, 0, 0, 0, 0 }, > { 0x948F, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > { 0x9490, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > { 0x9491, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > + { 0x9495, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > { 0x9498, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > { 0x949C, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > { 0x949E, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > { 0x949F, CHIP_FAMILY_RV730, 0, 0, 0, 0, 0 }, > + { 0x94A0, CHIP_FAMILY_RV740, 1, 0, 0, 0, 0 }, > + { 0x94A1, CHIP_FAMILY_RV740, 1, 0, 0, 0, 0 }, > + { 0x94A3, CHIP_FAMILY_RV740, 1, 0, 0, 0, 0 }, > + { 0x94B1, CHIP_FAMILY_RV740, 0, 0, 0, 0, 0 }, > + { 0x94B3, CHIP_FAMILY_RV740, 0, 0, 0, 0, 0 }, > + { 0x94B4, CHIP_FAMILY_RV740, 0, 0, 0, 0, 0 }, > + { 0x94B5, CHIP_FAMILY_RV740, 0, 0, 0, 0, 0 }, > + { 0x94B9, CHIP_FAMILY_RV740, 1, 0, 0, 0, 0 }, > { 0x94C0, CHIP_FAMILY_RV610, 0, 0, 0, 0, 0 }, > { 0x94C1, CHIP_FAMILY_RV610, 0, 0, 0, 0, 0 }, > { 0x94C3, CHIP_FAMILY_RV610, 0, 0, 0, 0, 0 }, > @@ -312,6 +326,7 @@ > { 0x9552, CHIP_FAMILY_RV710, 1, 0, 0, 0, 0 }, > { 0x9553, CHIP_FAMILY_RV710, 1, 0, 0, 0, 0 }, > { 0x9555, CHIP_FAMILY_RV710, 1, 0, 0, 0, 0 }, > + { 0x9557, CHIP_FAMILY_RV710, 1, 0, 0, 0, 0 }, > { 0x9580, CHIP_FAMILY_RV630, 0, 0, 0, 0, 0 }, > { 0x9581, CHIP_FAMILY_RV630, 1, 0, 0, 0, 0 }, > { 0x9583, CHIP_FAMILY_RV630, 1, 0, 0, 0, 0 }, > @@ -358,4 +373,5 @@ > { 0x9712, CHIP_FAMILY_RS880, 1, 1, 0, 0, 1 }, > { 0x9713, CHIP_FAMILY_RS880, 1, 1, 0, 0, 1 }, > { 0x9714, CHIP_FAMILY_RS880, 0, 1, 0, 0, 1 }, > + { 0x9715, CHIP_FAMILY_RS880, 0, 1, 0, 0, 1 }, > }; > diff -ru xf86-video-ati-orig/src/radeon_chipset_gen.h > xf86-video-ati/src/radeon_chipset_gen.h > --- xf86-video-ati-orig/src/radeon_chipset_gen.h Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon_chipset_gen.h Sun Jan 9 11:43:36 2011 > @@ -40,6 +40,8 @@ > { PCI_CHIP_R420_JN, "ATI Radeon Mobility 9800 (M18) JN (AGP)" }, > { PCI_CHIP_R420_4A4F, "ATI Radeon X800 SE (R420) (AGP)" }, > { PCI_CHIP_R420_JP, "ATI Radeon X800XT (R420) JP (AGP)" }, > + { PCI_CHIP_R420_JT, "ATI Radeon X800 VE (R420) JT (AGP)" }, > + { PCI_CHIP_R481_4B48, "ATI Radeon X850 (R480) (AGP)" }, > { PCI_CHIP_R481_4B49, "ATI Radeon X850 XT (R480) (AGP)" }, > { PCI_CHIP_R481_4B4A, "ATI Radeon X850 SE (R480) (AGP)" }, > { PCI_CHIP_R481_4B4B, "ATI Radeon X850 PRO (R480) (AGP)" }, > @@ -254,6 +256,7 @@ > { PCI_CHIP_RV770_9440, "ATI Radeon 4800 Series" }, > { PCI_CHIP_RV770_9441, "ATI Radeon HD 4870 x2" }, > { PCI_CHIP_RV770_9442, "ATI Radeon 4800 Series" }, > + { PCI_CHIP_RV770_9443, "ATI Radeon HD 4850 x2" }, > { PCI_CHIP_RV770_9444, "ATI FirePro V8750 (FireGL)" }, > { PCI_CHIP_RV770_9446, "ATI FirePro V7760 (FireGL)" }, > { PCI_CHIP_RV770_944A, "ATI Mobility RADEON HD 4850" }, > @@ -271,15 +274,26 @@ > { PCI_CHIP_RV770_946B, "ATI M98" }, > { PCI_CHIP_RV770_947A, "ATI M98" }, > { PCI_CHIP_RV770_947B, "ATI M98" }, > + { PCI_CHIP_RV730_9480, "ATI Mobility Radeon HD 4650" }, > { PCI_CHIP_RV730_9487, "ATI Radeon RV730 (AGP)" }, > + { PCI_CHIP_RV730_9488, "ATI Mobility Radeon HD 4670" }, > { PCI_CHIP_RV730_9489, "ATI FirePro M5750" }, > { PCI_CHIP_RV730_948F, "ATI Radeon RV730 (AGP)" }, > { PCI_CHIP_RV730_9490, "ATI RV730XT [Radeon HD 4670]" }, > { PCI_CHIP_RV730_9491, "ATI RADEON E4600" }, > + { PCI_CHIP_RV730_9495, "ATI Radeon HD 4600 Series" }, > { PCI_CHIP_RV730_9498, "ATI RV730 PRO [Radeon HD 4650]" }, > { PCI_CHIP_RV730_949C, "ATI FirePro V7750 (FireGL)" }, > { PCI_CHIP_RV730_949E, "ATI FirePro V5700 (FireGL)" }, > { PCI_CHIP_RV730_949F, "ATI FirePro V3750 (FireGL)" }, > + { PCI_CHIP_RV740_94A0, "ATI Mobility Radeon HD 4830" }, > + { PCI_CHIP_RV740_94A1, "ATI Mobility Radeon HD 4850" }, > + { PCI_CHIP_RV740_94A3, "ATI FirePro M7740" }, > + { PCI_CHIP_RV740_94B1, "ATI RV740" }, > + { PCI_CHIP_RV740_94B3, "ATI Radeon HD 4770" }, > + { PCI_CHIP_RV740_94B4, "ATI Radeon HD 4700 Series" }, > + { PCI_CHIP_RV740_94B5, "ATI Radeon HD 4770" }, > + { PCI_CHIP_RV740_94B9, "ATI FirePro M5750" }, > { PCI_CHIP_RV610_94C0, "ATI RV610" }, > { PCI_CHIP_RV610_94C1, "ATI Radeon HD 2400 XT" }, > { PCI_CHIP_RV610_94C3, "ATI Radeon HD 2400 Pro" }, > @@ -312,6 +326,7 @@ > { PCI_CHIP_RV710_9552, "ATI Mobility Radeon 4300 Series" }, > { PCI_CHIP_RV710_9553, "ATI Mobility Radeon 4500 Series" }, > { PCI_CHIP_RV710_9555, "ATI Mobility Radeon 4500 Series" }, > + { PCI_CHIP_RV710_9557, "ATI FirePro RG220" }, > { PCI_CHIP_RV630_9580, "ATI RV630" }, > { PCI_CHIP_RV630_9581, "ATI Mobility Radeon HD 2600" }, > { PCI_CHIP_RV630_9583, "ATI Mobility Radeon HD 2600 XT" }, > @@ -353,10 +368,11 @@ > { PCI_CHIP_RS780_9614, "ATI Radeon HD 3300 Graphics" }, > { PCI_CHIP_RS780_9615, "ATI Radeon HD 3200 Graphics" }, > { PCI_CHIP_RS780_9616, "ATI Radeon 3000 Graphics" }, > - { PCI_CHIP_RS880_9710, "ATI Radeon HD Graphics" }, > - { PCI_CHIP_RS880_9711, "ATI Radeon Graphics" }, > - { PCI_CHIP_RS880_9712, "ATI Mobility Radeon HD Graphics" }, > - { PCI_CHIP_RS880_9713, "ATI Mobility Radeon Graphics" }, > - { PCI_CHIP_RS880_9714, "ATI Radeon Graphics" }, > + { PCI_CHIP_RS880_9710, "ATI Radeon HD 4200" }, > + { PCI_CHIP_RS880_9711, "ATI Radeon 4100" }, > + { PCI_CHIP_RS880_9712, "ATI Mobility Radeon HD 4200" }, > + { PCI_CHIP_RS880_9713, "ATI Mobility Radeon 4100" }, > + { PCI_CHIP_RS880_9714, "ATI Radeon HD 4290" }, > + { PCI_CHIP_RS880_9715, "ATI Radeon HD 4290" }, > { -1, NULL } > }; > diff -ru xf86-video-ati-orig/src/radeon_cursor.c > xf86-video-ati/src/radeon_cursor.c > --- xf86-video-ati-orig/src/radeon_cursor.c Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon_cursor.c Sun Jan 9 11:43:36 2011 > @@ -73,14 +73,17 @@ > #define CURSOR_SWAPPING_DECL_MMIO unsigned char *RADEONMMIO = info->MMIO; > #define CURSOR_SWAPPING_START() \ > do { \ > + if (info->ChipFamily < CHIP_FAMILY_R600) \ > OUTREG(RADEON_SURFACE_CNTL, \ > (info->ModeReg->surface_cntl | \ > RADEON_NONSURF_AP0_SWP_32BPP | RADEON_NONSURF_AP1_SWP_32BPP) & \ > ~(RADEON_NONSURF_AP0_SWP_16BPP | RADEON_NONSURF_AP1_SWP_16BPP)); \ > } while (0) > -#define CURSOR_SWAPPING_END() (OUTREG(RADEON_SURFACE_CNTL, \ > - info->ModeReg->surface_cntl)) > - > +#define CURSOR_SWAPPING_END() \ > + do { \ > + if (info->ChipFamily < CHIP_FAMILY_R600) \ > + OUTREG(RADEON_SURFACE_CNTL, info->ModeReg->surface_cntl); \ > + } while (0) > #else > > #define CURSOR_SWAPPING_DECL_MMIO > diff -ru xf86-video-ati-orig/src/radeon_dri.c xf86-video-ati/src/radeon_dri.c > --- xf86-video-ati-orig/src/radeon_dri.c Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon_dri.c Sun Jan 9 11:43:36 2011 > @@ -745,6 +745,8 @@ > { PCI_VENDOR_INTEL,0x2570, PCI_VENDOR_ATI,0x4a4e, > PCI_VENDOR_DELL,0x5106, 4 }, > /* Intel 82865G/PE/P DRAM Controller/Host-Hub / RV280 [Radeon 9200 SE] > Needs AGPMode 4 (lp #300304) */ > { PCI_VENDOR_INTEL,0x2570, PCI_VENDOR_ATI,0x5964, 0x148c,0x2073, > 4 }, > + /* Intel 82855PM host bridge / Mobility M7 LW Needs AGPMode 4 (lp: > #353996) */ > + { PCI_VENDOR_INTEL,0x3340, PCI_VENDOR_ATI,0x4c57, > PCI_VENDOR_IBM,0x0530, 4 }, > /* Intel 82855PM Processor to I/O Controller / Mobility M6 LY Needs > AGPMode 1 (deb #467235) */ > { PCI_VENDOR_INTEL,0x3340, PCI_VENDOR_ATI,0x4c59, > PCI_VENDOR_IBM,0x052f, 1 }, > /* Intel 82855PM host bridge / Mobility 9600 M10 RV350 Needs AGPMode 1 > (lp #195051) */ > @@ -767,7 +769,17 @@ > { PCI_VENDOR_INTEL,0x3580, PCI_VENDOR_ATI,0x4e50, > PCI_VENDOR_ASUS,0x1942, 1 }, > /* Intel 82852/82855 host bridge / Mobility 9600/9700 Needs AGPMode 1 > (deb #510208) */ > { PCI_VENDOR_INTEL,0x3580, PCI_VENDOR_ATI,0x4e50, 0x10cf,0x127f, > 1 }, > + /* Intel 82443BX/ZX/DX Host bridge / RV280 [Radeon 9200] Needs AGPMode 1 > (lp #370205) */ > + { PCI_VENDOR_INTEL,0x7190, PCI_VENDOR_ATI,0x5961, 0x174b,0x7c13, > 1 }, > > + /* Ali Corp M1671 Super P4 Northbridge / Mobility M6 LY Needs AGPMode 1 > (lp #146303)*/ > + { 0x10b9,0x1671, PCI_VENDOR_ATI,0x4c59, 0x103c,0x0027, > 1 }, > + > + /* SiS Host Bridge 655 / R420 [Radeon X800] Needs AGPMode 4 (lp #371296) > */ > + { 0x1039,0x0655, PCI_VENDOR_ATI,0x4a4b, > PCI_VENDOR_ATI,0x4422, 4 }, > + /* SiS Host Bridge / RV280 Needs AGPMode 4 */ > + { 0x1039,0x0741, PCI_VENDOR_ATI,0x5964, 0x148c,0x2073, > 4 }, > + > /* ASRock K7VT4A+ AGP 8x / ATI Radeon 9250 AGP Needs AGPMode 4 (lp > #133192) */ > { 0x1849,0x3189, PCI_VENDOR_ATI,0x5960, 0x1787,0x5960, > 4 }, > > @@ -787,6 +799,10 @@ > { PCI_VENDOR_VIA,0x3189, PCI_VENDOR_ATI,0x5960, 0x1462,0x0380, > 4 }, > /* VIA VT8377 Host Bridge / RV280 Needs AGPMode 4 (ati ML) */ > { PCI_VENDOR_VIA,0x3189, PCI_VENDOR_ATI,0x5964, 0x148c,0x2073, > 4 }, > + /* VIA VT8377 Host Bridge / RV280 Needs AGPMode 4 (fdo #12544) */ > + { PCI_VENDOR_VIA,0x3189, PCI_VENDOR_ATI,0x5964, > PCI_VENDOR_ASUS,0xc008, 4 }, > + /* VIA VT8377 Host Bridge / RV280 Needs AGPMode 4 (deb #545040) */ > + { PCI_VENDOR_VIA,0x3189, PCI_VENDOR_ATI,0x5960, > PCI_VENDOR_ASUS,0x004c, 4 }, > > /* ATI Host Bridge / RV280 [M9+] Needs AGPMode 1 (phoronix forum) */ > { PCI_VENDOR_ATI,0xcbb2, PCI_VENDOR_ATI,0x5c61, > PCI_VENDOR_SONY,0x8175, 1 }, > @@ -794,6 +810,9 @@ > /* HP Host Bridge / R300 [FireGL X1] Needs AGPMode 2 (fdo #7770) */ > { PCI_VENDOR_HP,0x122e, PCI_VENDOR_ATI,0x4e47, > PCI_VENDOR_ATI,0x0152, 2 }, > > + /* nVidia Host Bridge / R420 [X800 Pro] Needs AGPMode 4 (fdo #22726) */ > + { 0x10de,0x00e1, PCI_VENDOR_ATI,0x4a49, > PCI_VENDOR_ATI,0x0002, 4 }, > + > { 0, 0, 0, 0, 0, 0, 0 }, > }; > > @@ -1538,12 +1557,13 @@ > info->dri->pDRIInfo = pDRIInfo; > pDRIInfo->drmDriverName = RADEON_DRIVER_NAME; > > - if ( (info->ChipFamily >= CHIP_FAMILY_R300) ) { > + if ( (info->ChipFamily >= CHIP_FAMILY_R600) ) > + pDRIInfo->clientDriverName = R600_DRIVER_NAME; > + else if ( (info->ChipFamily >= CHIP_FAMILY_R300) ) > pDRIInfo->clientDriverName = R300_DRIVER_NAME; > - } else > - if ( info->ChipFamily >= CHIP_FAMILY_R200 ) > + else if ( info->ChipFamily >= CHIP_FAMILY_R200 ) > pDRIInfo->clientDriverName = R200_DRIVER_NAME; > - else > + else > pDRIInfo->clientDriverName = RADEON_DRIVER_NAME; > > if (xf86LoaderCheckSymbol("DRICreatePCIBusID")) { > diff -ru xf86-video-ati-orig/src/radeon_driver.c > xf86-video-ati/src/radeon_driver.c > --- xf86-video-ati-orig/src/radeon_driver.c Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon_driver.c Sun Jan 9 11:43:36 2011 > @@ -1796,19 +1796,24 @@ > case PCI_CHIP_RV100_QY: > case PCI_CHIP_RV100_QZ: > /* DELL triple-head configuration. */ > - if ((PCI_SUB_VENDOR_ID(info->PciInfo) == PCI_VENDOR_DELL) && > - ((PCI_SUB_DEVICE_ID(info->PciInfo) == 0x016c) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x016d) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x016e) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x016f) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x0170) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x017d) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x017e) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x0183) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x018a) || > - (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x019a))) { > + if (((PCI_SUB_VENDOR_ID(info->PciInfo) == PCI_VENDOR_DELL) && > + ((PCI_SUB_DEVICE_ID(info->PciInfo) == 0x016c) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x016d) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x016e) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x016f) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x0170) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x017d) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x017e) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x0183) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x018a) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x019a) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x01b1) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x01b2) || > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x0205))) || > + ((PCI_SUB_VENDOR_ID(info->PciInfo) == PCI_VENDOR_HP) && > + (PCI_SUB_DEVICE_ID(info->PciInfo) == 0x31fb))) { > info->IsDellServer = TRUE; > - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "DELL server detected, force > to special setup\n"); > + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "DELL/HP server detected, > force to special setup\n"); > } > break; > case PCI_CHIP_RS482_5974: > @@ -1822,16 +1827,6 @@ > break; > } > > - if (info->ChipFamily >= CHIP_FAMILY_R600) { > - xf86DrvMsg(pScrn->scrnIndex, X_WARNING, > - "R600 support is mostly incomplete and very > experimental\n"); > - } > - > - if ((info->ChipFamily >= CHIP_FAMILY_RV515) && (info->ChipFamily < > CHIP_FAMILY_R600)) { > - xf86DrvMsg(pScrn->scrnIndex, X_WARNING, > - "R500 support is under development. Please report any > issues to xorg-driver-...@lists.x.org\n"); > - } > - > from = X_PROBED; > info->LinearAddr = PCI_REGION_BASE(info->PciInfo, 0, REGION_MEM) & > ~0x1ffffffULL; > pScrn->memPhysBase = info->LinearAddr; > @@ -1950,7 +1945,6 @@ > } > } > > - > xf86DrvMsg(pScrn->scrnIndex, X_INFO, "%s card detected\n", > (info->cardType==CARD_PCI) ? "PCI" : > (info->cardType==CARD_PCIE) ? "PCIE" : "AGP"); > @@ -1959,6 +1953,11 @@ > if (info->cardType == CARD_PCIE && info->IsIGP) > info->cardType = CARD_PCI; > > + /* some rs4xx cards report as agp */ > + if ((info->ChipFamily == CHIP_FAMILY_RS400) || > + (info->ChipFamily == CHIP_FAMILY_RS480)) > + info->cardType = CARD_PCI; > + > if ((info->ChipFamily >= CHIP_FAMILY_R600) && info->IsIGP) > info->cardType = CARD_PCIE; > > @@ -1970,12 +1969,21 @@ > if (strcmp(s, "AGP") == 0) { > info->cardType = CARD_AGP; > xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "Forced into AGP mode\n"); > - } else if (strcmp(s, "PCI") == 0) { > - info->cardType = CARD_PCI; > - xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "Forced into PCI mode\n"); > - } else if (strcmp(s, "PCIE") == 0) { > - info->cardType = CARD_PCIE; > - xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "Forced into PCI Express > mode\n"); > + } else if ((strcmp(s, "PCI") == 0) || > + (strcmp(s, "PCIE") == 0)) { > + if ((info->ChipFamily == CHIP_FAMILY_RS400) || > + (info->ChipFamily == CHIP_FAMILY_RS480) || > + (info->ChipFamily == CHIP_FAMILY_RS690) || > + (info->ChipFamily == CHIP_FAMILY_RS740)) { > + info->cardType = CARD_PCI; > + xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "Forced into PCI > mode\n"); > + } else if (info->ChipFamily >= CHIP_FAMILY_RV380) { > + info->cardType = CARD_PCIE; > + xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "Forced into PCI Express > mode\n"); > + } else { > + info->cardType = CARD_PCI; > + xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "Forced into PCI > mode\n"); > + } > } else { > xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, > "Invalid BusType option, using detected type\n"); > @@ -2073,6 +2081,9 @@ > } > > info->useEXA = FALSE; > + /* if we have shadow fb bail */ > + if (info->r600_shadow_fb) > + return TRUE; > > if (info->ChipFamily >= CHIP_FAMILY_R600) { > xf86DrvMsg(pScrn->scrnIndex, X_DEFAULT, > @@ -2245,9 +2256,6 @@ > return FALSE; > } > } > - > - if (info->ChipFamily == CHIP_FAMILY_RS880) > - return FALSE; > > if (!xf86ReturnOptValBool(info->Options, OPTION_DRI, TRUE)) { > xf86DrvMsg(pScrn->scrnIndex, X_INFO, > diff -ru xf86-video-ati-orig/src/radeon_pci_chipset_gen.h > xf86-video-ati/src/radeon_pci_chipset_gen.h > --- xf86-video-ati-orig/src/radeon_pci_chipset_gen.h Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon_pci_chipset_gen.h Sun Jan 9 11:43:36 2011 > @@ -40,6 +40,8 @@ > { PCI_CHIP_R420_JN, PCI_CHIP_R420_JN, RES_SHARED_VGA }, > { PCI_CHIP_R420_4A4F, PCI_CHIP_R420_4A4F, RES_SHARED_VGA }, > { PCI_CHIP_R420_JP, PCI_CHIP_R420_JP, RES_SHARED_VGA }, > + { PCI_CHIP_R420_JT, PCI_CHIP_R420_JT, RES_SHARED_VGA }, > + { PCI_CHIP_R481_4B48, PCI_CHIP_R481_4B48, RES_SHARED_VGA }, > { PCI_CHIP_R481_4B49, PCI_CHIP_R481_4B49, RES_SHARED_VGA }, > { PCI_CHIP_R481_4B4A, PCI_CHIP_R481_4B4A, RES_SHARED_VGA }, > { PCI_CHIP_R481_4B4B, PCI_CHIP_R481_4B4B, RES_SHARED_VGA }, > @@ -254,6 +256,7 @@ > { PCI_CHIP_RV770_9440, PCI_CHIP_RV770_9440, RES_SHARED_VGA }, > { PCI_CHIP_RV770_9441, PCI_CHIP_RV770_9441, RES_SHARED_VGA }, > { PCI_CHIP_RV770_9442, PCI_CHIP_RV770_9442, RES_SHARED_VGA }, > + { PCI_CHIP_RV770_9443, PCI_CHIP_RV770_9443, RES_SHARED_VGA }, > { PCI_CHIP_RV770_9444, PCI_CHIP_RV770_9444, RES_SHARED_VGA }, > { PCI_CHIP_RV770_9446, PCI_CHIP_RV770_9446, RES_SHARED_VGA }, > { PCI_CHIP_RV770_944A, PCI_CHIP_RV770_944A, RES_SHARED_VGA }, > @@ -271,15 +274,26 @@ > { PCI_CHIP_RV770_946B, PCI_CHIP_RV770_946B, RES_SHARED_VGA }, > { PCI_CHIP_RV770_947A, PCI_CHIP_RV770_947A, RES_SHARED_VGA }, > { PCI_CHIP_RV770_947B, PCI_CHIP_RV770_947B, RES_SHARED_VGA }, > + { PCI_CHIP_RV730_9480, PCI_CHIP_RV730_9480, RES_SHARED_VGA }, > { PCI_CHIP_RV730_9487, PCI_CHIP_RV730_9487, RES_SHARED_VGA }, > + { PCI_CHIP_RV730_9488, PCI_CHIP_RV730_9488, RES_SHARED_VGA }, > { PCI_CHIP_RV730_9489, PCI_CHIP_RV730_9489, RES_SHARED_VGA }, > { PCI_CHIP_RV730_948F, PCI_CHIP_RV730_948F, RES_SHARED_VGA }, > { PCI_CHIP_RV730_9490, PCI_CHIP_RV730_9490, RES_SHARED_VGA }, > { PCI_CHIP_RV730_9491, PCI_CHIP_RV730_9491, RES_SHARED_VGA }, > + { PCI_CHIP_RV730_9495, PCI_CHIP_RV730_9495, RES_SHARED_VGA }, > { PCI_CHIP_RV730_9498, PCI_CHIP_RV730_9498, RES_SHARED_VGA }, > { PCI_CHIP_RV730_949C, PCI_CHIP_RV730_949C, RES_SHARED_VGA }, > { PCI_CHIP_RV730_949E, PCI_CHIP_RV730_949E, RES_SHARED_VGA }, > { PCI_CHIP_RV730_949F, PCI_CHIP_RV730_949F, RES_SHARED_VGA }, > + { PCI_CHIP_RV740_94A0, PCI_CHIP_RV740_94A0, RES_SHARED_VGA }, > + { PCI_CHIP_RV740_94A1, PCI_CHIP_RV740_94A1, RES_SHARED_VGA }, > + { PCI_CHIP_RV740_94A3, PCI_CHIP_RV740_94A3, RES_SHARED_VGA }, > + { PCI_CHIP_RV740_94B1, PCI_CHIP_RV740_94B1, RES_SHARED_VGA }, > + { PCI_CHIP_RV740_94B3, PCI_CHIP_RV740_94B3, RES_SHARED_VGA }, > + { PCI_CHIP_RV740_94B4, PCI_CHIP_RV740_94B4, RES_SHARED_VGA }, > + { PCI_CHIP_RV740_94B5, PCI_CHIP_RV740_94B5, RES_SHARED_VGA }, > + { PCI_CHIP_RV740_94B9, PCI_CHIP_RV740_94B9, RES_SHARED_VGA }, > { PCI_CHIP_RV610_94C0, PCI_CHIP_RV610_94C0, RES_SHARED_VGA }, > { PCI_CHIP_RV610_94C1, PCI_CHIP_RV610_94C1, RES_SHARED_VGA }, > { PCI_CHIP_RV610_94C3, PCI_CHIP_RV610_94C3, RES_SHARED_VGA }, > @@ -312,6 +326,7 @@ > { PCI_CHIP_RV710_9552, PCI_CHIP_RV710_9552, RES_SHARED_VGA }, > { PCI_CHIP_RV710_9553, PCI_CHIP_RV710_9553, RES_SHARED_VGA }, > { PCI_CHIP_RV710_9555, PCI_CHIP_RV710_9555, RES_SHARED_VGA }, > + { PCI_CHIP_RV710_9557, PCI_CHIP_RV710_9557, RES_SHARED_VGA }, > { PCI_CHIP_RV630_9580, PCI_CHIP_RV630_9580, RES_SHARED_VGA }, > { PCI_CHIP_RV630_9581, PCI_CHIP_RV630_9581, RES_SHARED_VGA }, > { PCI_CHIP_RV630_9583, PCI_CHIP_RV630_9583, RES_SHARED_VGA }, > @@ -358,5 +373,6 @@ > { PCI_CHIP_RS880_9712, PCI_CHIP_RS880_9712, RES_SHARED_VGA }, > { PCI_CHIP_RS880_9713, PCI_CHIP_RS880_9713, RES_SHARED_VGA }, > { PCI_CHIP_RS880_9714, PCI_CHIP_RS880_9714, RES_SHARED_VGA }, > + { PCI_CHIP_RS880_9715, PCI_CHIP_RS880_9715, RES_SHARED_VGA }, > { -1, -1, RES_UNDEFINED } > }; > diff -ru xf86-video-ati-orig/src/radeon_pci_device_match_gen.h > xf86-video-ati/src/radeon_pci_device_match_gen.h > --- xf86-video-ati-orig/src/radeon_pci_device_match_gen.h Sun Jan 9 > 11:43:11 2011 > +++ xf86-video-ati/src/radeon_pci_device_match_gen.h Sun Jan 9 11:43:36 2011 > @@ -40,6 +40,8 @@ > ATI_DEVICE_MATCH( PCI_CHIP_R420_JN, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_R420_4A4F, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_R420_JP, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_R420_JT, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_R481_4B48, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_R481_4B49, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_R481_4B4A, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_R481_4B4B, 0 ), > @@ -254,6 +256,7 @@ > ATI_DEVICE_MATCH( PCI_CHIP_RV770_9440, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV770_9441, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV770_9442, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV770_9443, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV770_9444, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV770_9446, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV770_944A, 0 ), > @@ -271,15 +274,26 @@ > ATI_DEVICE_MATCH( PCI_CHIP_RV770_946B, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV770_947A, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV770_947B, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV730_9480, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_9487, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV730_9488, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_9489, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_948F, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_9490, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_9491, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV730_9495, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_9498, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_949C, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_949E, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV730_949F, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV740_94A0, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV740_94A1, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV740_94A3, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV740_94B1, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV740_94B3, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV740_94B4, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV740_94B5, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV740_94B9, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV610_94C0, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV610_94C1, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV610_94C3, 0 ), > @@ -312,6 +326,7 @@ > ATI_DEVICE_MATCH( PCI_CHIP_RV710_9552, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV710_9553, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV710_9555, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RV710_9557, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV630_9580, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV630_9581, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RV630_9583, 0 ), > @@ -358,5 +373,6 @@ > ATI_DEVICE_MATCH( PCI_CHIP_RS880_9712, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RS880_9713, 0 ), > ATI_DEVICE_MATCH( PCI_CHIP_RS880_9714, 0 ), > + ATI_DEVICE_MATCH( PCI_CHIP_RS880_9715, 0 ), > { 0, 0, 0 } > }; > diff -ru xf86-video-ati-orig/src/radeon_tv.c xf86-video-ati/src/radeon_tv.c > --- xf86-video-ati-orig/src/radeon_tv.c Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon_tv.c Sun Jan 9 11:43:36 2011 > @@ -186,6 +186,21 @@ > 8, /* crtcPLL_postDiv */ > 1022, /* pixToTV */ > }, > + { /* PAL timing for 14 Mhz ref clk */ > + 800, /* horResolution */ > + 600, /* verResolution */ > + TV_STD_PAL, /* standard */ > + 1131, /* horTotal */ > + 742, /* verTotal */ > + 813, /* horStart */ > + 840, /* horSyncStart */ > + 633, /* verSyncStart */ > + 708369, /* defRestart */ > + 211, /* crtcPLL_N */ > + 9, /* crtcPLL_M */ > + 8, /* crtcPLL_postDiv */ > + 759, /* pixToTV */ > + }, > }; > > #define N_AVAILABLE_MODES (sizeof(availableModes) / sizeof(availableModes[ 0 > ])) > diff -ru xf86-video-ati-orig/src/radeon_tv.h xf86-video-ati/src/radeon_tv.h > --- xf86-video-ati-orig/src/radeon_tv.h Sun Jan 9 11:43:11 2011 > +++ xf86-video-ati/src/radeon_tv.h Sun Jan 9 11:43:36 2011 > @@ -53,6 +53,10 @@ > #define NTSC_TV_PLL_N_14 693 > #define NTSC_TV_PLL_P_14 7 > > +#define PAL_TV_PLL_M_14 19 > +#define PAL_TV_PLL_N_14 353 > +#define PAL_TV_PLL_P_14 5 > + > #define VERT_LEAD_IN_LINES 2 > #define FRAC_BITS 0xe > #define FRAC_MASK 0x3fff > diff -ru xf86-video-ati-orig/src/radeon_version.h > xf86-video-ati/src/radeon_version.h > @@ -38,6 +38,7 @@ > #define RADEON_DRIVER_NAME "radeon" > #define R200_DRIVER_NAME "r200" > #define R300_DRIVER_NAME "r300" > +#define R600_DRIVER_NAME "r600" > > #define RADEON_VERSION_MAJOR PACKAGE_VERSION_MAJOR > #define RADEON_VERSION_MINOR PACKAGE_VERSION_MINOR > >
Hi, The "0x9715","RS880_9715","RS880",,1,,,1,"ATI Radeon HD 4290", that should be "ATI Radeon HD 4250". It's wrong in the xf86-video-ati driver. Needs reporting upstream. Regards Nigel Taylor