[PATCH v13 00/13] Add PSR support for eDP

Dmitry Baryshkov dmitry.baryshkov at linaro.org
Wed Mar 1 20:34:36 UTC 2023


On 01/03/2023 21:06, Doug Anderson wrote:
> Hi,
> 
> On Sun, Feb 12, 2023 at 8:29 AM Vinod Polimera
> <quic_vpolimer at quicinc.com> wrote:
>>
>> Changes in v2:
>>    - Use dp bridge to set psr entry/exit instead of dpu_enocder.
>>    - Don't modify whitespaces.
>>    - Set self refresh aware from atomic_check.
>>    - Set self refresh aware only if psr is supported.
>>    - Provide a stub for msm_dp_display_set_psr.
>>    - Move dp functions to bridge code.
>>
>> Changes in v3:
>>    - Change callback names to reflect atomic interfaces.
>>    - Move bridge callback change to separate patch as suggested by Dmitry.
>>    - Remove psr function declaration from msm_drv.h.
>>    - Set self_refresh_aware flag only if psr is supported.
>>    - Modify the variable names to simpler form.
>>    - Define bit fields for PSR settings.
>>    - Add comments explaining the steps to enter/exit psr.
>>    - Change DRM_INFO to drm_dbg_db.
>>
>> Changes in v4:
>>    - Move the get crtc functions to drm_atomic.
>>    - Add atomic functions for DP bridge too.
>>    - Add ternary operator to choose eDP or DP ops.
>>    - Return true/false instead of 1/0.
>>    - mode_valid missing in the eDP bridge ops.
>>    - Move the functions to get crtc into drm_atomic.c.
>>    - Fix compilation issues.
>>    - Remove dpu_assign_crtc and get crtc from drm_enc instead of dpu_enc.
>>    - Check for crtc state enable while reserving resources.
>>
>> Changes in v5:
>>    - Move the mode_valid changes into a different patch.
>>    - Complete psr_op_comp only when isr is set.
>>    - Move the DP atomic callback changes to a different patch.
>>    - Get crtc from drm connector state crtc.
>>    - Move to separate patch for check for crtc state enable while
>> reserving resources.
>>
>> Changes in v6:
>>    - Remove crtc from dpu_encoder_virt struct.
>>    - fix crtc check during vblank toggle crtc.
>>    - Misc changes.
>>
>> Changes in v7:
>>    - Add fix for underrun issue on kasan build.
>>
>> Changes in v8:
>>    - Drop the enc spinlock as it won't serve any purpose in
>> protetcing conn state.(Dmitry/Doug)
>>
>> Changes in v9:
>>    - Update commit message and fix alignment using spaces.(Marijn)
>>    - Misc changes.(Marijn)
>>
>> Changes in v10:
>>    - Get crtc cached in dpu_enc during obj init.(Dmitry)
>>
>> Changes in v11:
>>    - Remove crtc cached in dpu_enc during obj init.
>>    - Update dpu_enc crtc state on crtc enable/disable during self refresh.
>>
>> Changes in v12:
>>    - Update sc7180 intf mask to get intf timing gen status
>> based on DPU_INTF_STATUS_SUPPORTED bit.(Dmitry)
>>    - Remove "clear active interface in the datapath cleanup" change
>> as it is already included.
>>
>> Changes in v13:
>>    - Move core changes to top of the series.(Dmitry)
>>    - Drop self refresh aware disable change after psr entry.(Dmitry)
>>
>> Vinod Polimera (13):
>>    drm: add helper functions to retrieve old and new crtc
>>    drm/bridge: use atomic enable/disable callbacks for panel bridge
>>    drm/bridge: add psr support for panel bridge callbacks
>>    drm/msm/disp/dpu: check for crtc enable rather than crtc active to
>>      release shared resources
>>    drm/msm/disp/dpu: get timing engine status from intf status register
>>    drm/msm/disp/dpu: wait for extra vsync till timing engine status is
>>      disabled
>>    drm/msm/disp/dpu: reset the datapath after timing engine disable
>>    drm/msm/dp: use atomic callbacks for DP bridge ops
>>    drm/msm/dp: Add basic PSR support for eDP
>>    drm/msm/dp: use the eDP bridge ops to validate eDP modes
>>    drm/msm/disp/dpu: use atomic enable/disable callbacks for encoder
>>      functions
>>    drm/msm/disp/dpu: add PSR support for eDP interface in dpu driver
>>    drm/msm/disp/dpu: update dpu_enc crtc state on crtc enable/disable
>>      during self refresh
> 
> I'm curious what the plan is for landing this series. I could land the
> first two in drm-misc if you want, but I'm a lowly committer and so I
> couldn't make an immutable branch for you nor can I officially Ack the
> changes to land in your branch. That means you'd be blocked for an
> extra version. Do you already have a plan? If not, then maybe we need
> to get in touch with one of the maintainers [1] of drm-misc? That's
> documented [2] to be in their set of responsibilities. 
> 
> [1] https://drm.pages.freedesktop.org/maintainer-tools/repositories.html#drm-misc-repository
> [2] https://drm.pages.freedesktop.org/maintainer-tools/maintainer-drm-misc.html#maintainer-s-duties

My plan was to ask Thomas or Daniel to make an immutable branch. I just 
didn't want to ping them before rc1.

> 
> -Doug

-- 
With best wishes
Dmitry



More information about the dri-devel mailing list