From patchwork Sat Feb 2 08:29:11 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Rodrigo Vivi X-Patchwork-Id: 10794205 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5CB0013B4 for ; Sat, 2 Feb 2019 08:29:13 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3B53030D04 for ; Sat, 2 Feb 2019 08:29:13 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2CF9130D89; Sat, 2 Feb 2019 08:29:13 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 1716B30D04 for ; Sat, 2 Feb 2019 08:29:12 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 66EB06E387; Sat, 2 Feb 2019 08:29:11 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 751D66E387; Sat, 2 Feb 2019 08:29:10 +0000 (UTC) X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 02 Feb 2019 00:29:09 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,551,1539673200"; d="scan'208";a="135277355" Received: from rdvivi-losangeles.jf.intel.com (HELO intel.com) ([10.7.196.65]) by orsmga001.jf.intel.com with ESMTP; 02 Feb 2019 00:29:09 -0800 Date: Sat, 2 Feb 2019 00:29:11 -0800 From: Rodrigo Vivi To: Dave Airlie , Daniel Vetter Message-ID: <20190202082911.GA6615@intel.com> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) Subject: [Intel-gfx] [PULL] drm-intel-next X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: dim-tools@lists.freedesktop.org, Maxime Ripard , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Virus-Scanned: ClamAV using ClamSMTP Hi Dave and Daniel, Here goes another pull request for 5.1. Maybe I will still send another next week. This pull also include a GVT one with: " Here is gvt-next stuff. This includes Coffeelake support for GVT, making kvmgt as self load module to have better dependence with vfio/mdev, with some const treatment and kernel type change. " And also it includes a drm change for constify drm_color_lut_check. Rest of details are on the tags below. drm-intel-next-2019-02-02: - Make background color and LUT more robust (Matt) - Icelake display fixes (Ville, Imre) - Workarounds fixes and reorg (Tvrtko, Talha) - Enable fastboot by default on VLV and CHV (Hans) - Add another PCI ID for Coffee Lake (Rodrigo) drm-intel-next-2019-01-29: - MOCS table rework for simplification and to add ICL (Lucas, Tomasz) - Move RPCS setup to context pin (Tvrtko) - Breadcrumb simplification and GPU Reset improvements (Chris) - Many fixes for TV modeset (Ville) - Clean up on atomic plane checks (Ville) - NV12 pich check fix (Raviraj) - Disable -Wuninitialized (Nathan) - Sanitize DPLL state for broken BIOSes on SNB (Ville) - Rework on vma locking and counting and introduce a concept of per-timeline HWSP (Chris) - Enable fastboot by default on Skylake and newer platforms (Hans) - Fix slk srckey mask bits (Ville) - Selftests fixes (Chris) - Execlists and preemption improvements and fixes (Chris) - drm consitify drm_color_lut_check (Ville) - Ice Lake clock fixes (Lucas) Thanks, Rodrigo. The following changes since commit 85baa5dbf79163026dcb78f742294c522e176432: drm/i915: Update DRIVER_DATE to 20190124 (2019-01-24 15:00:59 -0800) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2019-02-02 for you to fetch changes up to 46c0cd8c562bc3e4a99cbaa4ba0904b6871b7b4b: drm/i915: Update DRIVER_DATE to 20190202 (2019-02-02 00:14:28 -0800) ---------------------------------------------------------------- - Make background color and LUT more robust (Matt) - Icelake display fixes (Ville, Imre) - Workarounds fixes and reorg (Tvrtko, Talha) - Enable fastboot by default on VLV and CHV (Hans) - Add another PCI ID for Coffee Lake (Rodrigo) ---------------------------------------------------------------- Chris Wilson (27): drm/i915: Measure the required reserved size for request emission drm/i915: Remove manual breadcumb counting drm/i915: Compute the HWS offsets explicitly drm/i915: Make all GPU resets atomic drm/i915/guc: Disable global reset drm/i915: Remove GPU reset dependence on struct_mutex drm/i915/selftests: Trim struct_mutex duration for set-wedged selftest drm/i915: Issue engine resets onto idle engines drm/i915: Wait for a moment before forcibly resetting the device drm/i915: Stop tracking MRU activity on VMA drm/i915: Pull VM lists under the VM mutex. drm/i915: Move vma lookup to its own lock drm/i915: Always allocate an object/vma for the HWSP drm/i915: Move list of timelines under its own lock drm/i915: Introduce concept of per-timeline (context) HWSP drm/i915: Enlarge vma->pin_count drm/i915: Allocate a status page for each timeline drm/i915: Share per-timeline HWSP using a slab suballocator drm/i915: Track the context's seqno in its own timeline HWSP drm/i915: Track active timelines drm/i915/selftests: Apply a subtest filter drm/i915: Identify active requests drm/i915: Rename execlists->queue_priority to queue_priority_hint drm/i915/execlists: Suppress preempting self drm/i915: Remove the intel_engine_notify tracepoint drm/i915: Replace global breadcrumbs with per-context interrupt tracking drm/i915: Drop fake breadcrumb irq Hang Yuan (3): drm/i915/gvt: add functions to get default resolution drm/i915/gvt: add hotplug emulation drm/i915/gvt: add VFIO EDID region Hans de Goede (2): drm/i915: Enable fastboot by default on Skylake and newer drm/i915: Enable fastboot by default on VLV and CHV Imre Deak (2): drm/i915/icl: Add TypeC ports only if VBT is present drm/i915/icl: Work around broken VBTs for port F detection Lucas De Marchi (9): drm/i915: initialize unused MOCS entries to PTE drm/i915: Simplify MOCS table definition drm/i915: use a macro to define MOCS entries drm/i915: keep track of used entries in MOCS table drm/i915: cache number of MOCS entries drm/i915/icl: use tc_port in MG_PLL macros drm/i915: always return something on DDI clock selection drm/i915/icl: remove dpll from clk_sel drm/i915/icl: keep track of unused pll while looping Matt Roper (2): drm/i915: Force background color to black for gen9+ (v2) drm/i915: Apply LUT validation checks to platforms more accurately (v3) Nathan Chancellor (1): drm/i915: Disable -Wuninitialized P Raviraj Sitaram (1): drm/i915: correct the pitch check for NV12 framebuffer Rodrigo Vivi (5): Merge drm/drm-next into drm-intel-next-queued drm/i915: Update DRIVER_DATE to 20190129 Merge tag 'gvt-next-2019-02-01' of https://github.com/intel/gvt-linux into drm-intel-next-queued drm/i915/cfl: Adding another PCI Device ID. drm/i915: Update DRIVER_DATE to 20190202 Talha Nassar (1): drm/i915/icl: restore WaEnableFloatBlendOptimization Tomasz Lis (2): drm/i915/skl: Rework MOCS tables to keep common part in a define drm/i915/icl: Define MOCS table for Icelake Tvrtko Ursulin (3): drm/i915/execlists: Move RPCS setup to context pin drm/i915: Move workaround infrastructure code up drm/i915: Save some lines of source code in workarounds Ville Syrjälä (33): drm/i915: Don't try to use the hardware frame counter with i965gm TV output drm/i915/tv: Fix interlaced ysize calculation drm/i915/tv: Fix tv mode clocks drm/i915/tv: Store the TV oversampling factor in the TV mode drm/i915/tv: Use bools where appropriate drm/i915/tv: Nuke silly 0 initialzation of xpos/ypos drm/i915/tv: Deobfuscate preferred mode selection drm/i915/tv: Use drm_mode_set_name() to name TV modes drm/i915/tv: Make TV mode autoselection actually useable drm/i915/tv: Nuke reported_modes[] drm/i915/tv: Add 1080p30/50/60 TV modes drm/i915/tv: Generate better pipe timings for TV encoder drm/i915/tv: Fix >1024 modes on gen3 drm/i915/tv: Filter out >1024 wide modes that would need vertical scaling on gen3 drm/i915: Clean up intel_plane_atomic_check_with_state() drm/i915/tv: Fix return value for intel_tv_compute_config() drm/i915/tv: Use the scanline counter for timestamps on i965gm TV output drm/i915: Try to sanitize bogus DPLL state left over by broken SNB BIOSen drm/i915: Fix skl srckey mask bits drm: Constify drm_color_lut_check() drm/i915/tv: Fix adjusted_mode dotclock for interlaced modes drm/i915/tv: Bypass the vertical filter if possible drm/i915: Don't ignore level 0 lines watermark for glk+ drm/i915: Reinstate an early latency==0 check for skl+ drm/i915: Fix bits vs. bytes mixup in dbuf block size computation drm/i915: Fix > vs >= mismatch in watermark/ddb calculations drm/i915: Account for minimum ddb allocation restrictions drm/i915: Pass dev_priv to skl_needs_memory_bw_wa() drm/i915: Drop the definite article in front of SAGV drm/i915: Drop the pointless linetime==0 check drm/i915: Use IS_GEN9_LP() for the linetime w/a check drm/i915: Don't use the second dbuf slice on icl drm/i915: Pick the first unused PLL once again .../bindings/display/bridge/lvds-transmitter.txt | 12 +- .../bindings/display/bridge/thine,thc63lvdm83d.txt | 2 +- .../bindings/display/bridge/ti,ds90c185.txt | 55 ++ Documentation/gpu/todo.rst | 35 - drivers/gpu/drm/Kconfig | 4 - drivers/gpu/drm/bridge/lvds-encoder.c | 53 +- drivers/gpu/drm/drm_color_mgmt.c | 5 +- drivers/gpu/drm/drm_damage_helper.c | 41 + drivers/gpu/drm/drm_dp_helper.c | 11 +- drivers/gpu/drm/drm_fb_cma_helper.c | 137 +--- drivers/gpu/drm/drm_fb_helper.c | 12 +- drivers/gpu/drm/drm_gem_framebuffer_helper.c | 50 +- drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/gvt/display.c | 31 + drivers/gpu/drm/i915/gvt/display.h | 37 +- drivers/gpu/drm/i915/gvt/gvt.c | 1 + drivers/gpu/drm/i915/gvt/gvt.h | 3 + drivers/gpu/drm/i915/gvt/hypercall.h | 1 + drivers/gpu/drm/i915/gvt/kvmgt.c | 143 ++++ drivers/gpu/drm/i915/gvt/mpt.h | 17 + drivers/gpu/drm/i915/gvt/vgpu.c | 6 + drivers/gpu/drm/i915/i915_debugfs.c | 162 +--- drivers/gpu/drm/i915/i915_drv.h | 21 +- drivers/gpu/drm/i915/i915_gem.c | 195 ++--- drivers/gpu/drm/i915/i915_gem_context.c | 3 + drivers/gpu/drm/i915/i915_gem_context.h | 2 + drivers/gpu/drm/i915/i915_gem_evict.c | 89 ++- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 12 + drivers/gpu/drm/i915/i915_gem_fence_reg.h | 1 - drivers/gpu/drm/i915/i915_gem_gtt.c | 30 +- drivers/gpu/drm/i915/i915_gem_gtt.h | 53 +- drivers/gpu/drm/i915/i915_gem_object.h | 45 +- drivers/gpu/drm/i915/i915_gem_shrinker.c | 12 +- drivers/gpu/drm/i915/i915_gem_stolen.c | 5 +- drivers/gpu/drm/i915/i915_gpu_error.c | 231 ++---- drivers/gpu/drm/i915/i915_gpu_error.h | 40 +- drivers/gpu/drm/i915/i915_irq.c | 118 +-- drivers/gpu/drm/i915/i915_params.c | 6 +- drivers/gpu/drm/i915/i915_params.h | 2 +- drivers/gpu/drm/i915/i915_pci.c | 11 +- drivers/gpu/drm/i915/i915_reg.h | 62 +- drivers/gpu/drm/i915/i915_request.c | 204 ++--- drivers/gpu/drm/i915/i915_request.h | 134 +++- drivers/gpu/drm/i915/i915_reset.c | 500 ++++++------ drivers/gpu/drm/i915/i915_reset.h | 3 + drivers/gpu/drm/i915/i915_scheduler.c | 29 +- drivers/gpu/drm/i915/i915_selftest.h | 1 + drivers/gpu/drm/i915/i915_timeline.c | 253 +++++- drivers/gpu/drm/i915/i915_timeline.h | 27 +- drivers/gpu/drm/i915/i915_trace.h | 25 - drivers/gpu/drm/i915/i915_vma.c | 84 +- drivers/gpu/drm/i915/i915_vma.h | 47 +- drivers/gpu/drm/i915/intel_atomic_plane.c | 36 +- drivers/gpu/drm/i915/intel_bios.c | 7 + drivers/gpu/drm/i915/intel_breadcrumbs.c | 863 +++++---------------- drivers/gpu/drm/i915/intel_color.c | 60 +- drivers/gpu/drm/i915/intel_ddi.c | 20 +- drivers/gpu/drm/i915/intel_device_info.h | 2 + drivers/gpu/drm/i915/intel_display.c | 150 +++- drivers/gpu/drm/i915/intel_dpll_mgr.c | 99 ++- drivers/gpu/drm/i915/intel_dpll_mgr.h | 2 +- drivers/gpu/drm/i915/intel_drv.h | 4 +- drivers/gpu/drm/i915/intel_engine_cs.c | 259 ++++--- drivers/gpu/drm/i915/intel_gpu_commands.h | 1 - drivers/gpu/drm/i915/intel_guc_submission.c | 22 +- drivers/gpu/drm/i915/intel_hangcheck.c | 30 +- drivers/gpu/drm/i915/intel_lrc.c | 365 ++++++--- drivers/gpu/drm/i915/intel_mocs.c | 406 ++++++---- drivers/gpu/drm/i915/intel_overlay.c | 2 - drivers/gpu/drm/i915/intel_pm.c | 130 ++-- drivers/gpu/drm/i915/intel_ringbuffer.c | 286 ++++--- drivers/gpu/drm/i915/intel_ringbuffer.h | 166 ++-- drivers/gpu/drm/i915/intel_sprite.c | 2 +- drivers/gpu/drm/i915/intel_tv.c | 718 +++++++++++++---- drivers/gpu/drm/i915/intel_workarounds.c | 70 +- drivers/gpu/drm/i915/selftests/i915_gem_evict.c | 7 +- drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 5 +- .../gpu/drm/i915/selftests/i915_live_selftests.h | 1 + .../gpu/drm/i915/selftests/i915_mock_selftests.h | 3 +- drivers/gpu/drm/i915/selftests/i915_random.c | 33 +- drivers/gpu/drm/i915/selftests/i915_random.h | 3 + drivers/gpu/drm/i915/selftests/i915_request.c | 425 ++++++++++ drivers/gpu/drm/i915/selftests/i915_selftest.c | 47 ++ drivers/gpu/drm/i915/selftests/i915_timeline.c | 464 ++++++++++- drivers/gpu/drm/i915/selftests/i915_vma.c | 4 +- drivers/gpu/drm/i915/selftests/igt_live_test.c | 7 - drivers/gpu/drm/i915/selftests/igt_spinner.c | 5 - drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c | 470 ----------- drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 88 +-- drivers/gpu/drm/i915/selftests/intel_lrc.c | 138 ++++ drivers/gpu/drm/i915/selftests/intel_workarounds.c | 3 - drivers/gpu/drm/i915/selftests/lib_sw_fence.c | 54 ++ drivers/gpu/drm/i915/selftests/lib_sw_fence.h | 3 + drivers/gpu/drm/i915/selftests/mock_engine.c | 58 +- drivers/gpu/drm/i915/selftests/mock_engine.h | 6 - drivers/gpu/drm/i915/selftests/mock_gem_device.c | 11 +- drivers/gpu/drm/i915/selftests/mock_timeline.c | 3 +- drivers/gpu/drm/panel/panel-innolux-p079zca.c | 11 +- drivers/gpu/drm/stm/ltdc.c | 4 +- drivers/gpu/drm/sun4i/sun4i_backend.c | 25 +- drivers/gpu/drm/sun4i/sun4i_drv.c | 1 + drivers/gpu/drm/sun4i/sun4i_frontend.c | 350 ++++++++- drivers/gpu/drm/sun4i/sun4i_frontend.h | 52 ++ drivers/gpu/drm/sun4i/sun4i_layer.c | 28 +- drivers/gpu/drm/tinydrm/core/tinydrm-core.c | 21 +- drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c | 100 +-- drivers/gpu/drm/tinydrm/core/tinydrm-pipe.c | 31 - drivers/gpu/drm/tinydrm/hx8357d.c | 2 +- drivers/gpu/drm/tinydrm/ili9225.c | 149 ++-- drivers/gpu/drm/tinydrm/ili9341.c | 2 +- drivers/gpu/drm/tinydrm/mi0283qt.c | 2 +- drivers/gpu/drm/tinydrm/mipi-dbi.c | 94 ++- drivers/gpu/drm/tinydrm/repaper.c | 43 +- drivers/gpu/drm/tinydrm/st7586.c | 86 +- drivers/gpu/drm/tinydrm/st7735r.c | 2 +- include/drm/drm_color_mgmt.h | 3 +- include/drm/drm_damage_helper.h | 3 + include/drm/drm_fb_cma_helper.h | 22 - include/drm/drm_fourcc.h | 117 +++ include/drm/drm_gem_framebuffer_helper.h | 3 + include/drm/drm_util.h | 2 +- include/drm/i915_pciids.h | 4 + include/drm/tinydrm/mipi-dbi.h | 5 +- include/drm/tinydrm/tinydrm-helpers.h | 20 +- include/drm/tinydrm/tinydrm.h | 26 - include/linux/dma-fence-array.h | 1 + include/uapi/drm/drm_fourcc.h | 16 + 127 files changed, 5732 insertions(+), 4095 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/bridge/ti,ds90c185.txt delete mode 100644 drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c