diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-11-15 04:02:39 -0500 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-11-15 04:02:39 -0500 |
commit | c09cd6e9691ec6fce8cb90b65929cad389d39c84 (patch) | |
tree | d76104420f72172b21b8fb5ca512baa016ac892b /drivers/gpu/drm/i915/i915_reg.h | |
parent | 7eb1c496f7ac0f386552c0cd9144f6965fc61da5 (diff) | |
parent | 96ab4c70396e4e5a4d623bc95e86484682bef78f (diff) |
Merge branch 'backlight-rework' into drm-intel-next-queued
Pull in Jani's backlight rework branch. This was merged through a
separate branch to be able to sort out the Broadwell conflicts
properly before pulling it into the main development branch.
Conflicts:
drivers/gpu/drm/i915/intel_display.c
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_reg.h')
-rw-r--r-- | drivers/gpu/drm/i915/i915_reg.h | 156 |
1 files changed, 154 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index a8a5bcb521c7..849e595ed19d 100644 --- a/drivers/gpu/drm/i915/i915_reg.h +++ b/drivers/gpu/drm/i915/i915_reg.h | |||
@@ -110,6 +110,9 @@ | |||
110 | #define RING_PP_DIR_DCLV(ring) ((ring)->mmio_base+0x220) | 110 | #define RING_PP_DIR_DCLV(ring) ((ring)->mmio_base+0x220) |
111 | #define PP_DIR_DCLV_2G 0xffffffff | 111 | #define PP_DIR_DCLV_2G 0xffffffff |
112 | 112 | ||
113 | #define GEN8_RING_PDP_UDW(ring, n) ((ring)->mmio_base+0x270 + ((n) * 8 + 4)) | ||
114 | #define GEN8_RING_PDP_LDW(ring, n) ((ring)->mmio_base+0x270 + (n) * 8) | ||
115 | |||
113 | #define GAM_ECOCHK 0x4090 | 116 | #define GAM_ECOCHK 0x4090 |
114 | #define ECOCHK_SNB_BIT (1<<10) | 117 | #define ECOCHK_SNB_BIT (1<<10) |
115 | #define HSW_ECOCHK_ARB_PRIO_SOL (1<<6) | 118 | #define HSW_ECOCHK_ARB_PRIO_SOL (1<<6) |
@@ -247,6 +250,7 @@ | |||
247 | #define MI_BATCH_NON_SECURE_HSW (1<<13) | 250 | #define MI_BATCH_NON_SECURE_HSW (1<<13) |
248 | #define MI_BATCH_BUFFER_START MI_INSTR(0x31, 0) | 251 | #define MI_BATCH_BUFFER_START MI_INSTR(0x31, 0) |
249 | #define MI_BATCH_GTT (2<<6) /* aliased with (1<<7) on gen4 */ | 252 | #define MI_BATCH_GTT (2<<6) /* aliased with (1<<7) on gen4 */ |
253 | #define MI_BATCH_BUFFER_START_GEN8 MI_INSTR(0x31, 1) | ||
250 | #define MI_SEMAPHORE_MBOX MI_INSTR(0x16, 1) /* gen6+ */ | 254 | #define MI_SEMAPHORE_MBOX MI_INSTR(0x16, 1) /* gen6+ */ |
251 | #define MI_SEMAPHORE_GLOBAL_GTT (1<<22) | 255 | #define MI_SEMAPHORE_GLOBAL_GTT (1<<22) |
252 | #define MI_SEMAPHORE_UPDATE (1<<21) | 256 | #define MI_SEMAPHORE_UPDATE (1<<21) |
@@ -657,6 +661,9 @@ | |||
657 | #define ARB_MODE 0x04030 | 661 | #define ARB_MODE 0x04030 |
658 | #define ARB_MODE_SWIZZLE_SNB (1<<4) | 662 | #define ARB_MODE_SWIZZLE_SNB (1<<4) |
659 | #define ARB_MODE_SWIZZLE_IVB (1<<5) | 663 | #define ARB_MODE_SWIZZLE_IVB (1<<5) |
664 | #define GAMTARBMODE 0x04a08 | ||
665 | #define ARB_MODE_BWGTLB_DISABLE (1<<9) | ||
666 | #define ARB_MODE_SWIZZLE_BDW (1<<1) | ||
660 | #define RENDER_HWS_PGA_GEN7 (0x04080) | 667 | #define RENDER_HWS_PGA_GEN7 (0x04080) |
661 | #define RING_FAULT_REG(ring) (0x4094 + 0x100*(ring)->id) | 668 | #define RING_FAULT_REG(ring) (0x4094 + 0x100*(ring)->id) |
662 | #define RING_FAULT_GTTSEL_MASK (1<<11) | 669 | #define RING_FAULT_GTTSEL_MASK (1<<11) |
@@ -664,6 +671,7 @@ | |||
664 | #define RING_FAULT_FAULT_TYPE(x) ((x >> 1) & 0x3) | 671 | #define RING_FAULT_FAULT_TYPE(x) ((x >> 1) & 0x3) |
665 | #define RING_FAULT_VALID (1<<0) | 672 | #define RING_FAULT_VALID (1<<0) |
666 | #define DONE_REG 0x40b0 | 673 | #define DONE_REG 0x40b0 |
674 | #define GEN8_PRIVATE_PAT 0x40e0 | ||
667 | #define BSD_HWS_PGA_GEN7 (0x04180) | 675 | #define BSD_HWS_PGA_GEN7 (0x04180) |
668 | #define BLT_HWS_PGA_GEN7 (0x04280) | 676 | #define BLT_HWS_PGA_GEN7 (0x04280) |
669 | #define VEBOX_HWS_PGA_GEN7 (0x04380) | 677 | #define VEBOX_HWS_PGA_GEN7 (0x04380) |
@@ -743,6 +751,7 @@ | |||
743 | #define FPGA_DBG_RM_NOCLAIM (1<<31) | 751 | #define FPGA_DBG_RM_NOCLAIM (1<<31) |
744 | 752 | ||
745 | #define DERRMR 0x44050 | 753 | #define DERRMR 0x44050 |
754 | /* Note that HBLANK events are reserved on bdw+ */ | ||
746 | #define DERRMR_PIPEA_SCANLINE (1<<0) | 755 | #define DERRMR_PIPEA_SCANLINE (1<<0) |
747 | #define DERRMR_PIPEA_PRI_FLIP_DONE (1<<1) | 756 | #define DERRMR_PIPEA_PRI_FLIP_DONE (1<<1) |
748 | #define DERRMR_PIPEA_SPR_FLIP_DONE (1<<2) | 757 | #define DERRMR_PIPEA_SPR_FLIP_DONE (1<<2) |
@@ -776,6 +785,7 @@ | |||
776 | #define _3D_CHICKEN3 0x02090 | 785 | #define _3D_CHICKEN3 0x02090 |
777 | #define _3D_CHICKEN_SF_DISABLE_OBJEND_CULL (1 << 10) | 786 | #define _3D_CHICKEN_SF_DISABLE_OBJEND_CULL (1 << 10) |
778 | #define _3D_CHICKEN3_SF_DISABLE_FASTCLIP_CULL (1 << 5) | 787 | #define _3D_CHICKEN3_SF_DISABLE_FASTCLIP_CULL (1 << 5) |
788 | #define _3D_CHICKEN_SDE_LIMIT_FIFO_POLY_DEPTH(x) ((x)<<1) | ||
779 | 789 | ||
780 | #define MI_MODE 0x0209c | 790 | #define MI_MODE 0x0209c |
781 | # define VS_TIMER_DISPATCH (1 << 6) | 791 | # define VS_TIMER_DISPATCH (1 << 6) |
@@ -1822,6 +1832,9 @@ | |||
1822 | * on HSW) - so the final size is 66944 bytes, which rounds to 17 pages. | 1832 | * on HSW) - so the final size is 66944 bytes, which rounds to 17 pages. |
1823 | */ | 1833 | */ |
1824 | #define HSW_CXT_TOTAL_SIZE (17 * PAGE_SIZE) | 1834 | #define HSW_CXT_TOTAL_SIZE (17 * PAGE_SIZE) |
1835 | /* Same as Haswell, but 72064 bytes now. */ | ||
1836 | #define GEN8_CXT_TOTAL_SIZE (18 * PAGE_SIZE) | ||
1837 | |||
1825 | 1838 | ||
1826 | #define VLV_CLK_CTL2 0x101104 | 1839 | #define VLV_CLK_CTL2 0x101104 |
1827 | #define CLK_CTL2_CZCOUNT_30NS_SHIFT 28 | 1840 | #define CLK_CTL2_CZCOUNT_30NS_SHIFT 28 |
@@ -1952,8 +1965,8 @@ | |||
1952 | #define BCLRPAT(pipe) _PIPE(pipe, _BCLRPAT_A, _BCLRPAT_B) | 1965 | #define BCLRPAT(pipe) _PIPE(pipe, _BCLRPAT_A, _BCLRPAT_B) |
1953 | #define VSYNCSHIFT(trans) _TRANSCODER(trans, _VSYNCSHIFT_A, _VSYNCSHIFT_B) | 1966 | #define VSYNCSHIFT(trans) _TRANSCODER(trans, _VSYNCSHIFT_A, _VSYNCSHIFT_B) |
1954 | 1967 | ||
1955 | /* HSW eDP PSR registers */ | 1968 | /* HSW+ eDP PSR registers */ |
1956 | #define EDP_PSR_BASE(dev) 0x64800 | 1969 | #define EDP_PSR_BASE(dev) (IS_HASWELL(dev) ? 0x64800 : 0x6f800) |
1957 | #define EDP_PSR_CTL(dev) (EDP_PSR_BASE(dev) + 0) | 1970 | #define EDP_PSR_CTL(dev) (EDP_PSR_BASE(dev) + 0) |
1958 | #define EDP_PSR_ENABLE (1<<31) | 1971 | #define EDP_PSR_ENABLE (1<<31) |
1959 | #define EDP_PSR_LINK_DISABLE (0<<27) | 1972 | #define EDP_PSR_LINK_DISABLE (0<<27) |
@@ -2397,6 +2410,21 @@ | |||
2397 | 2410 | ||
2398 | #define PFIT_AUTO_RATIOS (dev_priv->info->display_mmio_offset + 0x61238) | 2411 | #define PFIT_AUTO_RATIOS (dev_priv->info->display_mmio_offset + 0x61238) |
2399 | 2412 | ||
2413 | #define _VLV_BLC_PWM_CTL2_A (dev_priv->info->display_mmio_offset + 0x61250) | ||
2414 | #define _VLV_BLC_PWM_CTL2_B (dev_priv->info->display_mmio_offset + 0x61350) | ||
2415 | #define VLV_BLC_PWM_CTL2(pipe) _PIPE(pipe, _VLV_BLC_PWM_CTL2_A, \ | ||
2416 | _VLV_BLC_PWM_CTL2_B) | ||
2417 | |||
2418 | #define _VLV_BLC_PWM_CTL_A (dev_priv->info->display_mmio_offset + 0x61254) | ||
2419 | #define _VLV_BLC_PWM_CTL_B (dev_priv->info->display_mmio_offset + 0x61354) | ||
2420 | #define VLV_BLC_PWM_CTL(pipe) _PIPE(pipe, _VLV_BLC_PWM_CTL_A, \ | ||
2421 | _VLV_BLC_PWM_CTL_B) | ||
2422 | |||
2423 | #define _VLV_BLC_HIST_CTL_A (dev_priv->info->display_mmio_offset + 0x61260) | ||
2424 | #define _VLV_BLC_HIST_CTL_B (dev_priv->info->display_mmio_offset + 0x61360) | ||
2425 | #define VLV_BLC_HIST_CTL(pipe) _PIPE(pipe, _VLV_BLC_HIST_CTL_A, \ | ||
2426 | _VLV_BLC_HIST_CTL_B) | ||
2427 | |||
2400 | /* Backlight control */ | 2428 | /* Backlight control */ |
2401 | #define BLC_PWM_CTL2 (dev_priv->info->display_mmio_offset + 0x61250) /* 965+ only */ | 2429 | #define BLC_PWM_CTL2 (dev_priv->info->display_mmio_offset + 0x61250) /* 965+ only */ |
2402 | #define BLM_PWM_ENABLE (1 << 31) | 2430 | #define BLM_PWM_ENABLE (1 << 31) |
@@ -3228,6 +3256,18 @@ | |||
3228 | #define PIPEFRAMEPIXEL(pipe) _PIPE(pipe, _PIPEAFRAMEPIXEL, _PIPEBFRAMEPIXEL) | 3256 | #define PIPEFRAMEPIXEL(pipe) _PIPE(pipe, _PIPEAFRAMEPIXEL, _PIPEBFRAMEPIXEL) |
3229 | #define PIPESTAT(pipe) _PIPE(pipe, _PIPEASTAT, _PIPEBSTAT) | 3257 | #define PIPESTAT(pipe) _PIPE(pipe, _PIPEASTAT, _PIPEBSTAT) |
3230 | 3258 | ||
3259 | #define _PIPE_MISC_A 0x70030 | ||
3260 | #define _PIPE_MISC_B 0x71030 | ||
3261 | #define PIPEMISC_DITHER_BPC_MASK (7<<5) | ||
3262 | #define PIPEMISC_DITHER_8_BPC (0<<5) | ||
3263 | #define PIPEMISC_DITHER_10_BPC (1<<5) | ||
3264 | #define PIPEMISC_DITHER_6_BPC (2<<5) | ||
3265 | #define PIPEMISC_DITHER_12_BPC (3<<5) | ||
3266 | #define PIPEMISC_DITHER_ENABLE (1<<4) | ||
3267 | #define PIPEMISC_DITHER_TYPE_MASK (3<<2) | ||
3268 | #define PIPEMISC_DITHER_TYPE_SP (0<<2) | ||
3269 | #define PIPEMISC(pipe) _PIPE(pipe, _PIPE_MISC_A, _PIPE_MISC_B) | ||
3270 | |||
3231 | #define VLV_DPFLIPSTAT (VLV_DISPLAY_BASE + 0x70028) | 3271 | #define VLV_DPFLIPSTAT (VLV_DISPLAY_BASE + 0x70028) |
3232 | #define PIPEB_LINE_COMPARE_INT_EN (1<<29) | 3272 | #define PIPEB_LINE_COMPARE_INT_EN (1<<29) |
3233 | #define PIPEB_HLINE_INT_EN (1<<28) | 3273 | #define PIPEB_HLINE_INT_EN (1<<28) |
@@ -3358,6 +3398,7 @@ | |||
3358 | #define WM1_LP_LATENCY_MASK (0x7f<<24) | 3398 | #define WM1_LP_LATENCY_MASK (0x7f<<24) |
3359 | #define WM1_LP_FBC_MASK (0xf<<20) | 3399 | #define WM1_LP_FBC_MASK (0xf<<20) |
3360 | #define WM1_LP_FBC_SHIFT 20 | 3400 | #define WM1_LP_FBC_SHIFT 20 |
3401 | #define WM1_LP_FBC_SHIFT_BDW 19 | ||
3361 | #define WM1_LP_SR_MASK (0x7ff<<8) | 3402 | #define WM1_LP_SR_MASK (0x7ff<<8) |
3362 | #define WM1_LP_SR_SHIFT 8 | 3403 | #define WM1_LP_SR_SHIFT 8 |
3363 | #define WM1_LP_CURSOR_MASK (0xff) | 3404 | #define WM1_LP_CURSOR_MASK (0xff) |
@@ -3998,6 +4039,71 @@ | |||
3998 | #define GTIIR 0x44018 | 4039 | #define GTIIR 0x44018 |
3999 | #define GTIER 0x4401c | 4040 | #define GTIER 0x4401c |
4000 | 4041 | ||
4042 | #define GEN8_MASTER_IRQ 0x44200 | ||
4043 | #define GEN8_MASTER_IRQ_CONTROL (1<<31) | ||
4044 | #define GEN8_PCU_IRQ (1<<30) | ||
4045 | #define GEN8_DE_PCH_IRQ (1<<23) | ||
4046 | #define GEN8_DE_MISC_IRQ (1<<22) | ||
4047 | #define GEN8_DE_PORT_IRQ (1<<20) | ||
4048 | #define GEN8_DE_PIPE_C_IRQ (1<<18) | ||
4049 | #define GEN8_DE_PIPE_B_IRQ (1<<17) | ||
4050 | #define GEN8_DE_PIPE_A_IRQ (1<<16) | ||
4051 | #define GEN8_DE_PIPE_IRQ(pipe) (1<<(16+pipe)) | ||
4052 | #define GEN8_GT_VECS_IRQ (1<<6) | ||
4053 | #define GEN8_GT_VCS2_IRQ (1<<3) | ||
4054 | #define GEN8_GT_VCS1_IRQ (1<<2) | ||
4055 | #define GEN8_GT_BCS_IRQ (1<<1) | ||
4056 | #define GEN8_GT_RCS_IRQ (1<<0) | ||
4057 | |||
4058 | #define GEN8_GT_ISR(which) (0x44300 + (0x10 * (which))) | ||
4059 | #define GEN8_GT_IMR(which) (0x44304 + (0x10 * (which))) | ||
4060 | #define GEN8_GT_IIR(which) (0x44308 + (0x10 * (which))) | ||
4061 | #define GEN8_GT_IER(which) (0x4430c + (0x10 * (which))) | ||
4062 | |||
4063 | #define GEN8_BCS_IRQ_SHIFT 16 | ||
4064 | #define GEN8_RCS_IRQ_SHIFT 0 | ||
4065 | #define GEN8_VCS2_IRQ_SHIFT 16 | ||
4066 | #define GEN8_VCS1_IRQ_SHIFT 0 | ||
4067 | #define GEN8_VECS_IRQ_SHIFT 0 | ||
4068 | |||
4069 | #define GEN8_DE_PIPE_ISR(pipe) (0x44400 + (0x10 * (pipe))) | ||
4070 | #define GEN8_DE_PIPE_IMR(pipe) (0x44404 + (0x10 * (pipe))) | ||
4071 | #define GEN8_DE_PIPE_IIR(pipe) (0x44408 + (0x10 * (pipe))) | ||
4072 | #define GEN8_DE_PIPE_IER(pipe) (0x4440c + (0x10 * (pipe))) | ||
4073 | #define GEN8_PIPE_FIFO_UNDERRUN (1 << 31) | ||
4074 | #define GEN8_PIPE_CDCLK_CRC_ERROR (1 << 29) | ||
4075 | #define GEN8_PIPE_CDCLK_CRC_DONE (1 << 28) | ||
4076 | #define GEN8_PIPE_CURSOR_FAULT (1 << 10) | ||
4077 | #define GEN8_PIPE_SPRITE_FAULT (1 << 9) | ||
4078 | #define GEN8_PIPE_PRIMARY_FAULT (1 << 8) | ||
4079 | #define GEN8_PIPE_SPRITE_FLIP_DONE (1 << 5) | ||
4080 | #define GEN8_PIPE_FLIP_DONE (1 << 4) | ||
4081 | #define GEN8_PIPE_SCAN_LINE_EVENT (1 << 2) | ||
4082 | #define GEN8_PIPE_VSYNC (1 << 1) | ||
4083 | #define GEN8_PIPE_VBLANK (1 << 0) | ||
4084 | #define GEN8_DE_PIPE_IRQ_FAULT_ERRORS \ | ||
4085 | (GEN8_PIPE_CURSOR_FAULT | \ | ||
4086 | GEN8_PIPE_SPRITE_FAULT | \ | ||
4087 | GEN8_PIPE_PRIMARY_FAULT) | ||
4088 | |||
4089 | #define GEN8_DE_PORT_ISR 0x44440 | ||
4090 | #define GEN8_DE_PORT_IMR 0x44444 | ||
4091 | #define GEN8_DE_PORT_IIR 0x44448 | ||
4092 | #define GEN8_DE_PORT_IER 0x4444c | ||
4093 | #define GEN8_PORT_DP_A_HOTPLUG (1 << 3) | ||
4094 | #define GEN8_AUX_CHANNEL_A (1 << 0) | ||
4095 | |||
4096 | #define GEN8_DE_MISC_ISR 0x44460 | ||
4097 | #define GEN8_DE_MISC_IMR 0x44464 | ||
4098 | #define GEN8_DE_MISC_IIR 0x44468 | ||
4099 | #define GEN8_DE_MISC_IER 0x4446c | ||
4100 | #define GEN8_DE_MISC_GSE (1 << 27) | ||
4101 | |||
4102 | #define GEN8_PCU_ISR 0x444e0 | ||
4103 | #define GEN8_PCU_IMR 0x444e4 | ||
4104 | #define GEN8_PCU_IIR 0x444e8 | ||
4105 | #define GEN8_PCU_IER 0x444ec | ||
4106 | |||
4001 | #define ILK_DISPLAY_CHICKEN2 0x42004 | 4107 | #define ILK_DISPLAY_CHICKEN2 0x42004 |
4002 | /* Required on all Ironlake and Sandybridge according to the B-Spec. */ | 4108 | /* Required on all Ironlake and Sandybridge according to the B-Spec. */ |
4003 | #define ILK_ELPIN_409_SELECT (1 << 25) | 4109 | #define ILK_ELPIN_409_SELECT (1 << 25) |
@@ -4023,8 +4129,14 @@ | |||
4023 | # define CHICKEN3_DGMG_DONE_FIX_DISABLE (1 << 2) | 4129 | # define CHICKEN3_DGMG_DONE_FIX_DISABLE (1 << 2) |
4024 | 4130 | ||
4025 | #define CHICKEN_PAR1_1 0x42080 | 4131 | #define CHICKEN_PAR1_1 0x42080 |
4132 | #define DPA_MASK_VBLANK_SRD (1 << 15) | ||
4026 | #define FORCE_ARB_IDLE_PLANES (1 << 14) | 4133 | #define FORCE_ARB_IDLE_PLANES (1 << 14) |
4027 | 4134 | ||
4135 | #define _CHICKEN_PIPESL_1_A 0x420b0 | ||
4136 | #define _CHICKEN_PIPESL_1_B 0x420b4 | ||
4137 | #define DPRS_MASK_VBLANK_SRD (1 << 0) | ||
4138 | #define CHICKEN_PIPESL_1(pipe) _PIPE(pipe, _CHICKEN_PIPESL_1_A, _CHICKEN_PIPESL_1_B) | ||
4139 | |||
4028 | #define DISP_ARB_CTL 0x45000 | 4140 | #define DISP_ARB_CTL 0x45000 |
4029 | #define DISP_TILE_SURFACE_SWIZZLING (1<<13) | 4141 | #define DISP_TILE_SURFACE_SWIZZLING (1<<13) |
4030 | #define DISP_FBC_WM_DIS (1<<15) | 4142 | #define DISP_FBC_WM_DIS (1<<15) |
@@ -4035,6 +4147,8 @@ | |||
4035 | /* GEN7 chicken */ | 4147 | /* GEN7 chicken */ |
4036 | #define GEN7_COMMON_SLICE_CHICKEN1 0x7010 | 4148 | #define GEN7_COMMON_SLICE_CHICKEN1 0x7010 |
4037 | # define GEN7_CSC1_RHWO_OPT_DISABLE_IN_RCC ((1<<10) | (1<<26)) | 4149 | # define GEN7_CSC1_RHWO_OPT_DISABLE_IN_RCC ((1<<10) | (1<<26)) |
4150 | #define COMMON_SLICE_CHICKEN2 0x7014 | ||
4151 | # define GEN8_CSC2_SBE_VUE_CACHE_CONSERVATIVE (1<<0) | ||
4038 | 4152 | ||
4039 | #define GEN7_L3CNTLREG1 0xB01C | 4153 | #define GEN7_L3CNTLREG1 0xB01C |
4040 | #define GEN7_WA_FOR_GEN7_L3_CONTROL 0x3C4FFF8C | 4154 | #define GEN7_WA_FOR_GEN7_L3_CONTROL 0x3C4FFF8C |
@@ -4863,6 +4977,7 @@ | |||
4863 | #define GEN6_PCODE_WRITE_D_COMP 0x11 | 4977 | #define GEN6_PCODE_WRITE_D_COMP 0x11 |
4864 | #define GEN6_ENCODE_RC6_VID(mv) (((mv) - 245) / 5) | 4978 | #define GEN6_ENCODE_RC6_VID(mv) (((mv) - 245) / 5) |
4865 | #define GEN6_DECODE_RC6_VID(vids) (((vids) * 5) + 245) | 4979 | #define GEN6_DECODE_RC6_VID(vids) (((vids) * 5) + 245) |
4980 | #define DISPLAY_IPS_CONTROL 0x19 | ||
4866 | #define GEN6_PCODE_DATA 0x138128 | 4981 | #define GEN6_PCODE_DATA 0x138128 |
4867 | #define GEN6_PCODE_FREQ_IA_RATIO_SHIFT 8 | 4982 | #define GEN6_PCODE_FREQ_IA_RATIO_SHIFT 8 |
4868 | #define GEN6_PCODE_FREQ_RING_RATIO_SHIFT 16 | 4983 | #define GEN6_PCODE_FREQ_RING_RATIO_SHIFT 16 |
@@ -4900,6 +5015,7 @@ | |||
4900 | #define GEN7_HALF_SLICE_CHICKEN1 0xe100 /* IVB GT1 + VLV */ | 5015 | #define GEN7_HALF_SLICE_CHICKEN1 0xe100 /* IVB GT1 + VLV */ |
4901 | #define GEN7_HALF_SLICE_CHICKEN1_GT2 0xf100 | 5016 | #define GEN7_HALF_SLICE_CHICKEN1_GT2 0xf100 |
4902 | #define GEN7_MAX_PS_THREAD_DEP (8<<12) | 5017 | #define GEN7_MAX_PS_THREAD_DEP (8<<12) |
5018 | #define GEN7_SINGLE_SUBSCAN_DISPATCH_ENABLE (1<<10) | ||
4903 | #define GEN7_PSD_SINGLE_PORT_DISPATCH_ENABLE (1<<3) | 5019 | #define GEN7_PSD_SINGLE_PORT_DISPATCH_ENABLE (1<<3) |
4904 | 5020 | ||
4905 | #define GEN7_ROW_CHICKEN2 0xe4f4 | 5021 | #define GEN7_ROW_CHICKEN2 0xe4f4 |
@@ -4909,6 +5025,10 @@ | |||
4909 | #define HSW_ROW_CHICKEN3 0xe49c | 5025 | #define HSW_ROW_CHICKEN3 0xe49c |
4910 | #define HSW_ROW_CHICKEN3_L3_GLOBAL_ATOMICS_DISABLE (1 << 6) | 5026 | #define HSW_ROW_CHICKEN3_L3_GLOBAL_ATOMICS_DISABLE (1 << 6) |
4911 | 5027 | ||
5028 | #define HALF_SLICE_CHICKEN3 0xe184 | ||
5029 | #define GEN8_CENTROID_PIXEL_OPT_DIS (1<<8) | ||
5030 | #define GEN8_SAMPLER_POWER_BYPASS_DIS (1<<1) | ||
5031 | |||
4912 | #define G4X_AUD_VID_DID (dev_priv->info->display_mmio_offset + 0x62020) | 5032 | #define G4X_AUD_VID_DID (dev_priv->info->display_mmio_offset + 0x62020) |
4913 | #define INTEL_AUDIO_DEVCL 0x808629FB | 5033 | #define INTEL_AUDIO_DEVCL 0x808629FB |
4914 | #define INTEL_AUDIO_DEVBLC 0x80862801 | 5034 | #define INTEL_AUDIO_DEVBLC 0x80862801 |
@@ -4950,6 +5070,18 @@ | |||
4950 | CPT_AUD_CNTL_ST_B) | 5070 | CPT_AUD_CNTL_ST_B) |
4951 | #define CPT_AUD_CNTRL_ST2 0xE50C0 | 5071 | #define CPT_AUD_CNTRL_ST2 0xE50C0 |
4952 | 5072 | ||
5073 | #define VLV_HDMIW_HDMIEDID_A (VLV_DISPLAY_BASE + 0x62050) | ||
5074 | #define VLV_HDMIW_HDMIEDID_B (VLV_DISPLAY_BASE + 0x62150) | ||
5075 | #define VLV_HDMIW_HDMIEDID(pipe) _PIPE(pipe, \ | ||
5076 | VLV_HDMIW_HDMIEDID_A, \ | ||
5077 | VLV_HDMIW_HDMIEDID_B) | ||
5078 | #define VLV_AUD_CNTL_ST_A (VLV_DISPLAY_BASE + 0x620B4) | ||
5079 | #define VLV_AUD_CNTL_ST_B (VLV_DISPLAY_BASE + 0x621B4) | ||
5080 | #define VLV_AUD_CNTL_ST(pipe) _PIPE(pipe, \ | ||
5081 | VLV_AUD_CNTL_ST_A, \ | ||
5082 | VLV_AUD_CNTL_ST_B) | ||
5083 | #define VLV_AUD_CNTL_ST2 (VLV_DISPLAY_BASE + 0x620C0) | ||
5084 | |||
4953 | /* These are the 4 32-bit write offset registers for each stream | 5085 | /* These are the 4 32-bit write offset registers for each stream |
4954 | * output buffer. It determines the offset from the | 5086 | * output buffer. It determines the offset from the |
4955 | * 3DSTATE_SO_BUFFERs that the next streamed vertex output goes to. | 5087 | * 3DSTATE_SO_BUFFERs that the next streamed vertex output goes to. |
@@ -4966,6 +5098,12 @@ | |||
4966 | #define CPT_AUD_CFG(pipe) _PIPE(pipe, \ | 5098 | #define CPT_AUD_CFG(pipe) _PIPE(pipe, \ |
4967 | CPT_AUD_CONFIG_A, \ | 5099 | CPT_AUD_CONFIG_A, \ |
4968 | CPT_AUD_CONFIG_B) | 5100 | CPT_AUD_CONFIG_B) |
5101 | #define VLV_AUD_CONFIG_A (VLV_DISPLAY_BASE + 0x62000) | ||
5102 | #define VLV_AUD_CONFIG_B (VLV_DISPLAY_BASE + 0x62100) | ||
5103 | #define VLV_AUD_CFG(pipe) _PIPE(pipe, \ | ||
5104 | VLV_AUD_CONFIG_A, \ | ||
5105 | VLV_AUD_CONFIG_B) | ||
5106 | |||
4969 | #define AUD_CONFIG_N_VALUE_INDEX (1 << 29) | 5107 | #define AUD_CONFIG_N_VALUE_INDEX (1 << 29) |
4970 | #define AUD_CONFIG_N_PROG_ENABLE (1 << 28) | 5108 | #define AUD_CONFIG_N_PROG_ENABLE (1 << 28) |
4971 | #define AUD_CONFIG_UPPER_N_SHIFT 20 | 5109 | #define AUD_CONFIG_UPPER_N_SHIFT 20 |
@@ -5108,6 +5246,7 @@ | |||
5108 | #define DDI_BUF_CTL_B 0x64100 | 5246 | #define DDI_BUF_CTL_B 0x64100 |
5109 | #define DDI_BUF_CTL(port) _PORT(port, DDI_BUF_CTL_A, DDI_BUF_CTL_B) | 5247 | #define DDI_BUF_CTL(port) _PORT(port, DDI_BUF_CTL_A, DDI_BUF_CTL_B) |
5110 | #define DDI_BUF_CTL_ENABLE (1<<31) | 5248 | #define DDI_BUF_CTL_ENABLE (1<<31) |
5249 | /* Haswell */ | ||
5111 | #define DDI_BUF_EMP_400MV_0DB_HSW (0<<24) /* Sel0 */ | 5250 | #define DDI_BUF_EMP_400MV_0DB_HSW (0<<24) /* Sel0 */ |
5112 | #define DDI_BUF_EMP_400MV_3_5DB_HSW (1<<24) /* Sel1 */ | 5251 | #define DDI_BUF_EMP_400MV_3_5DB_HSW (1<<24) /* Sel1 */ |
5113 | #define DDI_BUF_EMP_400MV_6DB_HSW (2<<24) /* Sel2 */ | 5252 | #define DDI_BUF_EMP_400MV_6DB_HSW (2<<24) /* Sel2 */ |
@@ -5117,6 +5256,16 @@ | |||
5117 | #define DDI_BUF_EMP_600MV_6DB_HSW (6<<24) /* Sel6 */ | 5256 | #define DDI_BUF_EMP_600MV_6DB_HSW (6<<24) /* Sel6 */ |
5118 | #define DDI_BUF_EMP_800MV_0DB_HSW (7<<24) /* Sel7 */ | 5257 | #define DDI_BUF_EMP_800MV_0DB_HSW (7<<24) /* Sel7 */ |
5119 | #define DDI_BUF_EMP_800MV_3_5DB_HSW (8<<24) /* Sel8 */ | 5258 | #define DDI_BUF_EMP_800MV_3_5DB_HSW (8<<24) /* Sel8 */ |
5259 | /* Broadwell */ | ||
5260 | #define DDI_BUF_EMP_400MV_0DB_BDW (0<<24) /* Sel0 */ | ||
5261 | #define DDI_BUF_EMP_400MV_3_5DB_BDW (1<<24) /* Sel1 */ | ||
5262 | #define DDI_BUF_EMP_400MV_6DB_BDW (2<<24) /* Sel2 */ | ||
5263 | #define DDI_BUF_EMP_600MV_0DB_BDW (3<<24) /* Sel3 */ | ||
5264 | #define DDI_BUF_EMP_600MV_3_5DB_BDW (4<<24) /* Sel4 */ | ||
5265 | #define DDI_BUF_EMP_600MV_6DB_BDW (5<<24) /* Sel5 */ | ||
5266 | #define DDI_BUF_EMP_800MV_0DB_BDW (6<<24) /* Sel6 */ | ||
5267 | #define DDI_BUF_EMP_800MV_3_5DB_BDW (7<<24) /* Sel7 */ | ||
5268 | #define DDI_BUF_EMP_1200MV_0DB_BDW (8<<24) /* Sel8 */ | ||
5120 | #define DDI_BUF_EMP_MASK (0xf<<24) | 5269 | #define DDI_BUF_EMP_MASK (0xf<<24) |
5121 | #define DDI_BUF_PORT_REVERSAL (1<<16) | 5270 | #define DDI_BUF_PORT_REVERSAL (1<<16) |
5122 | #define DDI_BUF_IS_IDLE (1<<7) | 5271 | #define DDI_BUF_IS_IDLE (1<<7) |
@@ -5226,6 +5375,9 @@ | |||
5226 | #define LCPLL_PLL_LOCK (1<<30) | 5375 | #define LCPLL_PLL_LOCK (1<<30) |
5227 | #define LCPLL_CLK_FREQ_MASK (3<<26) | 5376 | #define LCPLL_CLK_FREQ_MASK (3<<26) |
5228 | #define LCPLL_CLK_FREQ_450 (0<<26) | 5377 | #define LCPLL_CLK_FREQ_450 (0<<26) |
5378 | #define LCPLL_CLK_FREQ_54O_BDW (1<<26) | ||
5379 | #define LCPLL_CLK_FREQ_337_5_BDW (2<<26) | ||
5380 | #define LCPLL_CLK_FREQ_675_BDW (3<<26) | ||
5229 | #define LCPLL_CD_CLOCK_DISABLE (1<<25) | 5381 | #define LCPLL_CD_CLOCK_DISABLE (1<<25) |
5230 | #define LCPLL_CD2X_CLOCK_DISABLE (1<<23) | 5382 | #define LCPLL_CD2X_CLOCK_DISABLE (1<<23) |
5231 | #define LCPLL_POWER_DOWN_ALLOW (1<<22) | 5383 | #define LCPLL_POWER_DOWN_ALLOW (1<<22) |