Skip to content
Permalink
Marek-Vasut/dr…
Switch branches/tags

Commits on Jan 14, 2022

  1. drm: bridge: icn6211: Read and validate chip IDs before configuration

    Read out the Vendor/Chip/Version ID registers from the chip before
    performing any configuration, and validate that the registers have
    correct values. This is mostly a simple test whether DSI register
    access does work, since that tends to be broken on various bridges.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  2. drm: bridge: icn6211: Rename ICN6211_DSI to chipone_writeb

    Rename function ICN6211_DSI() to chipone_writeb() to keep all function
    names lower-case. No functional change.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  3. drm: bridge: icn6211: Add I2C configuration support

    The ICN6211 chip starts in I2C configuration mode after cold boot.
    Implement support for configuring the chip via I2C in addition to
    the current DSI LP command mode configuration support. The later
    seems to be available only on chips which have additional MCU on
    the panel/bridge board which preconfigures the ICN6211, while the
    I2C configuration mode added by this patch does not require any
    such MCU.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  4. drm: bridge: icn6211: Set SYS_CTRL_1 to value used in examples

    Both example code [1], [2] as well as one provided by custom panel vendor
    set register SYS_CTRL_1 to 0x88. What exactly does the value mean is unknown
    due to unavailable datasheet. Align this register value with example code.
    
    [1] https://github.com/rockchip-linux/kernel/blob/develop-4.19/drivers/gpu/drm/bridge/icn6211.c
    [2] https://github.com/tdjastrzebski/ICN6211-Configurator
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  5. drm: bridge: icn6211: Disable DPI color swap

    The chip is capable of swapping DPI RGB channels. The driver currently
    does not implement support for this functionality. Write the MIPI_PN_SWAP
    register to 0 to assure the color swap is disabled.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  6. drm: bridge: icn6211: Use DSI burst mode without EoT and with LP comm…

    …and mode
    
    The DSI burst mode is more energy efficient than the DSI sync pulse mode,
    make use of the burst mode since the chip supports it as well. Disable the
    generation of EoT packet, the chip ignores it, so no point in emitting it.
    Enable transmission of data in LP mode, otherwise register read via DSI
    does not work with this chip.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  7. drm: bridge: icn6211: Add generic DSI-to-DPI PLL configuration

    The chip contains fractional PLL, however the driver currently hard-codes
    one specific PLL setting. Implement generic PLL parameter calculation code,
    so any DPI panel with arbitrary pixel clock can be attached to this bridge.
    
    The datasheet for this bridge is not available, the PLL behavior has been
    inferred from [1] and [2] and by analyzing the DPI pixel clock with scope.
    The PLL limits might be wrong, but at least the calculated values match all
    the example code available. This is better than one hard-coded pixel clock
    value anyway.
    
    [1] https://github.com/rockchip-linux/kernel/blob/develop-4.19/drivers/gpu/drm/bridge/icn6211.c
    [2] https://github.com/tdjastrzebski/ICN6211-Configurator
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  8. drm: bridge: icn6211: Add DSI lane count DT property parsing

    The driver currently hard-codes DSI lane count to two, however the chip
    is capable of operating in 1..4 DSI lanes mode. Parse 'data-lanes' DT
    property and program the result into DSI_CTRL register.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  9. drm: bridge: icn6211: Add HS/VS/DE polarity handling

    The driver currently hard-codes HS/VS polarity to active-low and DE to
    active-high, which is not correct for a lot of supported DPI panels.
    Add the missing mode flag handling for HS/VS/DE polarity.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  10. drm: bridge: icn6211: Retrieve the display mode from the state

    Retrieve display mode structure from panel or atomic state in
    bridge_to_mode(). This completes the transition to the atomic
    API.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  11. drm: bridge: icn6211: Implement atomic_get_input_bus_fmts

    Implement .atomic_get_input_bus_fmts callback, which sets up the
    input (DSI-end) format, and that format can then be used in pipeline
    format negotiation between the DSI-end of this bridge and the other
    component closer to the scanout engine.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  12. drm: bridge: icn6211: Switch to atomic operations

    Use the atomic version of the enable/disable operations to continue
    the transition to the atomic API, started with the introduction of
    .atomic_get_input_bus_fmts(). This will be needed to access the mode
    from the atomic state.
    
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  13. drm: bridge: icn6211: Fix HFP_HSW_HBP_HI and HFP_MIN handling

    The HFP_HSW_HBP_HI register must be programmed with 2 LSbits of each
    Horizontal Front Porch/Sync/Back Porch. Currently the driver programs
    this register to 0, which breaks displays with either value above 255.
    
    The HFP_MIN register must be set to the same value as HFP_LI, otherwise
    there is visible image distortion, usually in the form of missing lines
    at the bottom of the panel.
    
    Fix this by correctly programming the HFP_HSW_HBP_HI and HFP_MIN registers.
    
    Fixes: ce517f1 ("drm: bridge: Add Chipone ICN6211 MIPI-DSI to RGB bridge")
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022
  14. drm: bridge: icn6211: Fix register layout

    The chip register layout has nothing to do with MIPI DCS, the registers
    incorrectly marked as MIPI DCS in the driver are regular chip registers
    often with completely different function.
    
    Fill in the actual register names and bits from [1] and [2] and add the
    entire register layout, since the documentation for this chip is hard to
    come by.
    
    [1] https://github.com/rockchip-linux/kernel/blob/develop-4.19/drivers/gpu/drm/bridge/icn6211.c
    [2] https://github.com/tdjastrzebski/ICN6211-Configurator
    
    Fixes: ce517f1 ("drm: bridge: Add Chipone ICN6211 MIPI-DSI to RGB bridge")
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Jagan Teki <jagan@amarulasolutions.com>
    Cc: Robert Foss <robert.foss@linaro.org>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    To: dri-devel@lists.freedesktop.org
    Marek Vasut authored and intel-lab-lkp committed Jan 14, 2022

