Linux Kernel
3.7.1
|
#include <linux/i2c.h>
#include <drm/i915_drm.h>
#include "i915_drv.h"
#include <drm/drm_crtc.h>
#include <drm/drm_crtc_helper.h>
#include <drm/drm_fb_helper.h>
#include <drm/drm_dp_helper.h>
Go to the source code of this file.
Data Structures | |
struct | intel_framebuffer |
struct | intel_fbdev |
struct | intel_encoder |
struct | intel_connector |
struct | intel_crtc |
struct | intel_plane |
struct | intel_watermark_params |
struct | cxsr_latency |
struct | dip_infoframe |
struct | intel_hdmi |
struct | intel_dp |
struct | intel_unpin_work |
struct | intel_fbc_work |
struct | intel_set_config |
struct | intel_load_detect_pipe |
Variables | |
uint8_t | Y_A_B_S |
uint8_t | C_M_R |
uint8_t | ITC_EC_Q_SC |
uint8_t | VIC |
uint8_t | YQ_CN_PR |
uint16_t | top_bar_end |
uint16_t | bottom_bar_start |
uint16_t | left_bar_end |
uint16_t | right_bar_start |
uint8_t | vn [8] |
uint8_t | pd [16] |
uint8_t | sdi |
uint8_t | payload [27] |
uint8_t | type |
uint8_t | ver = {0, 0} |
uint8_t | len |
uint8_t | ecc |
uint8_t | checksum |
struct intel_hdmi | __attribute__ |
Definition at line 36 of file intel_drv.h.
Definition at line 535 of file intel_drv.h.
Definition at line 534 of file intel_drv.h.
#define DIP_AVI_PR_1 0 |
Definition at line 267 of file intel_drv.h.
#define DIP_AVI_PR_2 1 |
Definition at line 268 of file intel_drv.h.
#define DIP_HEADER_SIZE 5 |
Definition at line 262 of file intel_drv.h.
#define DIP_LEN_AVI 13 |
Definition at line 266 of file intel_drv.h.
#define DIP_LEN_SPD 25 |
Definition at line 272 of file intel_drv.h.
#define DIP_SPD_BD 0xa |
Definition at line 283 of file intel_drv.h.
#define DIP_SPD_DSC 0x6 |
Definition at line 279 of file intel_drv.h.
#define DIP_SPD_DSTB 0x1 |
Definition at line 274 of file intel_drv.h.
#define DIP_SPD_DVC 0x5 |
Definition at line 278 of file intel_drv.h.
#define DIP_SPD_DVDP 0x2 |
Definition at line 275 of file intel_drv.h.
#define DIP_SPD_DVHS 0x3 |
Definition at line 276 of file intel_drv.h.
#define DIP_SPD_GAME 0x8 |
Definition at line 281 of file intel_drv.h.
#define DIP_SPD_HDDVR 0x4 |
Definition at line 277 of file intel_drv.h.
#define DIP_SPD_PC 0x9 |
Definition at line 282 of file intel_drv.h.
#define DIP_SPD_SCD 0xb |
Definition at line 284 of file intel_drv.h.
#define DIP_SPD_UNKNOWN 0 |
Definition at line 273 of file intel_drv.h.
#define DIP_SPD_VCD 0x7 |
Definition at line 280 of file intel_drv.h.
#define DIP_TYPE_AVI 0x82 |
Definition at line 264 of file intel_drv.h.
#define DIP_TYPE_SPD 0x83 |
Definition at line 270 of file intel_drv.h.
#define DIP_VERSION_AVI 0x2 |
Definition at line 265 of file intel_drv.h.
#define DIP_VERSION_SPD 0x1 |
Definition at line 271 of file intel_drv.h.
#define DP_LINK_CONFIGURATION_SIZE 9 |
Definition at line 336 of file intel_drv.h.
#define DP_MAX_DOWNSTREAM_PORTS 0x10 |
Definition at line 335 of file intel_drv.h.
#define DP_RECEIVER_CAP_SIZE 0xf |
Definition at line 334 of file intel_drv.h.
#define INTEL_DVO_CHIP_LVDS 1 |
Definition at line 99 of file intel_drv.h.
#define INTEL_DVO_CHIP_NONE 0 |
Definition at line 98 of file intel_drv.h.
#define INTEL_DVO_CHIP_TMDS 2 |
Definition at line 100 of file intel_drv.h.
#define INTEL_DVO_CHIP_TVOUT 4 |
Definition at line 101 of file intel_drv.h.
#define INTEL_I2C_BUS_DVO 1 |
Definition at line 83 of file intel_drv.h.
#define INTEL_I2C_BUS_SDVO 2 |
Definition at line 84 of file intel_drv.h.
#define INTEL_MODE_CRTC_TIMINGS_SET (0x20) |
Definition at line 110 of file intel_drv.h.
#define INTEL_MODE_DP_FORCE_6BPC (0x10) |
Definition at line 106 of file intel_drv.h.
#define INTEL_MODE_PIXEL_MULTIPLIER_MASK (0xf << INTEL_MODE_PIXEL_MULTIPLIER_SHIFT) |
Definition at line 105 of file intel_drv.h.
#define INTEL_MODE_PIXEL_MULTIPLIER_SHIFT (0x0) |
Definition at line 104 of file intel_drv.h.
#define INTEL_OUTPUT_ANALOG 1 |
Definition at line 89 of file intel_drv.h.
#define INTEL_OUTPUT_DISPLAYPORT 7 |
Definition at line 95 of file intel_drv.h.
#define INTEL_OUTPUT_DVO 2 |
Definition at line 90 of file intel_drv.h.
#define INTEL_OUTPUT_EDP 8 |
Definition at line 96 of file intel_drv.h.
#define INTEL_OUTPUT_HDMI 6 |
Definition at line 94 of file intel_drv.h.
#define INTEL_OUTPUT_LVDS 4 |
Definition at line 92 of file intel_drv.h.
#define INTEL_OUTPUT_SDVO 3 |
Definition at line 91 of file intel_drv.h.
#define INTEL_OUTPUT_TVOUT 5 |
Definition at line 93 of file intel_drv.h.
#define INTEL_OUTPUT_UNUSED 0 |
Definition at line 88 of file intel_drv.h.
#define INTELFB_CONN_LIMIT 4 |
Definition at line 81 of file intel_drv.h.
Definition at line 69 of file intel_drv.h.
#define MAX_OUTPUTS 6 |
Definition at line 79 of file intel_drv.h.
Definition at line 70 of file intel_drv.h.
#define to_intel_connector | ( | x | ) | container_of(x, struct intel_connector, base) |
Definition at line 257 of file intel_drv.h.
#define to_intel_crtc | ( | x | ) | container_of(x, struct intel_crtc, base) |
Definition at line 256 of file intel_drv.h.
#define to_intel_encoder | ( | x | ) | container_of(x, struct intel_encoder, base) |
Definition at line 258 of file intel_drv.h.
#define to_intel_framebuffer | ( | x | ) | container_of(x, struct intel_framebuffer, base) |
Definition at line 259 of file intel_drv.h.
#define to_intel_plane | ( | x | ) | container_of(x, struct intel_plane, base) |
Definition at line 260 of file intel_drv.h.
Definition at line 67 of file intel_drv.h.
Definition at line 53 of file intel_drv.h.
|
read |
Definition at line 171 of file esd_usb2.c.
void assert_pipe | ( | struct drm_i915_private * | dev_priv, |
enum pipe | pipe, | ||
bool | state | ||
) |
Definition at line 1209 of file intel_display.c.
|
read |
Definition at line 52 of file intel_hdmi.c.
void gen6_gt_check_fifodbg | ( | struct drm_i915_private * | dev_priv | ) |
Definition at line 4058 of file intel_pm.c.
Definition at line 131 of file intel_ddi.c.
void intel_attach_broadcast_rgb_property | ( | struct drm_connector * | connector | ) |
Definition at line 106 of file intel_modes.c.
void intel_attach_force_audio_property | ( | struct drm_connector * | connector | ) |
Definition at line 80 of file intel_modes.c.
|
read |
Definition at line 8381 of file intel_display.c.
void intel_cleanup_overlay | ( | struct drm_device * | dev | ) |
Definition at line 1397 of file intel_overlay.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 * | , |
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.
int intel_connector_update_modes | ( | struct drm_connector * | connector, |
struct edid * | edid | ||
) |
intel_connector_update_modes - update connector from edid : DRM connector device to use : previously read EDID information
Definition at line 40 of file intel_modes.c.
void intel_cpt_verify_modeset | ( | struct drm_device * | dev, |
int | pipe | ||
) |
Definition at line 3165 of file intel_display.c.
void intel_crt_init | ( | struct drm_device * | dev | ) |
Definition at line 700 of file intel_crt.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.
Sets the color ramps on behalf of RandR
Definition at line 5653 of file intel_display.c.
Loads the palette/gamma unit for the CRTC with the prepared values
Definition at line 5373 of file intel_display.c.
|
read |
Returns the currently programmed mode of the given pipe.
Definition at line 6019 of file intel_display.c.
Sets the power management mode of the pipe and plane.
Definition at line 3475 of file intel_display.c.
int intel_ddc_get_modes | ( | struct drm_connector * | connector, |
struct i2c_adapter * | adapter | ||
) |
intel_ddc_get_modes - get modelist from monitor : DRM connector device to use : i2c adapter
Fetch the EDID information from using the DDC bus.
Definition at line 60 of file intel_modes.c.
bool intel_ddi_get_hw_state | ( | struct intel_encoder * | encoder, |
enum pipe * | pipe | ||
) |
Definition at line 760 of file intel_ddi.c.
void intel_ddi_init | ( | struct drm_device * | dev, |
enum port | port | ||
) |
Definition at line 239 of file intel_ddi.c.
void intel_ddi_mode_set | ( | struct drm_encoder * | encoder, |
struct drm_display_mode * | mode, | ||
struct drm_display_mode * | adjusted_mode | ||
) |
Definition at line 648 of file intel_ddi.c.
void intel_dip_infoframe_csum | ( | struct dip_infoframe * | avi_if | ) |
Definition at line 63 of file intel_hdmi.c.
void intel_disable_ddi | ( | struct intel_encoder * | encoder | ) |
Definition at line 807 of file intel_ddi.c.
void intel_disable_gt_powersave | ( | struct drm_device * | dev | ) |
Definition at line 3305 of file intel_pm.c.
void intel_dp_init | ( | struct drm_device * | dev, |
int | output_reg, | ||
enum port | port | ||
) |
Definition at line 2479 of file intel_dp.c.
void intel_dp_set_m_n | ( | struct drm_crtc * | crtc, |
struct drm_display_mode * | mode, | ||
struct drm_display_mode * | adjusted_mode | ||
) |
Definition at line 761 of file intel_dp.c.
bool intel_dpd_is_edp | ( | struct drm_device * | dev | ) |
Definition at line 2452 of file intel_dp.c.
u32 intel_dpio_read | ( | struct drm_i915_private * | dev_priv, |
int | reg | ||
) |
Definition at line 409 of file intel_display.c.
void intel_dvo_init | ( | struct drm_device * | dev | ) |
Definition at line 418 of file intel_dvo.c.
void intel_edp_link_config | ( | struct intel_encoder * | , |
int * | , | ||
int * | |||
) |
Definition at line 114 of file intel_dp.c.
int intel_edp_target_clock | ( | struct intel_encoder * | , |
struct drm_display_mode * | mode | ||
) |
Definition at line 127 of file intel_dp.c.
void intel_enable_clock_gating | ( | struct drm_device * | dev | ) |
void intel_enable_ddi | ( | struct intel_encoder * | encoder | ) |
Definition at line 789 of file intel_ddi.c.
Definition at line 310 of file intel_pm.c.
void intel_enable_gt_powersave | ( | struct drm_device * | dev | ) |
Definition at line 3315 of file intel_pm.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.
bool intel_encoder_is_pch_edp | ( | struct drm_encoder * | encoder | ) |
intel_encoder_is_pch_edp - is the given encoder a PCH attached eDP? : DRM encoder
Return true if corresponds to a PCH attached eDP panel. Needed by intel_display.c.
Definition at line 97 of file intel_dp.c.
void intel_encoder_noop | ( | struct drm_encoder * | encoder | ) |
Definition at line 3543 of file intel_display.c.
void intel_fb_output_poll_changed | ( | struct drm_device * | dev | ) |
Definition at line 270 of file intel_fb.c.
void intel_fb_restore_mode | ( | struct drm_device * | dev | ) |
Definition at line 276 of file intel_fb.c.
bool intel_fbc_enabled | ( | struct drm_device * | dev | ) |
Definition at line 248 of file intel_pm.c.
void intel_fbdev_fini | ( | struct drm_device * | dev | ) |
Definition at line 248 of file intel_fb.c.
int intel_fbdev_init | ( | struct drm_device * | dev | ) |
Definition at line 222 of file intel_fb.c.
void intel_fbdev_set_suspend | ( | struct drm_device * | dev, |
int | state | ||
) |
Definition at line 259 of file intel_fb.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_fixed_panel_mode | ( | struct drm_display_mode * | fixed_mode, |
struct drm_display_mode * | adjusted_mode | ||
) |
Definition at line 39 of file intel_panel.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 * | ifb, | ||
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_priv | ||
) |
Definition at line 7477 of file intel_display.c.
void intel_gpu_ips_init | ( | struct drm_i915_private * | dev_priv | ) |
Definition at line 3217 of file intel_pm.c.
Definition at line 3228 of file intel_pm.c.
void intel_hdmi_init | ( | struct drm_device * | dev, |
int | sdvox_reg, | ||
enum port | port | ||
) |
Definition at line 954 of file intel_hdmi.c.
void intel_init_clock_gating | ( | struct drm_device * | dev | ) |
Definition at line 3810 of file intel_pm.c.
void intel_init_pm | ( | struct drm_device * | dev | ) |
Definition at line 3852 of file intel_pm.c.
void intel_init_power_wells | ( | struct drm_device * | dev | ) |
Definition at line 3823 of file intel_pm.c.
bool intel_lvds_init | ( | struct drm_device * | dev | ) |
intel_lvds_init - setup LVDS connectors on this device : drm device
Create the connector, register the LVDS DDC bus, and try to figure out what modes we can display on the LVDS panel (if present).
Definition at line 912 of file intel_lvds.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_disable | ( | struct drm_device * | dev | ) |
Definition at line 3533 of file intel_display.c.
int intel_overlay_attrs | ( | struct drm_device * | dev, |
void * | data, | ||
struct drm_file * | file_priv | ||
) |
Definition at line 1228 of file intel_overlay.c.
int intel_overlay_put_image | ( | struct drm_device * | dev, |
void * | data, | ||
struct drm_file * | file_priv | ||
) |
Definition at line 1028 of file intel_overlay.c.
int intel_overlay_switch_off | ( | struct intel_overlay * | overlay | ) |
Definition at line 789 of file intel_overlay.c.
void intel_panel_destroy_backlight | ( | struct drm_device * | dev | ) |
Definition at line 469 of file intel_panel.c.
enum drm_connector_status intel_panel_detect | ( | struct drm_device * | dev | ) |
Definition at line 375 of file intel_panel.c.
void intel_panel_disable_backlight | ( | struct drm_device * | dev | ) |
Definition at line 293 of file intel_panel.c.
void intel_panel_enable_backlight | ( | struct drm_device * | dev, |
enum pipe | pipe | ||
) |
Definition at line 315 of file intel_panel.c.
u32 intel_panel_get_max_backlight | ( | struct drm_device * | dev | ) |
Definition at line 187 of file intel_panel.c.
void intel_panel_set_backlight | ( | struct drm_device * | dev, |
u32 | level | ||
) |
Definition at line 284 of file intel_panel.c.
int intel_panel_setup_backlight | ( | struct drm_device * | dev | ) |
Definition at line 463 of file intel_panel.c.
void intel_pch_panel_fitting | ( | struct drm_device * | dev, |
int | fitting_mode, | ||
const struct drm_display_mode * | mode, | ||
struct drm_display_mode * | adjusted_mode | ||
) |
Definition at line 57 of file intel_panel.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.
int intel_plane_init | ( | struct drm_device * | dev, |
enum pipe | pipe | ||
) |
Definition at line 650 of file intel_sprite.c.
void intel_prepare_ddi | ( | struct drm_device * | dev | ) |
Definition at line 93 of file intel_ddi.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_sdvo_init | ( | struct drm_device * | dev, |
uint32_t | sdvo_reg, | ||
bool | is_sdvob | ||
) |
Definition at line 2650 of file intel_sdvo.c.
bool intel_set_mode | ( | struct drm_crtc * | crtc, |
struct drm_display_mode * | mode, | ||
int | x, | ||
int | y, | ||
struct drm_framebuffer * | old_fb | ||
) |
Definition at line 7011 of file intel_display.c.
void intel_setup_overlay | ( | struct drm_device * | dev | ) |
Definition at line 1315 of file intel_overlay.c.
int intel_sprite_get_colorkey | ( | struct drm_device * | dev, |
void * | data, | ||
struct drm_file * | file_priv | ||
) |
Definition at line 597 of file intel_sprite.c.
int intel_sprite_set_colorkey | ( | struct drm_device * | dev, |
void * | data, | ||
struct drm_file * | file_priv | ||
) |
Definition at line 564 of file intel_sprite.c.
void intel_tv_init | ( | struct drm_device * | dev | ) |
Definition at line 1552 of file intel_tv.c.
void intel_unpin_fb_obj | ( | struct drm_i915_gem_object * | obj | ) |
Definition at line 1921 of file intel_display.c.
void intel_update_fbc | ( | struct drm_device * | dev | ) |
intel_update_fbc - enable/disable FBC as needed : the drm_device
Set up the framebuffer compression hardware at mode set time. We enable it if possible:
We can't assume that any compression will take place (worst case), so the compressed buffer has to be the same size as the uncompressed one. It also must reside (along with the line length buffer) in stolen memory.
We need to enable/disable FBC on a global basis.
Definition at line 382 of file intel_pm.c.
void intel_update_linetime_watermarks | ( | struct drm_device * | dev, |
int | pipe, | ||
struct drm_display_mode * | mode | ||
) |
Definition at line 2110 of file intel_pm.c.
void intel_update_sprite_watermarks | ( | struct drm_device * | dev, |
int | pipe, | ||
uint32_t | sprite_width, | ||
int | pixel_size | ||
) |
Definition at line 2119 of file intel_pm.c.
void intel_update_watermarks | ( | struct drm_device * | dev | ) |
intel_update_watermarks - update FIFO watermark values based on current modes
Calculate watermark values for the various WM regs based on current mode and plane configuration.
There are several cases to deal with here:
The normal calculation is: watermark = dotclock * bytes per pixel * latency where latency is platform & configuration dependent (we assume pessimal values here).
The SR calculation is: watermark = (trunc(latency/line time)+1) * surface width * bytes per pixel where line time = htotal / dotclock surface width = hdisplay for normal plane and 64 for cursor and latency is assumed to be high, as above.
The final value programmed to the register should always be rounded up, and include an extra 2 entries to account for clock crossings.
We don't use the sprite, so we can ignore that. And on Crestline we have to set the non-SR watermarks to 8.
Definition at line 2102 of file intel_pm.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_teardown_rc6 | ( | struct drm_device * | dev | ) |
Definition at line 2592 of file intel_pm.c.
uint16_t bottom_bar_start |
Definition at line 322 of file intel_drv.h.
uint8_t C_M_R |
Definition at line 313 of file intel_drv.h.
uint8_t checksum |
Definition at line 322 of file intel_drv.h.
uint8_t ecc |
Definition at line 321 of file intel_drv.h.
uint8_t ITC_EC_Q_SC |
Definition at line 315 of file intel_drv.h.
uint16_t left_bar_end |
Definition at line 323 of file intel_drv.h.
uint8_t len |
Definition at line 320 of file intel_drv.h.
u8 payload |
Definition at line 339 of file intel_drv.h.
uint8_t pd[16] |
Definition at line 316 of file intel_drv.h.
uint16_t right_bar_start |
Definition at line 324 of file intel_drv.h.
uint8_t sdi |
Definition at line 317 of file intel_drv.h.
uint16_t top_bar_end |
Definition at line 321 of file intel_drv.h.
Definition at line 318 of file intel_drv.h.
static int ver = {0, 0} |
Definition at line 319 of file intel_drv.h.
uint8_t VIC |
Definition at line 317 of file intel_drv.h.
uint8_t vn |
Definition at line 315 of file intel_drv.h.
uint8_t Y_A_B_S |
Definition at line 311 of file intel_drv.h.
uint8_t YQ_CN_PR |
Definition at line 319 of file intel_drv.h.