Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Functions
intel_display.c File Reference
#include <linux/dmi.h>
#include <linux/module.h>
#include <linux/input.h>
#include <linux/i2c.h>
#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/vgaarb.h>
#include <drm/drm_edid.h>
#include <drm/drmP.h>
#include "intel_drv.h"
#include <drm/i915_drm.h>
#include "i915_drv.h"
#include "i915_trace.h"
#include <drm/drm_dp_helper.h>
#include <drm/drm_crtc_helper.h>
#include <linux/dma_remapping.h>

Go to the source code of this file.

Data Structures

struct  intel_clock_t
 
struct  intel_range_t
 
struct  intel_p2_t
 
struct  intel_limit
 
struct  fdi_m_n
 
struct  intel_quirk
 
struct  intel_dmi_quirk
 

Macros

#define HAS_eDP   (intel_pipe_has_type(crtc, INTEL_OUTPUT_EDP))
 
#define INTEL_P2_NUM   2
 
#define IRONLAKE_FDI_FREQ   2700000 /* in kHz for mode->clock */
 
#define INTELPllInvalid(s)   do { /* DRM_DEBUG(s); */ return false; } while (0)
 
#define assert_pll_enabled(d, p)   assert_pll(d, p, true)
 
#define assert_pll_disabled(d, p)   assert_pll(d, p, false)
 
#define assert_pch_pll_enabled(d, p, c)   assert_pch_pll(d, p, c, true)
 
#define assert_pch_pll_disabled(d, p, c)   assert_pch_pll(d, p, c, false)
 
#define assert_fdi_tx_enabled(d, p)   assert_fdi_tx(d, p, true)
 
#define assert_fdi_tx_disabled(d, p)   assert_fdi_tx(d, p, false)
 
#define assert_fdi_rx_enabled(d, p)   assert_fdi_rx(d, p, true)
 
#define assert_fdi_rx_disabled(d, p)   assert_fdi_rx(d, p, false)
 
#define assert_plane_enabled(d, p)   assert_plane(d, p, true)
 
#define assert_plane_disabled(d, p)   assert_plane(d, p, false)
 
#define for_each_intel_crtc_masked(dev, mask, intel_crtc)
 

Typedefs

typedef struct intel_limit intel_limit_t
 

Functions

bool intel_pipe_has_type (struct drm_crtc *crtc, int type)
 
u32 intel_dpio_read (struct drm_i915_private *dev_priv, int reg)
 
void intel_wait_for_vblank (struct drm_device *dev, int pipe)
 
void intel_wait_for_pipe_off (struct drm_device *dev, int pipe)
 
void assert_pipe (struct drm_i915_private *dev_priv, enum pipe pipe, bool state)
 
void intel_flush_display_plane (struct drm_i915_private *dev_priv, enum plane plane)
 
int intel_pin_and_fence_fb_obj (struct drm_device *dev, struct drm_i915_gem_object *obj, struct intel_ring_buffer *pipelined)
 
void intel_unpin_fb_obj (struct drm_i915_gem_object *obj)
 
void intel_cpt_verify_modeset (struct drm_device *dev, int pipe)
 
void intel_crtc_update_dpms (struct drm_crtc *crtc)
 
void intel_modeset_disable (struct drm_device *dev)
 
void intel_encoder_noop (struct drm_encoder *encoder)
 
void intel_encoder_destroy (struct drm_encoder *encoder)
 
void intel_encoder_dpms (struct intel_encoder *encoder, int mode)
 
void intel_connector_dpms (struct drm_connector *connector, int mode)
 
bool intel_connector_get_hw_state (struct intel_connector *connector)
 
void ironlake_init_pch_refclk (struct drm_device *dev)
 
void intel_write_eld (struct drm_encoder *encoder, struct drm_display_mode *mode)
 
void intel_crtc_load_lut (struct drm_crtc *crtc)
 
void intel_crtc_fb_gamma_set (struct drm_crtc *crtc, u16 red, u16 green, u16 blue, int regno)
 
void intel_crtc_fb_gamma_get (struct drm_crtc *crtc, u16 *red, u16 *green, u16 *blue, int regno)
 
bool intel_get_load_detect_pipe (struct drm_connector *connector, struct drm_display_mode *mode, struct intel_load_detect_pipe *old)
 
void intel_release_load_detect_pipe (struct drm_connector *connector, struct intel_load_detect_pipe *old)
 
struct drm_display_modeintel_crtc_mode_get (struct drm_device *dev, struct drm_crtc *crtc)
 
void intel_mark_busy (struct drm_device *dev)
 
void intel_mark_idle (struct drm_device *dev)
 
void intel_mark_fb_busy (struct drm_i915_gem_object *obj)
 
void intel_mark_fb_idle (struct drm_i915_gem_object *obj)
 
void intel_finish_page_flip (struct drm_device *dev, int pipe)
 
void intel_finish_page_flip_plane (struct drm_device *dev, int plane)
 
void intel_prepare_page_flip (struct drm_device *dev, int plane)
 