Commits on Dec 31, 2021

  1. Merge tag 'amd-drm-next-5.17-2021-12-30' of ssh://gitlab.freedesktop.…

    …org/agd5f/linux into drm-next
    
    amd-drm-next-5.17-2021-12-30:
    
    amdgpu:
    - Suspend/resume fixes
    - Fence fix
    - Misc code cleanups
    - IP discovery fixes
    - SRIOV fixes
    - RAS fixes
    - GMC 8 VRAM detection fix
    - FRU fixes for Aldebaran
    - Display fixes
    
    amdkfd:
    - SVM fixes
    - IP discovery fixes
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    From: Alex Deucher <alexander.deucher@amd.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20211230141032.613596-1-alexander.deucher@amd.com
    airlied committed Dec 31, 2021

Commits on Dec 30, 2021

  1. drm/amdgpu: no DC support for headless chips

    Chips with no display hardware should return false for
    DC support.
    
    v2: drop Arcturus and Aldebaran
    
    Fixes: f7f12b2 ("drm/amdgpu: default to true in amdgpu_device_asic_has_dc_support")
    Reviewed-by: Evan Quan <evan.quan@amd.com>
    Reviewed-by: Guchun Chen <guchun.chen@amd.com>
    Reported-by: Tareque Md.Hanif <tarequemd.hanif@yahoo.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Alex Deucher committed Dec 30, 2021
  2. drm/amd/display: fix dereference before NULL check

    The "plane_state" pointer was access before checking if it was NULL.
    
    Avoid a possible NULL pointer dereference by accessing the plane
    address after the check.
    
    Addresses-Coverity-ID: 1493892 ("Dereference before null check")
    Fixes: 3f68c01 ("drm/amd/display: add cyan_skillfish display support")
    Signed-off-by: José Expósito <jose.exposito89@gmail.com>
    Reviewed-by: Harry Wentland <harry.wentland@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    JoseExposito authored and Alex Deucher committed Dec 30, 2021
  3. drm/amdgpu: always reset the asic in suspend (v2)

    If the platform suspend happens to fail and the power rail
    is not turned off, the GPU will be in an unknown state on
    resume, so reset the asic so that it will be in a known
    good state on resume even if the platform suspend failed.
    
    v2: handle s0ix
    
    Acked-by: Luben Tuikov <luben.tuikov@amd.com>
    Acked-by: Evan Quan <evan.quan@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Alex Deucher committed Dec 30, 2021
  4. drm/amdgpu: put SMU into proper state on runpm suspending for BOCO ca…

    …pable platform
    
    By setting mp1_state as PP_MP1_STATE_UNLOAD, MP1 will do some proper cleanups and
    put itself into a state ready for PNP. That can workaround some random resuming
    failure observed on BOCO capable platforms.
    
    Signed-off-by: Evan Quan <evan.quan@amd.com>
    Acked-by: Alex Deucher <alexander.deucher@amd.com>
    Reviewed-by: Guchun Chen <guchun.chen@amd.com>
    Reviewed-by: Lijo Lazar <lijo.lazar@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Evan Quan authored and Alex Deucher committed Dec 30, 2021
  5. drm/amd/display: Fix the uninitialized variable in enable_stream_feat…

    …ures()
    
    In function enable_stream_features(), the variable "old_downspread.raw"
    could be uninitialized if core_link_read_dpcd() fails, however, it is
    used in the later if statement, and further, core_link_write_dpcd()
    may write random value, which is potentially unsafe.
    
    Fixes: 6016cd9 ("drm/amd/display: add helper for enabling mst stream features")
    Cc: stable@vger.kernel.org
    Signed-off-by: Yizhuo Zhai <yzhai003@ucr.edu>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Yizhuo Zhai authored and Alex Deucher committed Dec 30, 2021
  6. drm/amdgpu: fix runpm documentation

    It's not only supported by HG/PX laptops.  It's supported
    by all dGPUs which supports BOCO/BACO functionality (runtime
    D3).
    
    BOCO - Bus Off, Chip Off.  The entire chip is powered off.
           This is controlled by ACPI.
    BACO - Bus Active, Chip Off.  The chip still shows up
           on the PCI bus, but the device itself is powered
           down.
    
    v2: fix missed HG/PX reference
    
    Reviewed-by: Evan Quan <evan.quan@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Alex Deucher committed Dec 30, 2021
  7. amdgpu/pm: Make sysfs pm attributes as read-only for VFs

    == Description ==
    Setting values of pm attributes through sysfs
    should not be allowed in SRIOV mode.
    These calls will not be processed by FW anyway,
    but error handling on sysfs level should be improved.
    
    == Changes ==
    This patch prohibits performing of all set commands
    in SRIOV mode on sysfs level.
    It offers better error handling as calls that are
    not allowed will not be propagated further.
    
    == Test ==
    Writing to any sysfs file in passthrough mode will succeed.
    Writing to any sysfs file in ONEVF mode will yield error:
    "calling process does not have sufficient permission to execute a command".
    
    Signed-off-by: Marina Nikolic <Marina.Nikolic@amd.com>
    Acked-by: Evan Quan <evan.quan@amd.com>
    Reviewed-by: Lijo Lazar <lijo.lazar@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Marina Nikolic authored and Alex Deucher committed Dec 30, 2021
  8. drm/amdgpu: save error count in RAS poison handler

    Otherwise the RAS error count couldn't be queried from sysfs.
    
    Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
    Reviewed-by: Stanley.Yang <Stanley.Yang@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Tao Zhou authored and Alex Deucher committed Dec 30, 2021
  9. drm/amdgpu: drop redundant semicolon

    A minor typo.
    
    Signed-off-by: Guchun Chen <guchun.chen@amd.com>
    Reviewed-by: Evan Quan <evan.quan@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Guchun Chen authored and Alex Deucher committed Dec 30, 2021
  10. drm/amd/display: get and restore link res map

    [why]
    When reboot the link res map should be persisted.  So during boot up,
    driver will look at the map to determine which link should take priority
    to use certain link res.  This is to ensure that link res remains
    unshuffled after a reboot.
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Jun Lei <Jun.Lei@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Wenjing Liu authored and Alex Deucher committed Dec 30, 2021
  11. drm/amd/display: support dynamic HPO DP link encoder allocation

    [why]
    When there are more DP2.0 RXs connected than the number HPO DP link
    encoders we have, we need to dynamically allocate HPO DP link encoder to
    the port that needs it.
    
    [how]
    Only allocate HPO DP link encoder when it is needed.
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Jun Lei <Jun.Lei@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Wenjing Liu authored and Alex Deucher committed Dec 30, 2021
  12. drm/amd/display: access hpo dp link encoder only through link resource

    [why]
    Update all accesses to use hpo dp link encoder through link resource
    only.
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Jun Lei <Jun.Lei@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Wenjing Liu authored and Alex Deucher committed Dec 30, 2021
  13. drm/amd/display: populate link res in both detection and validation

    [why]
    This commit is to populate link res in preparation of the next commit.
    The next commit will replace all existing code to use link res instead
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Jun Lei <Jun.Lei@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Wenjing Liu authored and Alex Deucher committed Dec 30, 2021
  14. drm/amd/display: define link res and make it accessible to all link i…

    …nterfaces
    
    [why]
    There will be a series of re-arch changes in Link Resource Management.
    They are more and more muxable link resource objects and the resource is
    insufficient for a one to one allocation to all links created.
    Therefore a link resource sharing logic is required to determine which
    link should use certain link resource.
    
    This commit is the first one in this series that starts by defining a
    link resource struct, this struct will be available to all interfaces
    that need to perform link programming sequence.
    
    In later commits, we will granduately decouple link resource objects out
    of dc link. So instead of access a link resource from dc link. Current
    link's resource can be accessible through pipe_ctx->link_res during
    commit, or by calling  dc_link_get_cur_link_res function with current
    link passed in after commit.
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Jun Lei <Jun.Lei@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Wenjing Liu authored and Alex Deucher committed Dec 30, 2021
  15. drm/amd/display: 3.2.167

    This version brings along the following:
    
    - Fixes and improvements in the LTTPR code
    - Improve z-state
    - Fix null pointer check
    - Improve communication with s0i2
    - Update multiple-display split policy
    - Add missing registers
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Aric Cyr <aric.cyr@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    AMD-aric authored and Alex Deucher committed Dec 30, 2021
  16. drm/amd/display: [FW Promotion] Release 0.0.98

    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Anthony Koo <Anthony.Koo@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Anthony Koo authored and Alex Deucher committed Dec 30, 2021
  17. drm/amd/display: Undo ODM combine

    Undo ODM Combine regression causing causing pipe allocation issues.
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Martin Leung <Martin.Leung@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Martin Leung authored and Alex Deucher committed Dec 30, 2021
  18. drm/amd/display: Add reg defs for DCN303

    [WHY]
    These registers are currently missing from the DCN303 header files
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: George Shen <George.Shen@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Wesley Chalmers <Wesley.Chalmers@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Wesley Chalmers authored and Alex Deucher committed Dec 30, 2021
  19. drm/amd/display: Changed pipe split policy to allow for multi-display…

    … pipe split
    
    [WHY]
    Current implementation of pipe split policy prevents pipe split with
    multiple displays connected, which caused the MCLK speed to be stuck at
    max
    
    [HOW]
    Changed the pipe split policies so that pipe split is allowed for
    multi-display configurations
    
    Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1522
    Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1709
    Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1655
    Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1403
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Angus Wang <angus.wang@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Angus Wang authored and Alex Deucher committed Dec 30, 2021
  20. drm/amd/display: Set optimize_pwr_state for DCN31

    [Why]
    We'll exit optimized power state to do link detection but we won't enter
    back into the optimized power state.
    
    This could potentially block s2idle entry depending on the sequencing,
    but it also means we're losing some power during the transition period.
    
    [How]
    Hook up the handler like DCN21. It was also missed like the
    exit_optimized_pwr_state callback.
    
    Fixes: 64b1d0e ("drm/amd/display: Add DCN3.1 HWSEQ")
    
    Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
    Reviewed-by: Eric Yang <Eric.Yang2@amd.com>
    Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Nicholas Kazlauskas authored and Alex Deucher committed Dec 30, 2021
Older