drm/radeon: ATOM Endian fix for atombios_crtc_program_pll()
[linux-2.6-block.git] / drivers / gpu / drm / radeon / atombios_crtc.c
index 9541995e4b21df3d4ba5cb9b3ab496a3255b8034..c742944d38055fad222a2ed9999dee352fd1ee11 100644 (file)
@@ -764,7 +764,7 @@ static void atombios_crtc_set_dcpll(struct drm_crtc *crtc,
 }
 
 static void atombios_crtc_program_pll(struct drm_crtc *crtc,
-                                     int crtc_id,
+                                     u32 crtc_id,
                                      int pll_id,
                                      u32 encoder_mode,
                                      u32 encoder_id,
@@ -851,8 +851,7 @@ static void atombios_crtc_program_pll(struct drm_crtc *crtc,
                        args.v5.ucPpll = pll_id;
                        break;
                case 6:
-                       args.v6.ulCrtcPclkFreq.ucCRTC = crtc_id;
-                       args.v6.ulCrtcPclkFreq.ulPixelClock = cpu_to_le32(clock / 10);
+                       args.v6.ulDispEngClkFreq = cpu_to_le32(crtc_id << 24 | clock / 10);
                        args.v6.ucRefDiv = ref_div;
                        args.v6.usFbDiv = cpu_to_le16(fb_div);
                        args.v6.ulFbDivDecFrac = cpu_to_le32(frac_fb_div * 100000);