Soliciting DRM feedback on latest DC rework

Daniel Vetter daniel at ffwll.ch
Wed May 3 15:02:36 UTC 2017


On Wed, May 03, 2017 at 04:26:51PM +0200, Christian K├Ânig wrote:
> Hi Harry,
> 
> while this looks more and more like it could work something which would
> really help would be to have a set of patches squashed together and rebased
> on drm-next.
> 
> The dc-drm-next-atomic-wip looks like a start, but we need more something
> like:
> drm/amdgpu: add base DC components
> drm/amdgpu: add DCE8 support for DC
> drm/amdgpu: add DCE9 support for DC
> drm/amdgpu: add DCE10 support for DC
> ...
> drm/amdgpu: enable DC globally
> drm/amdgpu: remove old display infrastructure
> 
> Otherwise I fear that people will just be lost in the mass amount of patches
> we have in the branch.

I think for a quick first feedback round simply something that's based on
top of recent drm-next is good enough, since I'll probably only look at
the aggregate diff anyway (or resulting tree).
-Daniel

> 
> Regards,
> Christian.
> 
> Am 03.05.2017 um 16:13 schrieb Harry Wentland:
> > Hi all,
> > 
> > Over the last few months we (mostly Andrey and myself) have taken and
> > addressed some of the feedback received from December's DC RFC. A lot of
> > our work so far centers around atomic. We were able to take a whole
> > bunch of the areas where we rolled our own solution and use DRM atomic
> > helpers instead.
> > 
> > You can find our most recent drm-next based tree at
> > https://cgit.freedesktop.org/~hwentland/linux/log/?h=dc-drm-next-atomic-wip
> > 
> > An outline of the changes with commit hashes from that tree are listed
> > below. They aren't necessarily in order but are grouped by
> > functionality.
> > 
> > I would like to solicit input on the changes and the current state of
> > amd/display in general.
> > 
> > I'm on IRC every weekday from 9-5 eastern time, sometimes at other
> > hours. Feel free to ask questions, discuss, leave comments. Let me know
> > if there's anything else I can do to facilitate review.
> > 
> > We know there's more work to be done but would much rather prioritize
> > that work based on community feedback than merely our own impressions.
> > 
> > We haven't finished plumbing drm types to the dc types yet, and there
> > are still a bunch of other things in progress.  We are not looking to
> > re-hash the previous discussion, but rather we'd like some feedback on
> > our work so far.
> > 
> > The list of changes (trimmed commit tags):
> > 
> > == Use common helpers for pageflip ==
> > 144da239b047 Use pflip prepare and submit parts (v2)
> > ff7ac264a9a1 Fix page flip after daniel's acquire_ctx change
> > 
> > 
> > == implement atomic_get_properties ==
> > cf4a84df7189 Fallback on legacy properties in atomic_get_properties
> > 01f96706b6ca get_atomic_property missing for drm_connector_funcs
> > 
> > 
> > == Use common helpers for gamma ==
> > 3f547d7098de Use atomic helpers for gamma
> > 
> > 
> > == Use atomic helpers for commit ==
> > 41831f55bd58 Refactor atomic commit implementation. (v2)
> > 6c67dd3c5cd5 Refactor headless to use atomic commit.
> > eb22ef1ecb16 Remove page_fleep_needed function.
> > 
> > 
> > == Use atomic helpers for S3 ==
> > 5a6ae6f76249 Switch to DRM helpers in s3.
> > 
> > 
> > == Simmplify mapping between DRM and DC objects ==
> > 84a3ee023b9b Remove get_connector_for_link.
> > 6d8978a98b40 Remove get_connector_for_sink.
> > 
> > 
> > == Use DRM EDID read instead of DC ==
> > 566969dacfad Fix i2c write flag.
> > 527c3699ff3c Refactor edid read.
> > 5ac51023d275 Fix missing irq refactor causing potential i2c race
> > 
> > 
> > == Save DC validate_ctx in atomic_check and use in commit ==
> > 8c194d8e4ee9 pull commit_surfaces out of atomic_commit into helper
> > function
> > 27eef98b38c8 Return context from validate_context
> > ca3ee10e915b Add DM global atomic state
> > 8ba1ca856532 Hook dm private state into atomic_check
> > 10160455ac6d Add correct retain/release for objs in dm_atomic_state
> > 0f1b2e2aecbb Commit validation set from state
> > 258e6a91fc61 Add validate_context to atomic_state
> > 64f569b5df20 Use validate_context from atomic_check in commit
> > 
> > 
> > == Start multi-plane implementation ==
> > 601ff4e70b7c decouple per-crtc-plane model
> > a0b859a0b114 Fix cleanup in amdgpu_dm_initialize_drm_device
> > ee02010d7a82 update plane functionalities
> > 3b7345fd1abb Allow planes on all crtcs
> > d9cf37462156 initialize YUV plane capabilities
> > 248f06b2613e Universal cursor plane hook-up.
> > 
> > 
> > == Minor cleanups ==
> > d99bf02cb8fc Rename atomic_commit parameter.
> > f15fb9726502 Use amdgpu mode funcs statically
> > d3e37fa70643 Remove unused define from amdgpu_dm_types
> > 80a38ad58125 Add lock around updating freesync property
> > 8c7f16853824 Use new drm_dp_find_vcpi_slots to compute slots
> > 
> > Regards,
> > Harry
> > _______________________________________________
> > amd-gfx mailing list
> > amd-gfx at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/amd-gfx
> 
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the amd-gfx mailing list