hc
2024-05-10 cde9070d9970eef1f7ec2360586c802a16230ad8
kernel/drivers/gpu/drm/gma500/oaktrail_hdmi.c
....@@ -24,11 +24,14 @@
2424 * Li Peng <peng.li@intel.com>
2525 */
2626
27
-#include <drm/drmP.h>
27
+#include <linux/delay.h>
28
+
2829 #include <drm/drm.h>
30
+#include <drm/drm_simple_kms_helper.h>
31
+
32
+#include "psb_drv.h"
2933 #include "psb_intel_drv.h"
3034 #include "psb_intel_reg.h"
31
-#include "psb_drv.h"
3235
3336 #define HDMI_READ(reg) readl(hdmi_dev->regs + (reg))
3437 #define HDMI_WRITE(reg, val) writel(val, hdmi_dev->regs + (reg))
....@@ -157,9 +160,7 @@
157160
158161 static unsigned int htotal_calculate(struct drm_display_mode *mode)
159162 {
160
- u32 htotal, new_crtc_htotal;
161
-
162
- htotal = (mode->crtc_hdisplay - 1) | ((mode->crtc_htotal - 1) << 16);
163
+ u32 new_crtc_htotal;
163164
164165 /*
165166 * 1024 x 768 new_crtc_htotal = 0x1024;
....@@ -620,15 +621,6 @@
620621 .destroy = oaktrail_hdmi_destroy,
621622 };
622623
623
-static void oaktrail_hdmi_enc_destroy(struct drm_encoder *encoder)
624
-{
625
- drm_encoder_cleanup(encoder);
626
-}
627
-
628
-static const struct drm_encoder_funcs oaktrail_hdmi_enc_funcs = {
629
- .destroy = oaktrail_hdmi_enc_destroy,
630
-};
631
-
632624 void oaktrail_hdmi_init(struct drm_device *dev,
633625 struct psb_intel_mode_device *mode_dev)
634626 {
....@@ -651,9 +643,7 @@
651643 &oaktrail_hdmi_connector_funcs,
652644 DRM_MODE_CONNECTOR_DVID);
653645
654
- drm_encoder_init(dev, encoder,
655
- &oaktrail_hdmi_enc_funcs,
656
- DRM_MODE_ENCODER_TMDS, NULL);
646
+ drm_simple_encoder_init(dev, encoder, DRM_MODE_ENCODER_TMDS);
657647
658648 gma_connector_attach_encoder(gma_connector, gma_encoder);
659649
....@@ -672,11 +662,6 @@
672662 failed_connector:
673663 kfree(gma_encoder);
674664 }
675
-
676
-static const struct pci_device_id hdmi_ids[] = {
677
- { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x080d) },
678
- { 0 }
679
-};
680665
681666 void oaktrail_hdmi_setup(struct drm_device *dev)
682667 {
....@@ -815,7 +800,7 @@
815800 PSB_WVDC32(hdmi_dev->saveDPLL_ADJUST, DPLL_ADJUST);
816801 PSB_WVDC32(hdmi_dev->saveDPLL_UPDATE, DPLL_UPDATE);
817802 PSB_WVDC32(hdmi_dev->saveDPLL_CLK_ENABLE, DPLL_CLK_ENABLE);
818
- DRM_UDELAY(150);
803
+ udelay(150);
819804
820805 /* pipe */
821806 PSB_WVDC32(pipeb->src, PIPEBSRC);