Skip to content
Permalink
Vandita-Kulkar…
Switch branches/tags

Commits on Aug 23, 2021

  1. drm/i915/dsi/xelpd: Enable mipi dsi support.

    Enable MIPI DSI support on ADL-P platform.
    The esc clock changes, WA changes are taken care
    in the previous patches.
    As per the Bspec the seq remains to be same as TGL.
    
    Signed-off-by: Vandita Kulkarni <vandita.kulkarni@intel.com>
    Vanditakulkarni authored and intel-lab-lkp committed Aug 23, 2021
  2. drm/i915/dsi/xelpd: Add WA to program LP to HS wakeup guardband

    Wa_16012360555 SW will have to program the "LP to HS Wakeup Guardband"
    field to account for the repeaters on the HS Request/Ready PPI signaling
    between the Display engine and the DPHY.
    
    Signed-off-by: Vandita Kulkarni <vandita.kulkarni@intel.com>
    Vanditakulkarni authored and intel-lab-lkp committed Aug 23, 2021

Commits on Aug 20, 2021

  1. drm/i915/dp: Use max params for panels < eDP 1.4

    Users reported that after commit 2bbd6db ("drm/i915: Try to use
    fast+narrow link on eDP again and fall back to the old max strategy on
    failure"), the screen starts to have wobbly effect.
    
    Commit a5c936a ("drm/i915/dp: Use slow and wide link training for
    everything") doesn't help either, that means the affected eDP 1.2 panels
    only work with max params.
    
    So use max params for panels < eDP 1.4 as Windows does to solve the
    issue.
    
    v3:
     - Do the eDP rev check in intel_edp_init_dpcd()
    
    v2:
     - Check eDP 1.4 instead of DPCD 1.1 to apply max params
    
    Cc: stable@vger.kernel.org
    Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/3714
    Fixes: 2bbd6db ("drm/i915: Try to use fast+narrow link on eDP again and fall back to the old max strategy on failure")
    Fixes: a5c936a ("drm/i915/dp: Use slow and wide link training for everything")
    Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
    Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210820075301.693099-1-kai.heng.feng@canonical.com
    khfeng authored and vsyrjala committed Aug 20, 2021
  2. drm/i915/fbc: Polish the skl+ FBC stride override handling

    Polish the FBC stride override stuff:
    - just call it override_cfb_stride since it'll be used on
      more gens later
    - Use REG_BIT() & co. for the registers and give everything
      CHICKEN_ prefix since glk+ will have a different register
      for this
    - Use intel_de_rmw() for the RMW
    
    Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210702204603.596-5-ville.syrjala@linux.intel.com
    Reviewed-by: Jani Nikula <jani.nikula@intel.com>
    vsyrjala committed Aug 20, 2021
  3. drm/i915/fbc: Move the "recompress on activate" to a central place

    On ILK+ we current do a nuke right after activating FBC. If my
    memory isn't playing tricks on me this is actially required if
    FBC didn't stay disabled for a full frame. In that case the
    deactivate+reactivate may not invalidate the cfb. I'd have to
    double chekc to be sure though.
    
    So let's keep the nuke, and just extend it backwards to cover
    all the platforms by doing it a bit higher up.
    
    Reviewed-by: Jani Nikula <jani.nikula@intel.com>
    Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210702204603.596-4-ville.syrjala@linux.intel.com
    vsyrjala committed Aug 20, 2021
  4. drm/i915/fbc: Extract intel_fbc_update()

    Pull the fbc enable vs. disable stuff into a small helper so
    we don't have to have it pollute the higher level modeset code.
    
    Reviewed-by: Jani Nikula <jani.nikula@intel.com>
    Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210702204603.596-3-ville.syrjala@linux.intel.com
    vsyrjala committed Aug 20, 2021
  5. drm/i915/fbc: Rewrite the FBC tiling check a bit

    Write the tiling check in a nicer form. No functional
    changes due to Y-tile scanout being a gen9+ feature.
    
    Reviewed-by: Jani Nikula <jani.nikula@intel.com>
    Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210702204603.596-2-ville.syrjala@linux.intel.com
    vsyrjala committed Aug 20, 2021
  6. drm/i915/fdi: move intel_fdi_link_freq() to intel_fdi.[ch]

    There's no performance reason to have it as static inline; move it out
    of intel_display_types.h to reduce clutter and dependency on i915_drv.h.
    
    Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/8c9bb23d92878deb1ecc75427ec6648bd3505816.1629281426.git.jani.nikula@intel.com
    jnikula committed Aug 20, 2021
  7. drm/i915/panel: move intel_panel_use_ssc() out of headers

    There's no performance reason to have it as static inline; move it out
    of intel_display_types.h to reduce clutter and dependency on i915_drv.h.
    
    Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/6f2c05005e4fa43a5572b02b3f41363725ffdb4f.1629281426.git.jani.nikula@intel.com
    jnikula committed Aug 20, 2021
  8. drm/i915/pm: use forward declaration to remove an include

    The fewer includes the better.
    
    Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/dcb426e4c6497f9ee3356c5f4fd4aaabd6295262.1629281426.git.jani.nikula@intel.com
    jnikula committed Aug 20, 2021
  9. drm/i915: intel_runtime_pm.h does not actually need intel_display.h

    Reduce includes.
    
    Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/289a6837379c4422395c3ac2b36a6c2a44110227.1629281426.git.jani.nikula@intel.com
    jnikula committed Aug 20, 2021
  10. drm/i915/irq: reduce inlines to reduce header dependencies

    Presumably if the compiler is smart, it does not generate an extra
    function call to the update functions that are now static.
    
    Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/594f628740717cda5ef407a26ea03129c22ddc12.1629281426.git.jani.nikula@intel.com
    jnikula committed Aug 20, 2021

Commits on Aug 18, 2021

  1. drm/i915/adl_p: Also disable underrun recovery with MSO

    One of the cases that the bspec lists for when underrun recovery must be
    disabled is "COG;" that note actually refers to eDP multi-segmented
    operation (MSO).  Let's ensure the this additional restriction is
    honored by the driver.
    
    Bspec: 50351
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Fixes: ba3b049 ("drm/i915/adl_p: Allow underrun recovery when possible")
    Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210816204112.2960624-1-matthew.d.roper@intel.com
    Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
    mattrope committed Aug 18, 2021
  2. drm/i915/dp: return proper DPRX link training result

    After DPRX link training, intel_dp_link_train_phy() did not
    return the training result properly. If link training failed,
    i915 driver would not run into link train fallback function.
    And no hotplug uevent would be received by user space application.
    
    Fixes: b30edfd ("drm/i915: Switch to LTTPR non-transparent mode link training")
    Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
    Cc: Imre Deak <imre.deak@intel.com>
    Cc: Jani Nikula <jani.nikula@linux.intel.com>
    Cc: Cooper Chiou <cooper.chiou@intel.com>
    Cc: William Tseng <william.tseng@intel.com>
    Signed-off-by: Lee Shawn C <shawn.c.lee@intel.com>
    Reviewed-by: Imre Deak <imre.deak@intel.com>
    Signed-off-by: Imre Deak <imre.deak@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210706152541.25021-1-shawn.c.lee@intel.com
    ShawnCLee authored and ideak committed Aug 18, 2021

Commits on Aug 16, 2021

  1. drm/i915: Nuke ORIGIN_GTT

    There is no users of it, so no need to keep handling for it.
    
    Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
    Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
    Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210815014346.373945-2-jose.souza@intel.com
    zehortigoza committed Aug 16, 2021
  2. drm/i915/display: Fix sel fetch plane offset calculation

    skl_calc_main_surface_offset() is used to calculate an aligned plane
    surface address considering the inner framebuffer x and y offset.
    It can not be used by selective fetch functions becase there is no
    PLANE_SEL_FETCH_SURF.
    So the PLANE_SEL_FETCH_OFFSET.y should only be PLANE_OFFSET.y +
    damaged_area_within_plane.y1.
    
    This fixes glitches seen in fbcon caused by typing something in
    the terminal.
    
    BSpec: 55229
    Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
    Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210815014346.373945-1-jose.souza@intel.com
    zehortigoza committed Aug 16, 2021
  3. drm/i915/dp: remove superfluous EXPORT_SYMBOL()

    The symbol isn't needed outside of i915.ko.
    
    Fixes: b30edfd ("drm/i915: Switch to LTTPR non-transparent mode link training")
    Fixes: 264613b ("drm/i915: Disable LTTPR support when the DPCD rev < 1.4")
    Cc: Imre Deak <imre.deak@intel.com>
    Reviewed-by: Imre Deak <imre.deak@intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210816071737.2917-1-jani.nikula@intel.com
    jnikula committed Aug 16, 2021
  4. Merge drm/drm-next into drm-intel-next

    Catch up with drm core changes.
    
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    jnikula committed Aug 16, 2021
  5. Merge tag 'drm-misc-next-2021-08-12' of git://anongit.freedesktop.org…

    …/drm/drm-misc into drm-next
    
    drm-misc-next for v5.15:
    
    UAPI Changes:
    
    Cross-subsystem Changes:
    - Add lockdep_assert(once) helpers.
    
    Core Changes:
    - Add lockdep assert to drm_is_current_master_locked.
    - Fix typos in dma-buf documentation.
    - Mark drm irq midlayer as legacy only.
    - Fix GPF in udmabuf_create.
    - Rename member to correct value in drm_edid.h
    
    Driver Changes:
    - Build fix to make nouveau build with NOUVEAU_BACKLIGHT.
    - Add MI101AIT-ICP1, LTTD800480070-L6WWH-RT panels.
    - Assorted fixes to bridge/it66121, anx7625.
    - Add custom crtc_state to simple helpers, and use it to
      convert pll handling in mgag200 to atomic.
    - Convert drivers to use offset-adjusted framebuffer bo mappings.
    - Assorted small fixes and fix for a use-after-free in vmwgfx.
    - Convert remaining callers of non-legacy drivers to use linux irqs directly.
    - Small cleanup in ingenic.
    - Small fixes to virtio and ti-sn65dsi86.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    
    From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/1cf2d7fc-402d-1852-574a-21cbbd2eaebf@linux.intel.com
    airlied committed Aug 16, 2021

Commits on Aug 13, 2021

  1. drm/i915/dg2: add SNPS PHY translations for UHBR link rates

    UHBR link rates use different tx equalization settings. Using this will
    require changes in the link training code too.
    
    Bspec: 53920
    Cc: Manasi Navare <manasi.d.navare@intel.com>
    Cc: Matt Roper <matthew.d.roper@intel.com>
    Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210813115151.19290-3-jani.nikula@intel.com
    jnikula committed Aug 13, 2021
  2. drm/i915/dg2: use existing mechanisms for SNPS PHY translations

    We use encoder->get_buf_trans() in many places, for example
    intel_ddi_dp_voltage_max(), and the hook was set to some old platform's
    function for DG2 SNPS PHY. Convert SNPS PHY to use the same translation
    mechanisms as everything else.
    
    Cc: Manasi Navare <manasi.d.navare@intel.com>
    Cc: Matt Roper <matthew.d.roper@intel.com>
    Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210813115151.19290-2-jani.nikula@intel.com
    jnikula committed Aug 13, 2021
  3. drm/i915/dp: pass crtc_state to intel_ddi_dp_level()

    Needed in the future.
    
    Cc: Manasi Navare <manasi.d.navare@intel.com>
    Cc: Matt Roper <matthew.d.roper@intel.com>
    Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210813115151.19290-1-jani.nikula@intel.com
    jnikula committed Aug 13, 2021
  4. drm/i915/mst: use intel_de_rmw() to simplify VC payload alloc set/clear

    Less is more, fewer lines to wonder about.
    
    Cc: Manasi Navare <manasi.d.navare@intel.com>
    Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210813115610.20010-1-jani.nikula@intel.com
    jnikula committed Aug 13, 2021
  5. drm/i915/edp: fix eDP MSO pipe sanity checks for ADL-P

    ADL-P supports stream splitter on pipe B in addition to pipe A. Update
    the sanity check in intel_ddi_mso_get_config() to reflect this, and
    remove the check in intel_ddi_mso_configure() as redundant with
    encoder->pipe_mask. Abstract the splitter pipe mask to a single point of
    truth while at it to avoid similar mistakes in the future.
    
    Fixes: 7bc188c ("drm/i915/adl_p: enable MSO on pipe B")
    Cc: Uma Shankar <uma.shankar@intel.com>
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Cc: Swati Sharma <swati2.sharma@intel.com>
    Reviewed-by: Swati Sharma <swati2.sharma@intel.com>
    Tested-by: Swati Sharma <swati2.sharma@intel.com>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210812132354.10885-1-jani.nikula@intel.com
    jnikula committed Aug 13, 2021
  6. fbdev/efifb: Release PCI device's runtime PM ref during FB destroy

    Atm the EFI FB platform driver gets a runtime PM reference for the
    associated GFX PCI device during probing the EFI FB platform device and
    releases it only when the platform device gets unbound.
    
    When fbcon switches to the FB provided by the PCI device's driver (for
    instance i915/drmfb), the EFI FB will get only unregistered without the
    EFI FB platform device getting unbound, keeping the runtime PM reference
    acquired during the platform device probing. This reference will prevent
    the PCI driver from runtime suspending the device.
    
    Fix this by releasing the RPM reference from the EFI FB's destroy hook,
    called when the FB gets unregistered.
    
    While at it assert that pm_runtime_get_sync() didn't fail.
    
    v2:
    - Move pm_runtime_get_sync() before register_framebuffer() to avoid its
      race wrt. efifb_destroy()->pm_runtime_put(). (Daniel)
    - Assert that pm_runtime_get_sync() didn't fail.
    - Clarify commit message wrt. platform/PCI device/driver and driver
      removal vs. device unbinding.
    
    Fixes: a6c0fd3 ("efifb: Ensure graphics device for efifb stays at PCI D0")
    Cc: Kai-Heng Feng <kai.heng.feng@canonical.com>
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> (v1)
    Acked-by: Alex Deucher <alexander.deucher@amd.com>
    Acked-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
    Signed-off-by: Imre Deak <imre.deak@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210809133146.2478382-1-imre.deak@intel.com
    ideak committed Aug 13, 2021

Commits on Aug 12, 2021

  1. drm/bridge: ti-sn65dsi86: Avoid creating multiple connectors

    If we created our own connector because the driver does not support the
    NO_CONNECTOR flag, we don't want the downstream bridge to *also* create
    a connector.  And if this driver did pass the NO_CONNECTOR flag (and we
    supported that mode) this would change nothing.
    
    Fixes: 4e5763f ("drm/bridge: ti-sn65dsi86: Wrap panel with panel-bridge")
    Reported-by: Stephen Boyd <swboyd@chromium.org>
    Signed-off-by: Rob Clark <robdclark@chromium.org>
    Tested-by: Stephen Boyd <swboyd@chromium.org>
    Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
    Reviewed-by: Douglas Anderson <dianders@chromium.org>
    Tested-by: Douglas Anderson <dianders@chromium.org>
    Signed-off-by: Douglas Anderson <dianders@chromium.org>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210811235253.924867-2-robdclark@gmail.com
    Rob Clark authored and dianders committed Aug 12, 2021
  2. drm/edid: fix edid field name

    Byte 26 in a edid struct is supposed to be "Blue and white
    least-significant 2 bits", not "black and white". Rename the field
    accordingly. This field is not used anywhere, so just renaming it here
    for correctness.
    
    Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
    Reviewed-by: Simon Ser <contact@emersion.fr>
    Signed-off-by: Simon Ser <contact@emersion.fr>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210811205818.156100-1-lucas.demarchi@intel.com
    lucasdemarchi authored and emersion committed Aug 12, 2021
  3. drm/virtio: set non-cross device blob uuid_state

    Blob resources without the cross device flag don't have a uuid to share
    with other virtio devices. When exporting such blobs, set uuid_state to
    STATE_ERR so that virtgpu_virtio_get_uuid doesn't hang.
    
    Signed-off-by: David Stevens <stevensd@chromium.org>
    Link: http://patchwork.freedesktop.org/patch/msgid/20210811040401.1264234-1-stevensd@chromium.org
    Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
    David Stevens authored and kraxel committed Aug 12, 2021
  4. drm/i915: Tweaked Wa_14010685332 for all PCHs

    dispcnlunit1_cp_xosc_clkreq clock observed to be active on TGL-H platform
    despite Wa_14010685332 original sequence,
    thus blocks entry to deeper s0ix state.
    
    The Tweaked Wa_14010685332 sequence fixes this issue, therefore use tweaked
    Wa_14010685332 sequence for every PCH since PCH_CNP.
    
    v2:
    - removed RKL from comment and simplified condition. [Rodrigo]
    
    Fixes: b896898 ("drm/i915: Tweaked Wa_14010685332 for PCHs used on gen11 platforms")
    Cc: Matt Roper <matthew.d.roper@intel.com>
    Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Cc: Imre Deak <imre.deak@intel.com>
    Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
    Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210810113112.31739-2-anshuman.gupta@intel.com
    anshuma1 committed Aug 12, 2021
  5. udmabuf: fix general protection fault in udmabuf_create

    Syzbot reported general protection fault in udmabuf_create. The problem
    was in wrong error handling.
    
    In commit 16c243e ("udmabuf: Add support for mapping hugepages (v4)")
    shmem_read_mapping_page() call was replaced with find_get_page_flags(),
    but find_get_page_flags() returns NULL on failure instead PTR_ERR().
    
    Wrong error checking was causing GPF in get_page(), since passed page
    was equal to NULL. Fix it by changing if (IS_ER(!hpage)) to if (!hpage)
    
    Reported-by: syzbot+e9cd3122a37c5d6c51e8@syzkaller.appspotmail.com
    Fixes: 16c243e ("udmabuf: Add support for mapping hugepages (v4)")
    Signed-off-by: Pavel Skripkin <paskripkin@gmail.com>
    Link: http://patchwork.freedesktop.org/patch/msgid/20210811175052.21254-1-paskripkin@gmail.com
    Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
    pskrgag authored and kraxel committed Aug 12, 2021
  6. Merge tag 'drm-intel-next-2021-08-10-1' of git://anongit.freedesktop.…

    …org/drm/drm-intel into drm-next
    
    drm/i915 changes for v5.15:
    
    Features:
    - Basic DG2 platform enabling (Matt, Animesh, Gwan-gyeong, José)
    - Add PSF GV point support for display bandwidth calculation (Stan)
    - Add platform release id version support (Lucas)
    - Add support for forcing DSC BPP for testing (Vandita, Patnana)
    
    Refactoring and cleanups:
    - Remove CNL support completely (Lucas)
    - Revid/stepping cleanup (Matt, Anusha)
    - Make display stepping check upper bounds exclusive (Matt)
    - Remove old GEN macros (Lucas)
    - Refactor DG1 interrupt handler (Paulo)
    - Refactor DMC stepping info (Anusha)
    
    Fixes:
    - Fix XELPD color capability reporting; it's not yet enabled (Uma)
    - Fix DG1 memory bandwidth computation (Clint)
    - Fix mux on certain HP laptops (Kai-Heng)
    - Various display workarounds (José, Matt, Imre)
    - Fix error state dumps wrt SFC_DONE (Matt)
    - Fix DG1 and XEPLD audio power domains (Anshuman)
    - Fix ADL-P and ADL-S ddi buf translation tables (Matt)
    - Fix DP/HDMI modeset sequences causing issues on ADL-P (José)
    - PSR2 fixes (José)
    - Fix DP MST modeset with FEC on TGL+
    - Fix MBUS DBOX A credits on ADL-P (José)
    - Fix DP PHY test training set programming (Khaled)
    - Fix dgfx pcode uncore init done wait (Badal)
    - Fix DSC disable fuse check on GLK (Lucas)
    - Fix shared dpll mismatch for bigjoiner secondary pipe (Manasi)
    - Fix ADL-P underrun recovery (Matt)
    - Fix permissions on FEC support debugfs file (Vandita)
    
    Misc:
    - Backmerge drm-next (Rodrigo)
    - Bump RKL and TGL DMC firmware version (Anusha)
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    
    # Conflicts:
    #	drivers/gpu/drm/i915/i915_drv.h
    #	drivers/gpu/drm/i915/intel_device_info.h
    From: Jani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/87a6lpo1a9.fsf@intel.com
    airlied committed Aug 12, 2021
  7. Merge tag 'drm-xilinx-dpsub-20210809' of git://linuxtv.org/pinchartl/…

    …media into drm-next
    
    - Miscellaneous fixes in ZynqMP DPSUB driver
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    
    From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/YRCSRZZV1HZYPvaG@pendragon.ideasonboard.com
    airlied committed Aug 12, 2021

Commits on Aug 11, 2021

  1. Merge tag 'drm-intel-gt-next-2021-08-06-1' of ssh://git.freedesktop.o…

    …rg/git/drm/drm-intel into drm-next
    
    UAPI Changes:
    
    - Add I915_MMAP_OFFSET_FIXED
    
      On devices with local memory `I915_MMAP_OFFSET_FIXED` is the only valid
      type. On devices without local memory, this caching mode is invalid.
    
      As caching mode when specifying `I915_MMAP_OFFSET_FIXED`, WC or WB will
      be used, depending on the object placement on creation. WB will be used
      when the object can only exist in system memory, WC otherwise.
    
      Userspace: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11888
    
    - Reinstate the mmap ioctl for (already released) integrated Gen12 platforms
    
      Rationale: Otherwise media driver breaks eg. for ADL-P. Long term goal is
      still to sunset the IOCTL even for integrated and require using mmap_offset.
    
    - Reject caching/set_domain IOCTLs on discrete
    
      Expected to become immutable property of the BO
    
    - Disallow changing context parameters after first use on Gen12 and earlier
    - Require setting context parameters at creation on platforms after Gen12
    
      Rationale (for both): Allow less dynamic changes to the context to simplify
      the implementation and avoid user shooting theirselves in the foot.
    
    - Drop I915_CONTEXT_PARAM_RINGSIZE
    
      Userspace PR for compute-driver has not been merged
    
    - Drop I915_CONTEXT_PARAM_NO_ZEROMAP
    
      Userspace PR for libdrm / Beignet was never landed
    
    - Drop CONTEXT_CLONE API
    
      Userspace PR for Mesa was never landed
    
    - Drop getparam support for I915_CONTEXT_PARAM_ENGINES
    
      Only existed for symmetry wrt. setparam, never used.
    
    - Disallow bonding of virtual engines
    
      Drop the prep work, no hardware has been released needing it.
    
    - (Implicit) Disable gpu relocations
    
      Media userspace was the last userspace to still use them. They
      have converted so performance can be regained with an update.
    
    Core Changes:
    
    - Merge topic branch 'topic/i915-ttm-2021-06-11' (from Maarten)
    - Merge topic branch 'topic/revid_steppings' (from Matt R)
    - Merge topic branch 'topic/xehp-dg2-definitions-2021-07-21' (from Matt R)
    - Backmerges drm-next (Rodrigo)
    
    Driver Changes:
    
    - Initial workarounds for ADL-P (Clint)
    - Preliminary code for XeHP/DG2 (Stuart, Umesh, Matt R, Prathap, Ram,
      Venkata, Akeem, Tvrtko, John, Lucas)
    - Fix ADL-S DMA mask size to 39 bits (Tejas)
    - Remove code for CNL (Lucas)
    - Add ADL-P GuC/HuC firmwares (John)
    - Update HuC to 7.9.3 for TGL/ADL-S/RKL (John)
    - Fix -EDEADLK handling regression (Ville)
    - Implement Wa_1508744258 for DG1 and Gen12 iGFX (Jose)
    - Extend Wa_1406941453 to ADL-S (Jose)
    - Drop unnecessary workarounds per stepping for SKL/BXT/ICL (Matt R)
    - Use fuse info to enable SFC on Gen12 (Venkata)
    - Unconditionally flush the pages on acquire on EHL/JSL (Matt A)
    - Probe existence of backing struct pages upon userptr creation (Chris, Matt A)
    
    - Add an intermediate GEM proto-context to delay real context creation (Jason)
    - Implement SINGLE_TIMELINE with a syncobj (Jason)
    - Set the watchdog timeout directly in intel_context_set_gem (Jason)
    - Disallow userspace from creating contexts with too many engines (Jason)
    - Revert "drm/i915/gem: Asynchronous cmdparser" (Jason)
    - Revert "drm/i915: Propagate errors on awaiting already signaled fences" (Jason)
    - Revert "drm/i915: Skip over MI_NOOP when parsing" (Jason)
    - Revert "drm/i915: Shrink the GEM kmem_caches upon idling" (Daniel)
    - Always let TTM handle object migration (Jason)
    - Correct the locking and pin pattern for dma-buf (Thomas H, Michael R, Jason)
    - Migrate to system at dma-buf attach time (Thomas, Michael R)
    
    - MAJOR refactoring of the GuC backend code to allow for enabling on Gen11+
      (Matt B, John, Michal Wa., Fernando, Daniele, Vinay)
    - Update GuC firmware interface to v62.0.0 (John, Michal Wa., Matt B)
    - Add GuCRC feature to hand over the control of HW RC6 to the GuC on
      Gen12+ when GuC submission is enabled (Vinay, Sujaritha, Daniele,
      John, Tvrtko)
    - Use the correct IRQ during resume and eliminate DRM IRQ midlayer (Thomas Z)
    - Add pipelined page migration and clearing (Chris, Thomas H)
    - Use TTM for system memory on discrete (Thomas H)
    - Implement object migration for display vs. dma-buf (Thomas H)
    - Perform execbuffer object locking as a separate step (Thomas H)
    - Add support for explicit L3BANK steering (Matt, Daniele)
    - Remove duplicated call to ops->pread (Daniel)
    - Fix pagefault disabling in the first execbuf slowpath (Daniel)
    - Simplify userptr locking (Thomas H)
    - Improvements to the GuC CTB code (Matt B, John)
    - Make GT workaround upper bounds exclusive (Matt R)
    - Check for nomodeset in i915_init() first (Daniel)
    - Delete now unused gpu reloc code (Daniel)
    
    - Document RFC plans for GuC submission, DRM scheduler and new parallel
      submit uAPI (Matt B)
    - Reintroduce buddy allocator this time with TTM (Matt A)
    - Support forcing page size with LMEM (Matt A)
    - Add i915_sched_engine to abstract a submission queue between backends (Matt B)
    - Use accelerated move in TTM (Ram)
    - Fix memory leaks from TTM backend (Thomas H)
    - Introduce WW transaction helper (Thomas H)
    - Improve debug Kconfig texts a bit (Daniel)
    - Unify user object creation code (Jason)
    - Use a table for i915_init/exit (Jason)
    - Move slabs to module init/exit (Daniel)
    - Remove now unused i915_globals (Daniel)
    - Extract i915_module.c (Daniel)
    
    - Consistently use adl-p/adl-s in WA comments (Jose)
    - Finish INTEL_GEN and friends conversion (Lucas)
    - Correct variable/function namings (Lucas)
    - Code checker fixes (Wan, Matt A)
    - Tracepoint improvements (Matt B)
    - Kerneldoc improvements (Tvrtko, Jason, Matt A, Maarten)
    - Selftest improvements (Chris, Matt A, Tejas, Thomas H, John, Matt B,
      Rahul, Vinay)
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    
    From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/YQ0JmYiXhGskNcrI@jlahtine-mobl.ger.corp.intel.com
    airlied committed Aug 11, 2021
  2. drm/i915: Only access SFC_DONE when media domain is not fused off

    The SFC_DONE register lives within the corresponding VD0/VD2/VD4/VD6
    forcewake domain and is not accessible if the vdbox in that domain is
    fused off and the forcewake is not initialized.
    
    This mistake went unnoticed because until recently we were using the
    wrong register offset for the SFC_DONE register; once the register
    offset was corrected, we started hitting errors like
    
      <4> [544.989065] i915 0000:cc:00.0: Uninitialized forcewake domain(s) 0x80 accessed at 0x1ce000
    
    on parts with fused-off vdbox engines.
    
    Fixes: e50dbdb ("drm/i915/tgl: Add SFC instdone to error state")
    Fixes: 82929a2 ("drm/i915: Correct SFC_DONE register offset")
    Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
    Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
    Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210806174130.1058960-1-matthew.d.roper@intel.com
    Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
    mattrope committed Aug 11, 2021
  3. drm/i915/dg2: Configure PCON in DP pre-enable path

    Add the functions to configure HDMI2.1 pcon for DG2, before DP link
    training.
    
    Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
    Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
    Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210805163647.801064-10-matthew.d.roper@intel.com
    aknautiyal authored and mattrope committed Aug 11, 2021
Older