diff options
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/drm/i915/gvt/handlers.c | 44 | ||||
| -rw-r--r-- | drivers/gpu/drm/i915/gvt/reg.h | 3 |
2 files changed, 2 insertions, 45 deletions
diff --git a/drivers/gpu/drm/i915/gvt/handlers.c b/drivers/gpu/drm/i915/gvt/handlers.c index 2294466dd415..812f411d1c7d 100644 --- a/drivers/gpu/drm/i915/gvt/handlers.c +++ b/drivers/gpu/drm/i915/gvt/handlers.c | |||
| @@ -1589,6 +1589,8 @@ static int ring_reset_ctl_write(struct intel_vgpu *vgpu, | |||
| 1589 | MMIO_F(prefix(BLT_RING_BASE), s, f, am, rm, d, r, w); \ | 1589 | MMIO_F(prefix(BLT_RING_BASE), s, f, am, rm, d, r, w); \ |
| 1590 | MMIO_F(prefix(GEN6_BSD_RING_BASE), s, f, am, rm, d, r, w); \ | 1590 | MMIO_F(prefix(GEN6_BSD_RING_BASE), s, f, am, rm, d, r, w); \ |
| 1591 | MMIO_F(prefix(VEBOX_RING_BASE), s, f, am, rm, d, r, w); \ | 1591 | MMIO_F(prefix(VEBOX_RING_BASE), s, f, am, rm, d, r, w); \ |
| 1592 | if (HAS_BSD2(dev_priv)) \ | ||
| 1593 | MMIO_F(prefix(GEN8_BSD2_RING_BASE), s, f, am, rm, d, r, w); \ | ||
| 1592 | } while (0) | 1594 | } while (0) |
| 1593 | 1595 | ||
| 1594 | #define MMIO_RING_D(prefix, d) \ | 1596 | #define MMIO_RING_D(prefix, d) \ |
| @@ -1636,7 +1638,6 @@ static int init_generic_mmio_info(struct intel_gvt *gvt) | |||
| 1636 | 1638 | ||
| 1637 | #define RING_REG(base) (base + 0x6c) | 1639 | #define RING_REG(base) (base + 0x6c) |
| 1638 | MMIO_RING_DFH(RING_REG, D_ALL, 0, instdone_mmio_read, NULL); | 1640 | MMIO_RING_DFH(RING_REG, D_ALL, 0, instdone_mmio_read, NULL); |
| 1639 | MMIO_DH(RING_REG(GEN8_BSD2_RING_BASE), D_ALL, instdone_mmio_read, NULL); | ||
| 1640 | #undef RING_REG | 1641 | #undef RING_REG |
| 1641 | MMIO_DH(GEN7_SC_INSTDONE, D_BDW_PLUS, instdone_mmio_read, NULL); | 1642 | MMIO_DH(GEN7_SC_INSTDONE, D_BDW_PLUS, instdone_mmio_read, NULL); |
| 1642 | 1643 | ||
| @@ -2411,9 +2412,6 @@ static int init_broadwell_mmio_info(struct intel_gvt *gvt) | |||
| 2411 | struct drm_i915_private *dev_priv = gvt->dev_priv; | 2412 | struct drm_i915_private *dev_priv = gvt->dev_priv; |
| 2412 | int ret; | 2413 | int ret; |
| 2413 | 2414 | ||
| 2414 | MMIO_DFH(RING_IMR(GEN8_BSD2_RING_BASE), D_BDW_PLUS, F_CMD_ACCESS, NULL, | ||
| 2415 | intel_vgpu_reg_imr_handler); | ||
| 2416 | |||
| 2417 | MMIO_DH(GEN8_GT_IMR(0), D_BDW_PLUS, NULL, intel_vgpu_reg_imr_handler); | 2415 | MMIO_DH(GEN8_GT_IMR(0), D_BDW_PLUS, NULL, intel_vgpu_reg_imr_handler); |
| 2418 | MMIO_DH(GEN8_GT_IER(0), D_BDW_PLUS, NULL, intel_vgpu_reg_ier_handler); | 2416 | MMIO_DH(GEN8_GT_IER(0), D_BDW_PLUS, NULL, intel_vgpu_reg_ier_handler); |
| 2419 | MMIO_DH(GEN8_GT_IIR(0), D_BDW_PLUS, NULL, intel_vgpu_reg_iir_handler); | 2417 | MMIO_DH(GEN8_GT_IIR(0), D_BDW_PLUS, NULL, intel_vgpu_reg_iir_handler); |
| @@ -2476,68 +2474,33 @@ static int init_broadwell_mmio_info(struct intel_gvt *gvt) | |||
| 2476 | MMIO_DH(GEN8_MASTER_IRQ, D_BDW_PLUS, NULL, | 2474 | MMIO_DH(GEN8_MASTER_IRQ, D_BDW_PLUS, NULL, |
| 2477 | intel_vgpu_reg_master_irq_handler); | 2475 | intel_vgpu_reg_master_irq_handler); |
| 2478 | 2476 | ||
| 2479 | MMIO_DFH(RING_HWSTAM(GEN8_BSD2_RING_BASE), D_BDW_PLUS, | ||
| 2480 | F_CMD_ACCESS, NULL, NULL); | ||
| 2481 | MMIO_DFH(0x1c134, D_BDW_PLUS, F_CMD_ACCESS, NULL, NULL); | ||
| 2482 | |||
| 2483 | MMIO_DFH(RING_TAIL(GEN8_BSD2_RING_BASE), D_BDW_PLUS, F_CMD_ACCESS, | ||
| 2484 | NULL, NULL); | ||
| 2485 | MMIO_DFH(RING_HEAD(GEN8_BSD2_RING_BASE), D_BDW_PLUS, | ||
| 2486 | F_CMD_ACCESS, NULL, NULL); | ||
| 2487 | MMIO_GM_RDR(RING_START(GEN8_BSD2_RING_BASE), D_BDW_PLUS, NULL, NULL); | ||
| 2488 | MMIO_DFH(RING_CTL(GEN8_BSD2_RING_BASE), D_BDW_PLUS, F_CMD_ACCESS, | ||
| 2489 | NULL, NULL); | ||
| 2490 | MMIO_DFH(RING_ACTHD(GEN8_BSD2_RING_BASE), D_BDW_PLUS, | ||
| 2491 | F_CMD_ACCESS, NULL, NULL); | ||
| 2492 | MMIO_DFH(RING_ACTHD_UDW(GEN8_BSD2_RING_BASE), D_BDW_PLUS, | ||
| 2493 | F_CMD_ACCESS, NULL, NULL); | ||
| 2494 | MMIO_DFH(0x1c29c, D_BDW_PLUS, F_MODE_MASK | F_CMD_ACCESS, NULL, | ||
| 2495 | ring_mode_mmio_write); | ||
| 2496 | MMIO_DFH(RING_MI_MODE(GEN8_BSD2_RING_BASE), D_BDW_PLUS, | ||
| 2497 | F_MODE_MASK | F_CMD_ACCESS, NULL, NULL); | ||
| 2498 | MMIO_DFH(RING_INSTPM(GEN8_BSD2_RING_BASE), D_BDW_PLUS, | ||
| 2499 | F_MODE_MASK | F_CMD_ACCESS, NULL, NULL); | ||
| 2500 | MMIO_DFH(RING_TIMESTAMP(GEN8_BSD2_RING_BASE), D_BDW_PLUS, F_CMD_ACCESS, | ||
| 2501 | ring_timestamp_mmio_read, NULL); | ||
| 2502 | |||
| 2503 | MMIO_RING_DFH(RING_ACTHD_UDW, D_BDW_PLUS, F_CMD_ACCESS, NULL, NULL); | 2477 | MMIO_RING_DFH(RING_ACTHD_UDW, D_BDW_PLUS, F_CMD_ACCESS, NULL, NULL); |
| 2504 | 2478 | ||
| 2505 | #define RING_REG(base) (base + 0xd0) | 2479 | #define RING_REG(base) (base + 0xd0) |
| 2506 | MMIO_RING_F(RING_REG, 4, F_RO, 0, | 2480 | MMIO_RING_F(RING_REG, 4, F_RO, 0, |
| 2507 | ~_MASKED_BIT_ENABLE(RESET_CTL_REQUEST_RESET), D_BDW_PLUS, NULL, | 2481 | ~_MASKED_BIT_ENABLE(RESET_CTL_REQUEST_RESET), D_BDW_PLUS, NULL, |
| 2508 | ring_reset_ctl_write); | 2482 | ring_reset_ctl_write); |
| 2509 | MMIO_F(RING_REG(GEN8_BSD2_RING_BASE), 4, F_RO, 0, | ||
| 2510 | ~_MASKED_BIT_ENABLE(RESET_CTL_REQUEST_RESET), D_BDW_PLUS, NULL, | ||
| 2511 | ring_reset_ctl_write); | ||
| 2512 | #undef RING_REG | 2483 | #undef RING_REG |
| 2513 | 2484 | ||
| 2514 | #define RING_REG(base) (base + 0x230) | 2485 | #define RING_REG(base) (base + 0x230) |
| 2515 | MMIO_RING_DFH(RING_REG, D_BDW_PLUS, 0, NULL, elsp_mmio_write); | 2486 | MMIO_RING_DFH(RING_REG, D_BDW_PLUS, 0, NULL, elsp_mmio_write); |
| 2516 | MMIO_DH(RING_REG(GEN8_BSD2_RING_BASE), D_BDW_PLUS, NULL, elsp_mmio_write); | ||
| 2517 | #undef RING_REG | 2487 | #undef RING_REG |
| 2518 | 2488 | ||
| 2519 | #define RING_REG(base) (base + 0x234) | 2489 | #define RING_REG(base) (base + 0x234) |
| 2520 | MMIO_RING_F(RING_REG, 8, F_RO | F_CMD_ACCESS, 0, ~0, D_BDW_PLUS, | 2490 | MMIO_RING_F(RING_REG, 8, F_RO | F_CMD_ACCESS, 0, ~0, D_BDW_PLUS, |
| 2521 | NULL, NULL); | 2491 | NULL, NULL); |
| 2522 | MMIO_F(RING_REG(GEN8_BSD2_RING_BASE), 4, F_RO | F_CMD_ACCESS, 0, | ||
| 2523 | ~0LL, D_BDW_PLUS, NULL, NULL); | ||
| 2524 | #undef RING_REG | 2492 | #undef RING_REG |
| 2525 | 2493 | ||
| 2526 | #define RING_REG(base) (base + 0x244) | 2494 | #define RING_REG(base) (base + 0x244) |
| 2527 | MMIO_RING_DFH(RING_REG, D_BDW_PLUS, F_CMD_ACCESS, NULL, NULL); | 2495 | MMIO_RING_DFH(RING_REG, D_BDW_PLUS, F_CMD_ACCESS, NULL, NULL); |
| 2528 | MMIO_DFH(RING_REG(GEN8_BSD2_RING_BASE), D_BDW_PLUS, F_CMD_ACCESS, | ||
| 2529 | NULL, NULL); | ||
| 2530 | #undef RING_REG | 2496 | #undef RING_REG |
| 2531 | 2497 | ||
| 2532 | #define RING_REG(base) (base + 0x370) | 2498 | #define RING_REG(base) (base + 0x370) |
| 2533 | MMIO_RING_F(RING_REG, 48, F_RO, 0, ~0, D_BDW_PLUS, NULL, NULL); | 2499 | MMIO_RING_F(RING_REG, 48, F_RO, 0, ~0, D_BDW_PLUS, NULL, NULL); |
| 2534 | MMIO_F(RING_REG(GEN8_BSD2_RING_BASE), 48, F_RO, 0, ~0, D_BDW_PLUS, | ||
| 2535 | NULL, NULL); | ||
| 2536 | #undef RING_REG | 2500 | #undef RING_REG |
| 2537 | 2501 | ||
| 2538 | #define RING_REG(base) (base + 0x3a0) | 2502 | #define RING_REG(base) (base + 0x3a0) |
| 2539 | MMIO_RING_DFH(RING_REG, D_BDW_PLUS, F_MODE_MASK, NULL, NULL); | 2503 | MMIO_RING_DFH(RING_REG, D_BDW_PLUS, F_MODE_MASK, NULL, NULL); |
| 2540 | MMIO_DFH(RING_REG(GEN8_BSD2_RING_BASE), D_BDW_PLUS, F_MODE_MASK, NULL, NULL); | ||
| 2541 | #undef RING_REG | 2504 | #undef RING_REG |
| 2542 | 2505 | ||
| 2543 | MMIO_D(PIPEMISC(PIPE_A), D_BDW_PLUS); | 2506 | MMIO_D(PIPEMISC(PIPE_A), D_BDW_PLUS); |
| @@ -2557,11 +2520,9 @@ static int init_broadwell_mmio_info(struct intel_gvt *gvt) | |||
| 2557 | 2520 | ||
| 2558 | #define RING_REG(base) (base + 0x270) | 2521 | #define RING_REG(base) (base + 0x270) |
| 2559 | MMIO_RING_F(RING_REG, 32, 0, 0, 0, D_BDW_PLUS, NULL, NULL); | 2522 | MMIO_RING_F(RING_REG, 32, 0, 0, 0, D_BDW_PLUS, NULL, NULL); |
| 2560 | MMIO_F(RING_REG(GEN8_BSD2_RING_BASE), 32, 0, 0, 0, D_BDW_PLUS, NULL, NULL); | ||
| 2561 | #undef RING_REG | 2523 | #undef RING_REG |
| 2562 | 2524 | ||
| 2563 | MMIO_RING_GM_RDR(RING_HWS_PGA, D_BDW_PLUS, NULL, NULL); | 2525 | MMIO_RING_GM_RDR(RING_HWS_PGA, D_BDW_PLUS, NULL, NULL); |
| 2564 | MMIO_GM_RDR(RING_HWS_PGA(GEN8_BSD2_RING_BASE), D_BDW_PLUS, NULL, NULL); | ||
| 2565 | 2526 | ||
| 2566 | MMIO_DFH(HDC_CHICKEN0, D_BDW_PLUS, F_MODE_MASK | F_CMD_ACCESS, NULL, NULL); | 2527 | MMIO_DFH(HDC_CHICKEN0, D_BDW_PLUS, F_MODE_MASK | F_CMD_ACCESS, NULL, NULL); |
| 2567 | 2528 | ||
| @@ -2849,7 +2810,6 @@ static int init_skl_mmio_info(struct intel_gvt *gvt) | |||
| 2849 | MMIO_D(0x65f08, D_SKL | D_KBL); | 2810 | MMIO_D(0x65f08, D_SKL | D_KBL); |
| 2850 | MMIO_D(0x320f0, D_SKL | D_KBL); | 2811 | MMIO_D(0x320f0, D_SKL | D_KBL); |
| 2851 | 2812 | ||
| 2852 | MMIO_DFH(_REG_VCS2_EXCC, D_SKL_PLUS, F_CMD_ACCESS, NULL, NULL); | ||
| 2853 | MMIO_D(0x70034, D_SKL_PLUS); | 2813 | MMIO_D(0x70034, D_SKL_PLUS); |
| 2854 | MMIO_D(0x71034, D_SKL_PLUS); | 2814 | MMIO_D(0x71034, D_SKL_PLUS); |
| 2855 | MMIO_D(0x72034, D_SKL_PLUS); | 2815 | MMIO_D(0x72034, D_SKL_PLUS); |
diff --git a/drivers/gpu/drm/i915/gvt/reg.h b/drivers/gpu/drm/i915/gvt/reg.h index fbd023a16f18..7d01c77a0f7a 100644 --- a/drivers/gpu/drm/i915/gvt/reg.h +++ b/drivers/gpu/drm/i915/gvt/reg.h | |||
| @@ -54,9 +54,6 @@ | |||
| 54 | 54 | ||
| 55 | #define VGT_SPRSTRIDE(pipe) _PIPE(pipe, _SPRA_STRIDE, _PLANE_STRIDE_2_B) | 55 | #define VGT_SPRSTRIDE(pipe) _PIPE(pipe, _SPRA_STRIDE, _PLANE_STRIDE_2_B) |
| 56 | 56 | ||
| 57 | #define _REG_VECS_EXCC 0x1A028 | ||
| 58 | #define _REG_VCS2_EXCC 0x1c028 | ||
| 59 | |||
| 60 | #define _REG_701C0(pipe, plane) (0x701c0 + pipe * 0x1000 + (plane - 1) * 0x100) | 57 | #define _REG_701C0(pipe, plane) (0x701c0 + pipe * 0x1000 + (plane - 1) * 0x100) |
| 61 | #define _REG_701C4(pipe, plane) (0x701c4 + pipe * 0x1000 + (plane - 1) * 0x100) | 58 | #define _REG_701C4(pipe, plane) (0x701c4 + pipe * 0x1000 + (plane - 1) * 0x100) |
| 62 | 59 | ||
