drm/i915: move intel_hrawclk() to intel_display.c
Make it available outside of intel_dp.c. Signed-off-by: Jani Nikula <jani.nikula@intel.com> Reviewed-by: Clint Taylor <Clinton.A.Taylor@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Родитель
f5d3c3eaab
Коммит
79e50a4f72
|
@ -135,6 +135,39 @@ intel_pch_rawclk(struct drm_device *dev)
|
|||
return I915_READ(PCH_RAWCLK_FREQ) & RAWCLK_FREQ_MASK;
|
||||
}
|
||||
|
||||
/* hrawclock is 1/4 the FSB frequency */
|
||||
int intel_hrawclk(struct drm_device *dev)
|
||||
{
|
||||
struct drm_i915_private *dev_priv = dev->dev_private;
|
||||
uint32_t clkcfg;
|
||||
|
||||
/* There is no CLKCFG reg in Valleyview. VLV hrawclk is 200 MHz */
|
||||
if (IS_VALLEYVIEW(dev))
|
||||
return 200;
|
||||
|
||||
clkcfg = I915_READ(CLKCFG);
|
||||
switch (clkcfg & CLKCFG_FSB_MASK) {
|
||||
case CLKCFG_FSB_400:
|
||||
return 100;
|
||||
case CLKCFG_FSB_533:
|
||||
return 133;
|
||||
case CLKCFG_FSB_667:
|
||||
return 166;
|
||||
case CLKCFG_FSB_800:
|
||||
return 200;
|
||||
case CLKCFG_FSB_1067:
|
||||
return 266;
|
||||
case CLKCFG_FSB_1333:
|
||||
return 333;
|
||||
/* these two are just a guess; one of them might be right */
|
||||
case CLKCFG_FSB_1600:
|
||||
case CLKCFG_FSB_1600_ALT:
|
||||
return 400;
|
||||
default:
|
||||
return 133;
|
||||
}
|
||||
}
|
||||
|
||||
static inline u32 /* units of 100MHz */
|
||||
intel_fdi_link_freq(struct drm_device *dev)
|
||||
{
|
||||
|
|
|
@ -261,40 +261,6 @@ static void intel_dp_unpack_aux(uint32_t src, uint8_t *dst, int dst_bytes)
|
|||
dst[i] = src >> ((3-i) * 8);
|
||||
}
|
||||
|
||||
/* hrawclock is 1/4 the FSB frequency */
|
||||
static int
|
||||
intel_hrawclk(struct drm_device *dev)
|
||||
{
|
||||
struct drm_i915_private *dev_priv = dev->dev_private;
|
||||
uint32_t clkcfg;
|
||||
|
||||
/* There is no CLKCFG reg in Valleyview. VLV hrawclk is 200 MHz */
|
||||
if (IS_VALLEYVIEW(dev))
|
||||
return 200;
|
||||
|
||||
clkcfg = I915_READ(CLKCFG);
|
||||
switch (clkcfg & CLKCFG_FSB_MASK) {
|
||||
case CLKCFG_FSB_400:
|
||||
return 100;
|
||||
case CLKCFG_FSB_533:
|
||||
return 133;
|
||||
case CLKCFG_FSB_667:
|
||||
return 166;
|
||||
case CLKCFG_FSB_800:
|
||||
return 200;
|
||||
case CLKCFG_FSB_1067:
|
||||
return 266;
|
||||
case CLKCFG_FSB_1333:
|
||||
return 333;
|
||||
/* these two are just a guess; one of them might be right */
|
||||
case CLKCFG_FSB_1600:
|
||||
case CLKCFG_FSB_1600_ALT:
|
||||
return 400;
|
||||
default:
|
||||
return 133;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
intel_dp_init_panel_power_sequencer(struct drm_device *dev,
|
||||
struct intel_dp *intel_dp);
|
||||
|
|
|
@ -1011,6 +1011,7 @@ void i915_audio_component_cleanup(struct drm_i915_private *dev_priv);
|
|||
extern const struct drm_plane_funcs intel_plane_funcs;
|
||||
bool intel_has_pending_fb_unpin(struct drm_device *dev);
|
||||
int intel_pch_rawclk(struct drm_device *dev);
|
||||
int intel_hrawclk(struct drm_device *dev);
|
||||
void intel_mark_busy(struct drm_device *dev);
|
||||
void intel_mark_idle(struct drm_device *dev);
|
||||
void intel_crtc_restore_mode(struct drm_crtc *crtc);
|
||||
|
|
Загрузка…
Ссылка в новой задаче