bool intel_encoder_check_is_cloned (struct intel_encoder *encoder)
 
void intel_modeset_check_state (struct drm_device *dev)
 
bool intel_set_mode (struct drm_crtc *crtc, struct drm_display_mode *mode, int x, int y, struct drm_framebuffer *fb)
 
int intel_get_pipe_from_crtc_id (struct drm_device *dev, void *data, struct drm_file *file)
 
int intel_framebuffer_init (struct drm_device *dev, struct intel_framebuffer *intel_fb, struct drm_mode_fb_cmd2 *mode_cmd, struct drm_i915_gem_object *obj)
 
void intel_modeset_init_hw (struct drm_device *dev)
 
void intel_modeset_init (struct drm_device *dev)
 
void intel_modeset_setup_hw_state (struct drm_device *dev)
 
void intel_modeset_gem_init (struct drm_device *dev)
 
void intel_modeset_cleanup (struct drm_device *dev)
 
struct drm_encoderintel_best_encoder (struct drm_connector *connector)
 
void intel_connector_attach_encoder (struct intel_connector *connector, struct intel_encoder *encoder)
 
int intel_modeset_vga_set_state (struct drm_device *dev, bool state)
 

Macro Definition Documentation

#define assert_fdi_rx_disabled (   d,
  p 
)    assert_fdi_rx(d, p, false)

Definition at line 1144 of file intel_display.c.

#define assert_fdi_rx_enabled (   d,
  p 
)    assert_fdi_rx(d, p, true)

Definition at line 1143 of file intel_display.c.

#define assert_fdi_tx_disabled (   d,
  p 
)    assert_fdi_tx(d, p, false)

Definition at line 1122 of file intel_display.c.

#define assert_fdi_tx_enabled (   d,
  p 
)    assert_fdi_tx(d, p, true)

Definition at line 1121 of file intel_display.c.

#define assert_pch_pll_disabled (   d,
  p,
  c 
)    assert_pch_pll(d, p, c, false)

Definition at line 1098 of file intel_display.c.

#define assert_pch_pll_enabled (   d,
  p,
  c 
)    assert_pch_pll(d, p, c, true)

Definition at line 1097 of file intel_display.c.

#define assert_plane_disabled (   d,
  p 
)    assert_plane(d, p, false)

Definition at line 1244 of file intel_display.c.

#define assert_plane_enabled (   d,
  p 
)    assert_plane(d, p, true)

Definition at line 1243 of file intel_display.c.

#define assert_pll_disabled (   d,
  p 
)    assert_pll(d, p, false)

Definition at line 1052 of file intel_display.c.

#define assert_pll_enabled (   d,
  p 
)    assert_pll(d, p, true)

Definition at line 1051 of file intel_display.c.

#define for_each_intel_crtc_masked (   dev,
  mask,
  intel_crtc 
)
Value:
&(dev)->mode_config.crtc_list, \
base.head) \
if (mask & (1 <<(intel_crtc)->pipe)) \

Definition at line 6907 of file intel_display.c.

#define HAS_eDP   (intel_pipe_has_type(crtc, INTEL_OUTPUT_EDP))

Definition at line 44 of file intel_display.c.

#define INTEL_P2_NUM   2

Definition at line 71 of file intel_display.c.

#define INTELPllInvalid (   s)    do { /* DRM_DEBUG(s); */ return false; } while (0)

Definition at line 639 of file intel_display.c.

#define IRONLAKE_FDI_FREQ   2700000 /* in kHz for mode->clock */

Definition at line 81 of file intel_display.c.

Typedef Documentation

Definition at line 72 of file intel_display.c.

Function Documentation

void assert_pipe ( struct drm_i915_private dev_priv,
enum pipe pipe  ,
bool  state 
)

Definition at line 1209 of file intel_display.c.

struct drm_encoder* intel_best_encoder ( struct drm_connector connector)
read

Definition at line 8381 of file intel_display.c.

void intel_connector_attach_encoder ( struct intel_connector connector,
struct intel_encoder encoder 
)

Definition at line 8386 of file intel_display.c.

void intel_connector_dpms ( struct drm_connector connector,
int  mode 
)

Definition at line 3608 of file intel_display.c.

bool intel_connector_get_hw_state ( struct intel_connector connector)

Definition at line 3633 of file intel_display.c.

void intel_cpt_verify_modeset ( struct drm_device dev,
int  pipe 
)

Definition at line 3165 of file intel_display.c.

void intel_crtc_fb_gamma_get ( struct drm_crtc crtc,
u16 red,
u16 green,
u16 blue,
int  regno 
)

Definition at line 5663 of file intel_display.c.

void intel_crtc_fb_gamma_set ( struct drm_crtc crtc,
u16  red,
u16  green,
u16  blue,
int  regno 
)

Sets the color ramps on behalf of RandR

Definition at line 5653 of file intel_display.c.

void intel_crtc_load_lut ( struct drm_crtc crtc)

Loads the palette/gamma unit for the CRTC with the prepared values

Definition at line 5373 of file intel_display.c.

struct drm_display_mode* intel_crtc_mode_get ( struct drm_device dev,
struct drm_crtc crtc 
)
read

Returns the currently programmed mode of the given pipe.

Definition at line 6019 of file intel_display.c.

void intel_crtc_update_dpms ( struct drm_crtc crtc)

Sets the power management mode of the pipe and plane.

Definition at line 3475 of file intel_display.c.

u32 intel_dpio_read ( struct drm_i915_private dev_priv,
int  reg 
)

Definition at line 409 of file intel_display.c.

bool intel_encoder_check_is_cloned ( struct intel_encoder encoder)

Definition at line 6624 of file intel_display.c.

void intel_encoder_destroy ( struct drm_encoder encoder)

Definition at line 3547 of file intel_display.c.

void intel_encoder_dpms ( struct intel_encoder encoder,
int  mode 
)

Definition at line 3558 of file intel_display.c.

void intel_encoder_noop ( struct drm_encoder encoder)

Definition at line 3543 of file intel_display.c.

void intel_finish_page_flip ( struct drm_device dev,
int  pipe 
)

Definition at line 6248 of file intel_display.c.

void intel_finish_page_flip_plane ( struct drm_device dev,
int  plane 
)

Definition at line 6256 of file intel_display.c.

void intel_flush_display_plane ( struct drm_i915_private dev_priv,
enum plane plane   
)

Definition at line 1807 of file intel_display.c.

int intel_framebuffer_init ( struct drm_device dev,
struct intel_framebuffer intel_fb,
struct drm_mode_fb_cmd2 mode_cmd,
struct drm_i915_gem_object obj 
)

Definition at line 7708 of file intel_display.c.

bool intel_get_load_detect_pipe ( struct drm_connector connector,
struct drm_display_mode mode,
struct intel_load_detect_pipe old 
)

Definition at line 5794 of file intel_display.c.

int intel_get_pipe_from_crtc_id ( struct drm_device dev,
void data,
struct drm_file *  file 
)

Definition at line 7477 of file intel_display.c.

void intel_mark_busy ( struct drm_device dev)

Definition at line 6117 of file intel_display.c.

void intel_mark_fb_busy ( struct drm_i915_gem_object obj)

Definition at line 6126 of file intel_display.c.

void intel_mark_fb_idle ( struct drm_i915_gem_object obj)

Definition at line 6143 of file intel_display.c.

void intel_mark_idle ( struct drm_device dev)

Definition at line 6122 of file intel_display.c.

void intel_modeset_check_state ( struct drm_device dev)

Definition at line 6914 of file intel_display.c.

void intel_modeset_cleanup ( struct drm_device dev)

Definition at line 8334 of file intel_display.c.

void intel_modeset_disable ( struct drm_device dev)

Definition at line 3533 of file intel_display.c.

void intel_modeset_gem_init ( struct drm_device dev)

Definition at line 8325 of file intel_display.c.

void intel_modeset_init ( struct drm_device dev)

Definition at line 8018 of file intel_display.c.

void intel_modeset_init_hw ( struct drm_device dev)

Definition at line 8002 of file intel_display.c.

void intel_modeset_setup_hw_state ( struct drm_device dev)

Definition at line 8249 of file intel_display.c.

int intel_modeset_vga_set_state ( struct drm_device dev,
bool  state 
)

Definition at line 8397 of file intel_display.c.

int intel_pin_and_fence_fb_obj ( struct drm_device dev,
struct drm_i915_gem_object obj,
struct intel_ring_buffer pipelined 
)

Definition at line 1866 of file intel_display.c.

bool intel_pipe_has_type ( struct drm_crtc crtc,
int  type 
)

Returns whether any output on the specified pipe is of the specified type

Definition at line 627 of file intel_display.c.

void intel_prepare_page_flip ( struct drm_device dev,
int  plane 
)

Definition at line 6264 of file intel_display.c.

void intel_release_load_detect_pipe ( struct drm_connector connector,
struct intel_load_detect_pipe old 
)

Definition at line 5902 of file intel_display.c.

bool intel_set_mode ( struct drm_crtc crtc,
struct drm_display_mode mode,
int  x,
int  y,
struct drm_framebuffer fb 
)

Definition at line 7011 of file intel_display.c.

void intel_unpin_fb_obj ( struct drm_i915_gem_object obj)

Definition at line 1921 of file intel_display.c.

void intel_wait_for_pipe_off ( struct drm_device dev,
int  pipe 
)

Definition at line 999 of file intel_display.c.

void intel_wait_for_vblank ( struct drm_device dev,
int  pipe 
)

intel_wait_for_vblank - wait for vblank on a given pipe : drm device : pipe to wait for

Wait for vblank to occur on a given pipe. Needed for various bits of mode setting code.

Definition at line 949 of file intel_display.c.

void intel_write_eld ( struct drm_encoder encoder,
struct drm_display_mode mode 
)

Definition at line 5348 of file intel_display.c.

void ironlake_init_pch_refclk ( struct drm_device dev)

Definition at line 4501 of file intel_display.c.