Re: [git pull] drm amdgpu-dc merge

From: Dave Airlie
Date: Fri Nov 17 2017 - 00:26:53 EST


gmail for some reason ate my email formatting, apparantly preediting
in gedit, then pasting in here doesn't work so well.

Dave.

On 17 November 2017 at 14:05, Dave Airlie <airlied@xxxxxxxxx> wrote:
> Hi Linus,
>
> This is the pull request for the AMD DC (display code) layer which is
> a requirement
> to program the display engines on the new Vega and Raven based GPUs.
> It also contains
> support for all amdgpu supported GPUs (CIK, VI, Polaris), which you
> have to enable.
> It is also a kms atomic modesetting compatible driver (unlike the
> current in-tree display code).
>
> I've kept it separate from drm-next because it may have some things
> that cause you to reject it.
>
> Background story:
> AMD have an internal team creating a shared OS codebase for display at
> hw bring up time
> using information from their hardware teams. This process doesn't lead
> to the most Linux
> friendly/looking code but we have worked together on cleaning a lot of
> it up and dealing
> with sparse/smatch/checkpatch, and having their team internally adhere
> to Linux coding standards.
>
> This tree is a complete history rebased since they started opening it,
> we decided
> not to squash it down as the history may have some value. Some of the
> commits therefore
> might not reach kernel standards, and we are steadily training people
> in AMD to better
> write commit msgs.
>
> There is a major bunch of generated bandwidth calculation and
> verification code that comes
> from their hardware team. On Vega and before this is float
> calculations, on Raven (DCN10)
> this is double based. They do the required things to do FP in the
> kernel, and I could
> understand this might raise some issues. Rewriting the bandwidth would
> be a major undertaken
> in reverification, it's non-trivial to work out if a display can
> handle the complete set
> of mode information thrown at it.
>
> Future story:
> There is a TODO list with this, and it address most of the remaining
> things that would be
> nice to refine/remove. The DCN10 code is still under development
> internally and they push
> out a lot of patches quite regularly and are supporting this code base
> with their display
> team. I think we've reached the point where keeping it out of tree is
> going to motivate
> distributions to start carrying the code, so I'd prefer we get it in
> tree. I think this
> code is slightly better than STAGING quality but not massively so, I'd
> really like to see
> that float/double magic gone and fixed point used, but AMD don't seem
> to think the accuracy
> and revalidation of the code is worth the effort.
>
> Dave.
>
>
> The following changes since commit 6c94804fde4415f3938778155d8e665e6870a46d:
>
> Merge tag 'drm-misc-next-2017-10-16' of
> git://anongit.freedesktop.org/drm/drm-misc into drm-next (2017-10-17
> 10:10:17 +1000)
>
> are available in the git repository at:
>
> git://people.freedesktop.org/~airlied/linux tags/drm-for-v4.15-amd-dc
>
> for you to fetch changes up to 49e37ba07a3ae697086c0a1a32c113a1f177d138:
>
> Merge branch 'drm-next-4.15-dc' of
> git://people.freedesktop.org/~agd5f/linux into drm-next (2017-11-16
> 12:39:40 +1000)
>
> ----------------------------------------------------------------
> amdgpu DC display code for Vega.
>
> ----------------------------------------------------------------
> AMD\ktsao (1):
> drm/amd/display: remove DCN1 guard as DCN1 is already open sourced.
>
> Alex Deucher (30):
> drm/amd/dc/dm: remove redundant display structs
> drm/amd/display: Enable DCE12 support
> drm/amd/display: Remove DCE12 guards
> drm/amdgpu/soc15: enable dc on vega10
> drm/amd/display: decouple per-crtc-plane model
> drm/amd/display: fix nullptr on vega initialization
> drm/amdgpu/display: Enable DCN in DC
> drm/amdgpu/soc15: enable DC ip module for Raven
> drm/amd/display/dc: Make dce110_validate_bandwidth static (v2)
> drm/amd/display/dc: make dce120_link_encoder_create static
> drm/amd/display/dm: add KV, KB, ML (v2)
> drm/amdgpu: add DCE8 APUs to dc_supported check
> drm/amd/display/dc: add DIGG for KV
> drm/amd/display/dc: add DCE_VERSION for DCE8 APUs
> drm/amd/disply/dc: add resource support for DCE8 APUs (v2)
> drm/amdgpu/cik: add IP modules for DC for APUs
> drm/amdgpu: disable DC on KB/ML for now
> drm/amdgpu: drop experimental flag for vega10
> drm/amd/display: fix typo in function name
> drm/amd/display: whitespace cleanup in amdgpu_dm.c/h
> drm/amd/display: make a bunch of stuff in amdgpu_dm.c static
> drm/amd/display: drop unused functions in amdgpu_dm.c
> drm/amd/display: drop unused functions in amdgpu_dm_services.c
> drm/amd/display: whitespace cleanup in amdgpu_dm_mst_types.c/h
> drm/amd/display: make log_dpcd static
> drm/amd/display: whitespace cleanup in amdgpu_dm_irq.c/h
> drm/amd/display: remove unused functions in amdgpu_dm_irq.c
> drm/amd/display: make amdgpu_dm_irq_handler static
> drm/amd/display/dc: drop dm_delay_in_microseconds
> drm/amd/display: drop unused dm_delay_in_microseconds
>
> Amy Zhang (19):
> drm/amd/display: Fix Gamma Adjustment
> drm/amd/display: Framework for degamma and regramma through color module
> drm/amd/display: Output Transfer Function Regamma Refactor
> drm/amd/display: Set default degamma to sRGB instead of bypass
> drm/amd/display: HDR Enablement For Applications
> drm/amd/display: Fix Warnings
> drm/amd/display: Add bypass case for PQ transfer function
> drm/amd/display: DMCU PSR Refactor
> drm/amd/display: Simplify some DMCU waits
> drm/amd/display: PSR Aux Channel and Static Screen Support Fix
> drm/amd/display: always retrieve PSR cap
> drm/amd/display: Move output transfer function to stream updates
> drm/amd/display: Program CSC Mode For BT2020
> drm/amd/display: Disable ABM when eDP is disabled
> drm/amd/display: Disable PSR entry abort to prevent intermittent freezes
> drm/amd/display: Add function to get PSR state
> drm/amd/display: Refactor to call set PSR wait loop in dce_dmcu
> instead of dce_clocks
> drm/amd/display: Fix DRR Enable on Desktop
> drm/amd/display: Re-enable Vsync Interrupts for Gradual Refresh Ramp
>
> Andrew Jiang (11):
> drm/amd/display: Fix context alloc failed logging
> drm/amd/display: Force always scale chroma, set always_scaled to false
> drm/amd/display: power_down_Hw need signal type to turnoff backlight
> drm/amd/display: Move power control from link encoder to hwsequencer
> drm/amd/display: Add missing newlines in pstate wait debug messages
> drm/amd/display: Fix up plane_states add/remove logic
> drm/amd/display: Don't set cursor address is 0 logging as errors
> drm/amd/display: Correct timings in build scaling params
> drm/amd/display: Add chip mask to HDMI retimer/redriver check
> drm/amd/display: Add DIGD case when getting retimer settings
> drm/amd/display: Use constants from atom.h for HDMI caps read
>
> Andrew Wong (3):
> drm/amd/display: Change locking of registers when flipping frames.
> drm/amd/display: Retrieve windowed fullscreen state
> drm/amd/display: DAL3: HDR10 Infoframe encoding
>
> Andrey Grodzovsky (81):
> drm/amd/display: Fix refcount over dc_sink.
> drm/amd/display: Add refcount debug assert
> drm/amd/display: Pass adev to fill_plane_attr
> drm/amd/display: [MST] Fix startup sequence v3.
> drm/amd/display: Use pflip prepare and submit parts (v2)
> drm/amd/display: Add interrupt entries for VBLANK isr.
> drm/amd/display: Register on VLBLANK ISR.
> drm/amd/display: Clean index in irq init loop
> drm/amd/display: Rename atomic_commit parameter.
> drm/amdgpu: Add a few members to support DAL atomic refactor.
> drm/amd/display: Refactor atomic commit implementation. (v2)
> drm/amd/display: Refactor headless to use atomic commit. (v2)
> drm/amd/display: Remove page_fleep_needed function.
> drm/amd/display: Switch to DRM helpers in s3.
> drm/amd/display: Fix the NULL pointer. (v2)
> drm/amd/display: Fix gfx9 parameters reading for DC.
> drm/amd/display: Unhardcode acrtc->max_cursor_{height,width}
> drm/amd/display: Unhardcode cursor size reported back to UMD.
> drm/amd/display: Set cursor pitch to cursor width (in pixels).
> drm/amd/display: use CRTC_VERTICAL_INTERRUPT0 as VBLANK trigger.
> drm/amd/display: use CRTC_VERTICAL_INTERRUPT0 as a trigger for VBLANK.
> drm/amd/display: Remove get_connector_for_link.
> drm/amd/display: Remove get_connector_for_sink.
> drm/amd/display: Fix i2c write flag.
> drm/amd/display: Refactor edid read.
> drm/amd/display: Fix s3 hang on resume.
> drm/amd/display: i2c/aux Remove link index.
> drm/amd/display: Fix race.
> drm/amd/display: Fix slow FPS.
> drm/amd/display: Use dc_update_surfaces_for_stream for flip.
> drm/amd/display: Clean unused interface.
> drm/amd/display: Unify loop for surface update and page flip.
> drm/amd/display: Add missed wait_for_prev_commits.
> drm/amd/display: Query for update plane type.
> drm/amd/display: Remove redundant condition.
> drm/amdgpu: Enable DRIVER_ATOMIC flag for DAL.
> drm/amd/display: program scaler not called.
> drm/amd/display: Fix handling of scaling and underscan.
> drm/amd/display: Clean unused interface.
> drm/amd/display: Get rid of get_dm_commit_action
> drm/amd/display: Universal cursor plane hook-up.
> drm/amd/display: Remove redundant member from amdgpu_plane.
> drm/amd/display: Get rid of seperate flip function.
> drm/amd/display: Handle commit plane with no FB.
> drm/amd/display: Create dm_plane_state.
> drm/amd/display: MST atomic_get_property missing.
> drm/amd/display: Add global lock function.
> drm/amd/display: Remove check update type function.
> drm/amd/display: Refine globallock.
> drm/amd/display: Global lock typos fix.
> drm/amd/display: Clean up unused function.
> drm/amd/display: Move dm_plane_state definition to DAL header.
> drm/amd/display: Move kms_atomic support flag to dm_early_init.
> drm/amd/display: Create dm_crtc_state stubs.
> drm/amd/display: Move dm_plane_state to DAL header.
> drm/amd/display: Update atomic state hooks.
> drm/amd/display: Remove acrtc->stream
> drm/amd/display: Undo dc_update_surfaces_and_stream change.
> drm/amd/display: Refactor dc_commit_streams
> drm/amd/display: Leave all validate_ctx life cycle management to DC.
> drm/amd/display: Clean dm_plane_state hooks.
> drm/amd/display: Attach surface to dm_plane_state.
> drm/amd/display: Introduce refcount for dc_validate_context
> drm/amd/display: Skip DC validation for flips and cursor.
> drm/amd/display: Release dm_state->context when state is cleared.
> drm/amd/display: dc_validate_ctx refocunt fixes.
> drm/amd/display: Preserve refcount for S3 case.
> drm/amd/display: Release cached atomic state in S3.
> drm/amd/display: Fix S3 gamma corruption.
> drm/amd/display: Move stream validations into seperate function.
> drm/amd/display: Use stream validation hook.
> drm/amd/display: Add per surface validation hook.
> drm/amd/display: add preferred mode from Video Format Preference
> Data Block
> drm/amd/display: Implement plane atomic_check.
> drm/amd/display: Add stateless surface validation to validate_resources
> drm/amd/display: fix >340 Mhz with deep color pipe split no display
> drm/amd/display: Per stream validate_context build v2.
> drm/amd/display: Per plane validation context build.
> drm/amd/display: Refactor atomic check.
> drm/amd/display: Use DRM provided page flip flag.
> drm/amd/display: Move dis_clk into dc_state.
>
> Anthony Koo (24):
> drm/amd/display: Add in/out transfer functions to DC
> drm/amd/display: Refactor to move color helper into module
> drm/amd/display: Refactor output transfer function to stream
> drm/amd/display: Refactor to move gamma correction to module
> drm/amd/display: Implement PQ curve based on output transfer function
> drm/amd/display: Fix distribution of segments for PQ
> drm/amd/display: Fix programming of gamma end points
> drm/amd/display: Fix Regamma end point
> drm/amd/display: Reset gamma to NULL after release
> drm/amd/display: Fix color module crash when hotplug monitors.
> drm/amd/display: Disable Modules at Runtime
> drm/amd/display: Fix compile warnings
> drm/amd/display: DMCU Compile and Load
> drm/amd/display: Move backlight from encoder to ABM
> drm/amd/display: Support ABM without PPlib
> drm/amd/display: Debug option to force enable ABM
> drm/amd/display: use signal type to decide whether to set backlight
> drm/amd/display: Implement support for backlight optimization
> drm/amd/display: Temporary disable BTR FreeSync support for now
> drm/amd/display: fix issues with incorrectly detecting UPDATE_TYPE_FULL
> drm/amd/display: add hyst frames for fixed refresh
> drm/amd/display: Fix MPO visual confirm
> drm/amd/display: Add regkey for DRR control for internal panel
> drm/amd/display: implement DXGI Gamma Ramps
>
> Aric Cyr (2):
> drm/amd/display: Implement gamma correction using input LUT
> drm/amd/display: Remove dc_target object
>
> Arindam Nath (3):
> drm/amd/display: remove DM_NOT_IMPL messages
> drm/amd/display: fix cursor disappearing after resume
> drm/amd/display: fix resume hang because of DP short pulse
>
> Arnd Bergmann (3):
> drm/amdgpu/display: provide ASSERT macros unconditionally
> drm/amdgpu/display: remove unused REG_OFFSET macro
> drm/amdgpu/display: fix integer arithmetic problem
>
> Ayyappa Chandolu (1):
> drm/amd/display: Fix ASSR enablement on DP to EDP converter
>
> Bhawanpreet Lakha (21):
> drm/amd/display: remove unneeded FBC hw programming code
> drm/amd/display: Connect DC resource to FBC compressor
> drm/amd/display: Set static screen register for stoney/carrizo
> drm/amd/display: Move and Rename "is_stream_changed()"
> drm/amd/display: Avoid full modeset when not required
> drm/amd/display: Fix comment placement for when new_stream is null
> drm/amd/display: change bw_dceip and bw_vbios into pointers
> drm/amd/display: change dcn_ip and dcn_soc into pointers
> drm/amd/display: Flattening core_dc to dc
> drm/amd/display: Disable stutter for Raven
> drm/amd/display: Change log level for DCN powergatting
> drm/amd/display: Remove unneeded code
> drm/amd/display: Clean up flattening core_dc to dc
> drm/amd/display: Rename dc resource_validate_ctx methods
> drm/amd/display: fix pflip irq registor for raven
> drm/amd/display: Refactor dc_update_planes_and_stream.
> drm/amd/display: fix re-enabling stutter for raven
> drm/amd/display: increase pstate wait timeout
> drm/amd/display: Fix underscan not using proper scaling
> drm/amd/display: change when to set tap_hardcode_coeff
> drm/amd/display: add flip_immediate to commit update for stream
>
> Charlene Liu (59):
> drm/amd/display: remove CV-specific timing standard
> drm/amd/display: Fix YCbCr pixel format shows green issue
> drm/amd/display: HDMI YCbCr422 12bpc pixel format issue
> drm/amd/display: color distortion after DPMS+ background color fix
> drm/amd/display: audio bug fix part 1: Add missing audio ACR
> drm/amd/display: fix 12bpc truncate to 10bpc
> drm/amd/display: fix incorrect programming for YCbCr422 and YCbCr420
> drm/amd/display: HDMI deep color mode audio issue
> drm/amd/display: 420 clock divided by 2 twice
> drm/amd/display: freesync pipe split :VTotal_Min_Mask for Hflip/lock.
> drm/amd/display: extended the programming sequence to VFlip as well
> drm/amd/display: sometime VtotalMin less than VTotal (rounding issue)
> drm/amd/display: refclock from bios firmwareInfoTable
> drm/amd/display: move refclk from dc to resource_pool
> drm/amd/display: TPS4 logic typo fix
> drm/amd/display: need to handle DCE_Info table ver4.2
> drm/amd/display: DP is hotplugged, HDMI with 4:2:0 corruption
> drm/amd/display: remove redundant check
> drm/amd/display: using calculated values for VReady/Startup
> drm/amd/display: voltage request related change
> drm/amd/display: adding FCLK and DPPCLK clock types
> drm/amd/display: use full surface update when stream is NULL
> drm/amd/display: USB-c DP-HDMI dongle shows garbage on Sony TV
> drm/amd/display: single channel bandwidth verses dual channel bandwidth
> drm/amd/display: Add disable_psr debug flag
> drm/amd/display: fix single link black screen
> drm/amd/display: w/a no color space info for HDMI when build AVI
> drm/amd/display: Enabling VSR on 4K display causes black screen
> drm/amd/display: change non_dpm0 state's default SR latency
> drm/amd/display: fix 4k@30 with 10bit deep color and avi for BT2020
> drm/amd/display: fix DVI connected to HDMI connector max tmds clock
> drm/amd/display: fix aviInfoFrame bar Info and add set_avMute
> drm/amd/display: fix YCbCr420 deep color mode not supported
> drm/amd/display: single PSR display not allow CSTATE sw w/a
> drm/amd/display: fix PHYCLK in formula.
> drm/amd/display: fix PHYCLK in formula.
> drm/amd/display: update predefined latency for Rv1_F0
> drm/amd/display: fix dlg ttu calculation input
> drm/amd/display: fix eDP power down sequence
> drm/amd/display: fix eDP bootup/S4 backlight on
> drm/amd/display: eDP power sequence T9 fail
> drm/amd/display: fix not enter/exit PSR with latest driver/SBIOS
> drm/amd/display: write dpcd 0x600 to 2 for DP/eDP when powerdown
> drm/amd/display: Block 6Ghz timing if SBIOS set HDMI_6G_en to 0
> drm/amd/display: add aux arbitration logic
> drm/amd/display: only polling VSync Phase within VSync peroroid
> drm/amd/display: not override the FMT setting set by VBIOS for eDP
> drm/amd/display: add backlight control in blankstream.
> drm/amd/display: fix crc_source_select use hardcoded color depth
> drm/amd/display: make sure BL off to mainlink off has enough time
> drm/amd/display: add hubp/dpp pg debug key
> drm/amd/display: temp disable DCC on high res.
> drm/amd/display: soc_bound_box -update DML based on HW.
> drm/amd/display: audio dynamic resource acquired related
> drm/amd/display: arbitration find the matching dig-az first.
> drm/amd/display: Add stereo_support debug flag
> drm/amd/display: Add debug flag for VSR support
> drm/amd/display: reject 3D mode based on static debug flag.
> drm/amd/display: fix AZ clock not enabled before program AZ endpoint
>
> Corbin McElhanney (13):
> drm/amd/display: fix freesync not working on raven
> drm/amd/display: Allow update stream without surface
> drm/amd/display: Don't update surface if dimensions are 0
> drm/amd/display: Add assertion for invalid surface dimensions
> drm/amd/display: Add clock info struct
> drm/amd/display: Add extra mode and clock info to DTN logs
> drm/amd/display: Fix context copy memory leak
> drm/amd/display: Add more pstate sanity checks
> drm/amd/display: Fix accessing freed memory
> drm/amd/display: Fix hw state logging regression
> drm/amd/display: fix HDMI 12bits last two bits are zero issue
> drm/amd/display: Add comment explaining context free
> drm/amd/display: Log OTG registers with dcn10 hw state
>
> Dan Carpenter (3):
> drm/amd/display: small cleanup in destruct()
> drm/amd/display: checking for NULL instead of IS_ERR()
> drm/amd/display: remove some unneeded code
>
> Daniel Vetter (1):
> drm/amd: DC pull request review
>
> Darren Salt (1):
> drm/amd/display: Don't leak dc_stream_state.
>
> Dave Airlie (84):
> drm/dp-helper: add missing defines needed by AMD display core.
> drm/amd/display: remove dc hub - this seems unused.
> drm/amd/display: remove some unused wrappers
> drm/amd/display: drop register logger and pid/tgid getters
> drm/amd/display: drop get platform info
> drm/amd/display: drop setmode complete notifier
> drm/amd/display: port to using drm dpcd defines
> drm/amd/display: assign correct enum for edp revision
> drm/amd/display: drop min/max wrappers
> drm/amd/display: start using linux hdmi header
> amdgpu/dc: add static to construct function
> amdgpu/dc: move filter taps to being static const data (v2)
> amdgpu/dc: drop display_pipe_clocks.c.
> amdgpu/dc: inline a bunch of float operations.
> amdgpu/dc: inline a bunch of the dml wrappers.
> amdgpu/dc: drop dml_util_is_420
> amdgpu/dc: separate out some common code from bios parsers.
> amdgpu/dc: drop dml display_mode_support.c (v2)
> amdgpu/dc: don't check for 0 on register read/writes always.
> amdgpu/dc: remove wait_reg/wait_reg_func interfaces.
> amdgpu/dc: drop dc_ver char
> amdgpu/dc: static constify update_surface_trace_level
> amdgpu/dm: constify yuv_formats.
> amdgpu/dm: constify plane type.
> amdgpu/dm: constify rgb formats.
> amdgpu/dc: constify a bunch of dc structs.
> amdgpu/dc: make timing generator constructor return void.
> amdgpu/dc: make stream encoder constructor return void.
> amdgpu/dc: make link encoder construct void.
> amdgpu/dc: make opp construct void.
> amdgpu/dc: make dce transform constructor void
> amdgpu/dc: make dce80 timing generator construct return void.
> amdgpu/dc: make get_audio_clock_info return void.
> amdgpu/dc: make program_regamma_pwl return void
> amdgpu/dc: make some audio functions return void
> amdgpu/dc: remove pointless returns in the i2caux constructor paths. (v2)
> amdgpu/dc: cleanup construct returns in gpio.
> amdgpu/dc: another round of dce/dcn construct cleanups.
> amdgpu/dc: remove pointless return from build_pipe_hw_param
> amdgpu: fixup construct to void paths on some more dc objects.
> amdgpu/dc: fix construct return values on irq service.
> amdgpu/dc: inline some of the fixed 32_32 fns
> amdgpu/dc: inline a bunch of the fixed 31_32 helpers.
> amdgpu/dc: hide some unused aux/i2c payload apis.
> amdgpu/dc: move some one line dp functions to inlines.
> amdgpu/dc: inline some of the bw_fixed code.
> amdgpu/dc: allow inlining constant int to fixed a lot better.
> amdgpu/dc: use the builtin constant p trick on the 31/32 fixed point.
> amdgpu/dc: inline fixed31_32 div_int
> amdgpu/dc: inline all the signal_types code.
> amdgpu/dc: set some of the link dp code to static.
> amdgpu/dc: rename bios get_image symbol to something more searchable.
> amdgpu/dc: inline dml_round_to_multiple
> amdgpu/dc: inline dal grph object id functions.
> amdgpu/dc: don't memset after kzalloc.
> amdgpu/dc: use kernel ilog2 for log_2.
> amdgpu/dc: drop dce110_types.h
> amdgpu/dc: drop hw_sequencer_types.h
> amdgpu/dc: fix a bunch of misc whitespace.
> amdgpu/dc: kfree already checks for NULL.
> amdgpu/dm: don't use after free.
> amdgpu/dc: fix indentation on a couple of returns.
> amdgpu/dc: kill some deadcode in dc core.
> amdgpu/dc: set a bunch of functions to static.
> amdgpu/dc: kill a bunch of dead code.
> amdgpu/dc: convert dc_transfer to use a kref.
> amdgpu/dc: convert dc_gamma to kref reference counting.
> amdgpu/dc: use kref for dc_plane_state.
> amdgpu/dc: convert dc_stream_state to kref.
> amdgpu/dc: convert dc_sink to kref.
> amdgpu/dc: use kref for dc_state.
> Merge branch 'drm-next-4.15-dc' of
> git://people.freedesktop.org/~agd5f/linux into drm-next
> drm/amd/display: Use DRM new-style object iterators.
> Merge remote-tracking branch 'pfdo/drm-next' into drm-next
> drm/amd/display: drop display_pipe_clocks.c.
> amdgpu/dc: drop dml_util_is_420
> amdgpu/dc: inline dml_round_to_multiple
> Merge branch 'drm-next-4.15-dc' of
> git://people.freedesktop.org/~agd5f/linux into drm-next
> Merge branch 'drm-next-4.15-dc' of
> git://people.freedesktop.org/~agd5f/linux into drm-next
> amdgpu/dc: fix non-ansi function decls.
> amdgpu/dc: fix indentation warning from smatch.
> amdgpu/dc: handle allocation failures in dc_commit_planes_to_stream.
> Merge branch 'drm-next-4.15-dc' of
> git://people.freedesktop.org/~agd5f/linux into drm-next
> Merge branch 'drm-next-4.15-dc' of
> git://people.freedesktop.org/~agd5f/linux into drm-next
>
> Ding Wang (8):
> drm/amd/display: Temporarily blocking interlacing mode until
> it's supported.
> drm/amd/display: Use DTO as clock on DP if not
> drm/amd/display: obtain usHBR3En bit from BP 1
> drm/amd/display: Fix for tile MST
> drm/amd/display: Define dithering options
> drm/amd/display: Add function to set dither option
> drm/amd/display: link training fallback actions
> drm/amd/display: fix decide_link_settings
>
> Dmytro Laktyushkin (121):
> drm/amd/display: remove dead display clock code
> drm/amd/display: restyle display clock calls part 1
> drm/amd/display: restyle display clock calls part 2
> drm/amd/display: remove store clock state
> drm/amd/display: remove get_min_clocks_state
> drm/amd/display: remove clocks_state enum
> drm/amd/display: consolidate dce8-11.2 display clock code
> drm/amd/display: add newline to generic_reg_wait timeout message
> drm/amd/display: fix display clock integrated info read
> drm/amd/display: create scratch_val_ctx as temp w/a
> drm/amd/display: moving remaining functionality from gpu to dce_clocks
> drm/amd/display: fix up construction of scratch_val_ctx
> drm/amd/display: define reg helpers to update registers with 8
> and 9 fields
> drm/amd/display: minor clock source refactor
> drm/amd/display: Remove meta_pitch
> drm/amd/display: add missing dcc update on flip call
> drm/amd/display: prevent setting cursor position with no surface
> drm/amd/display: fix timing trace debug print
> drm/amd/display: Make new pixel clock more obvious
> drm/amd/display: add dcfclk reporting to pplib
> drm/amd/display: use disp clock value in context rather than bw_results
> drm/amd/display: fix psr status wait
> drm/amd/display: rename bandwidth_calcs.c to dce_calcs.c (v2)
> drm/amd/display: add scaler coefficients for 64 phase 5-8 taps
> drm/amd/display: remove apply_clk_constraints, used
> validate_bandwidth universally
> drm/amd/display: bandwidth update fix
> drm/amd/display: move visual confirm recout adjustment to scaler
> drm/amd/display: fix dce100_validate_bandwidth return value
> drm/amd/display: add init calculation to scaler params
> drm/amd/display: fix hsplit viewport calculation for
> rotated/mirrored usecases
> drm/amd/display: fix viewport adjustment on rotated surface
> drm/amd/display: fix incorrect vp adjustment
> drm/amd/display: fix bw calc internal initialization error
> drm/amd/display: remove dc_pre_update_surfaces_to_stream from dc use
> drm/amd/display: fix dce_calc surface pitch setting for non underlay pipes
> drm/amd/display: update dce8 & 10 bw programming
> drm/amd/display: remove unnecessary allocation for
> regamma_params inside opp
> drm/amd/display: fix memory leak
> drm/amd/display: improve cursor programming reliability
> drm/amd/display: dce120 to dce ipp refactor
> drm/amd/display: dce80, 100, 110 and 112 to dce ipp refactor
> drm/amd/display: no need for return value from ipp_program_degamma_pwl
> drm/amd/display: fix crash caused by incorrect index being used for array
> drm/amd/display: bw debug options now apply to dml as well
> drm/amd/display: prevent assert on error of 1 in calc_freesync_range
> drm/amd/display: refactor bw related variable structure in val_ctx
> drm/amd/display: switch to using calc_clk and cur_clk for dcn bw setting
> drm/amd/display: enable watermark range reporting to pplib
> drm/amd/display: fix scaling calculation for proper surface input format
> drm/amd/display: add yuv pixel formats to pixel_format_to_bpp()
> drm/amd/display: fix scaling info based surface update type check
> drm/amd/display: add explanation for surface_update_type
> drm/amd/display: fix mpo blanking out on one of planes being set
> not visible
> drm/amd/display: dce 8 - 12 mem_input refactor to new style
> drm/amd/display: add missing GRPH_UPDATE_LOCK field macro for
> dce_mem_input
> drm/amd/display: make dc_get_validate_context re-entrant
> drm/amd/display: revert dc_get_validate_context re-entrancy fix
> drm/amd/display: remove GRPH_SURFACE_UPDATE_IMMEDIATE_EN field programming
> drm/amd/display: fix flip register write sequence
> drm/amd/display: add always_scale debug flag to dc
> drm/amd/display: stop adjusting scl taps when scl ratio is one on dcn
> drm/amd/display: allow taking split pipes during resource mapping
> drm/amd/display: fix surface attachment handling of pipe split
> drm/amd/display: fix mpo + split pipe aquisition failure
> drm/amd/display: clean up mpc programing during fe reset
> drm/amd/display: fix mpc alpha programming
> drm/amd/display: propagate surface alpha setting from OS to DC
> drm/amd/display: fix enable_optc_clock reg_wait timeouts
> drm/amd/display: add bw logging for dcn
> drm/amd/display: redesign mpc
> drm/amd/display: w/a for ycbcr output pre-multiplied alpha corruption
> drm/amd/display: enable pipe split
> drm/amd/display: fix dc_check_update_surfaces_for_stream memcmp sequence
> drm/amd/display: fix dc_post_update_surfaces_to_stream
> drm/amd/display: do full fe reprogram on full update
> drm/amd/display: add pipe split disable regkey
> drm/amd/display: use different sr latencies for dpm0 dcn bw calc
> drm/amd/display: make variable latency into a regkey option
> drm/amd/display: dcn bw_calc_auto update rev 247 to 250
> drm/amd/display: fix bw_calc_auto translation error
> drm/amd/display: fix dcn pipe reset sequence
> drm/amd/display: enable diags compilation
> drm/amd/display: Change max OPP
> drm/amd/display: Rename DCN TG specific function prefixes to tg
> drm/amd/display: Rename DCN mem input specific function prefixes to min.
> drm/amd/display: Rename DCN opp specific function prefixes to oppn10
> drm/amd/display: Enable ipp compilation
> drm/amd/display: Remove SMU_INTERRUPT_CONTROL
> drm/amd/display: refactor dcn10 hw_sequencer to new reg access style
> drm/amd/display: get dal1.1 to run
> drm/amd/display: minor dcn10_hwseq clean up/refactor
> drm/amd/display: dal1.1 opp prog update
> drm/amd/display: dal1.1 ipp prog update
> drm/amd/display: dal1.1 xfm prog update
> drm/amd/display: dal1.1 hwseq prog update
> drm/amd/display: add line number to reg_wait timeout print
> drm/amd/display: hwseq init sequence update
> drm/amd/display: fix dcn10_resource read_dce_straps
> drm/amd/display: update dcn register headers
> drm/amd/display: revert dcn10 soc defaults to 17 19
> drm/amd/display: support for updated register headers on DCN
> drm/amd/display: collapse dce11 reset_hw_ctx_wrap into 1 function
> drm/amd/display: mpc block redesign
> drm/amd/display: fix mpcc idle wait
> drm/amd/display: fix dcn fe reset memory access error
> drm/amd/display: fix bw_calc for hdmi and 420 outputs
> drm/amd/display: do not report min_memory_clock_khz to pplib for dce8 & 10
> drm/amd/display: Use function pointer for update_plane_addr
> drm/amd/display: Use MAX_PIPES for DTO reg arrays
> drm/amd/display: fix hubp mpcc and opp tracking
> drm/amd/display: Fixed mpc add, enable always scaler for video surface.
> drm/amd/display: Restructuring and cleaning up DML
> drm/amd/display: add mode support check to dml vba code
> drm/amd/display: extract global sync params from vba
> drm/amd/display: change dml vba cursor count define to correct one
> drm/amd/display: block video planes >4k on dcn10
> drm/amd/display: add max_video_width cap to dc
> drm/amd/display: add performance trace macro to dc
> drm/amd/display: Set addressable region as active + border
> drm/amd/display: change dml numdpp var to uint
> drm/amd/display: Minor update to DML
>
> Drew Davenport (1):
> amdgpu/dc: Avoid dereferencing NULL pointer
>
> Duke Du (1):
> drm/amd/display: add display write back(DWB)
>
> Eric Bernstein (9):
> drm/amd/display: Update DSCL
> drm/amd/display: remove output_format from ipp_setup
> drm/amd/display: update mpc add/remove functions
> drm/amd/display: update blending mode and set output denorm
> drm/amd/display: clean up dcn10 dpp after HW review
> drm/amd/display: group DCN watermark registers
> drm/amd/display: Add DPP capabilities
> drm/amd/display: Expose some MPC functions for reuse
> drm/amd/display: check SR_WATERMARK regs prior to write
>
> Eric Cook (4):
> drm/amd/display: FreeSync LFC MIN/MAX update on current frame
> drm/amd/display: FreeSync Auto Sweep Support
> drm/amd/display: Check for Zero Range in FreeSync Calc
> drm/amd/display: Add support for FreeSync on eDP to module
>
> Eric Yang (23):
> drm/amd/display: move number of memory channel calc out of pplib call
> drm/amd/display: block modes that require read bw greater than 30%
> drm/amd/display: Change how we disable pipe split
> drm/amd/display: call pplib to update clocks
> drm/amd/display: fix mpo exit hang
> drm/amd/display: properly turn off unused mpc before front end programming
> drm/amd/display: powergate fe of reused pipes to reset ttu
> drm/amd/display: fix locking in apply_ctx_for_surface
> drm/amd/display: Fix generic_reg_wait 1000ms case
> drm/amd/display: add idle wait for passive surface update and modeset
> drm/amd/display: add missing func for dce11o to avoid crash
> drm/amd/display: break up plane disable and disconnect in set mode
> drm/amd/display: reduce 40s time out to 1s in disable crtc
> drm/amd/display: update clocks we report to PPlib
> drm/amd/display: add programming for 0 plane case
> drm/amd/display: Fix time out on boot
> drm/amd/display: fix usb-c dongle regression
> drm/amd/display: add back removed hack for mpcc add
> drm/amd/display: Use active + border for bw validation
> drm/amd/display: Add override for reporting wm ranges
> drm/amd/display: Handle case when stream not found in set_dpms
> drm/amd/display: fix null dereference in reset hw ctx
> drm/amd/display: fix MST link training fail division by 0
>
> Ernst SjÃstrand (5):
> amdgpu/dc: fix more indentation warnings
> amdgpu/dc: Fix potential null dereferences in amdgpu_dm.c
> amdgpu/dc: Fix missing null checks in amdgpu_dm.c
> amdgpu/dc: Fix double unlock in amdgpu_dm_commit_planes
> amd/display: Fix potential null dereference in dce_calcs.c
>
> Harry Wentland (163):
> drm/amdgpu: Pulling old prepare and submit for flip back
> drm/amd/dc: Add dc display driver (v2)
> drm/amd/display: Removing extra newline
> drm/amd/display: Remove obsolete LATEST_ATOM_BIOS_SUPPORT
> drm/amd/display: Fix bunch of warnings in DC
> drm/amd/display: Fix warning in freesync module
> drm/amd/display: Fix warning. Set MAX_SURFACES to 3
> drm/amd/display: Move dpcd structs into dp_types header
> drm/amd/display: Fix licensing header
> drm/amd/display: Don't use target before null check
> drm/amd/display: Remove unused color and power modules
> drm/amd/display: Remove unused function in gamma_calcs
> drm/amd/display: Fix misleading indentation bug in link_encoder
> drm/amd/display: Fix warnings in DC
> drm/amd/display: Fix wrong index bug in set_avi_info_frame
> drm/amd/display: Don't reserve pipe for underlay on ASIC without underlay
> drm/amd/display: Remove power gating debug flags
> drm/amd/display: Make sure to update address without flip
> drm/amd/display: Fix 64-bit division
> drm/amd/display: fix crash with modesetting driver
> drm/amd/display: Fix 64-bit division, yet again
> drm/amd/display: Remove LINUX_VERSION_CODE check
> drm/amdgpu: Expose mode_config functions for DM
> drm/amd/display: Fix warnings in amdgpu_dm
> drm/amd/display: Fix warnings in DC
> drm/amd/display: Some more warning fixes
> drm/amd/display: Use amdgpu mode funcs statically
> drm/amd/display: Remove unused define from amdgpu_dm_types
> drm/amd/display: We don't support interlace and doublescan
> Revert "drm/amdgpu: Pulling old prepare and submit for flip back"
> drm/amd/display: Add DCE12 bios parser support
> drm/amd/display: Add DCE12 gpio support
> drm/amd/display: Add DCE12 i2c/aux support
> drm/amd/display: Add DCE12 irq support
> drm/amd/display: Add DCE12 core support
> drm/amd/display: Rename bandwidth_calcs.h to dce_calcs.h
> drm/amd/display: Fix cleanup in amdgpu_dm_initialize_drm_device
> drm/amd/display: Allow planes on all crtcs
> drm/amd/display: Fallback on legacy properties in atomic_get_properties
> drm/amd/display: Remove unused scratch_val_ctx
> drm/amd/display: Get rid of temp_flip_context
> drm/amd/display: pull commit_surfaces out of atomic_commit into
> helper function
> drm/amd/display: Copy ctx to current_context instead of assign
> drm/amd/display: Move resource_validate_ctx_destruct to dc.h
> drm/amd/display: Return context from validate_context
> drm/amd/display: Fix memory leak in post_update_surfaces
> drm/amd/display: Assign stream to map before we need it
> drm/amdgpu/display: Add calcs code for DCN
> drm/amdgpu/display: Add core dc support for DCN
> drm/amdgpu/display: Add dml support for DCN
> drm/amdgpu/display: Add gpio support for DCN
> drm/amdgpu/display: Add i2c/aux support for DCN
> drm/amdgpu/display: Add irq support for DCN
> drm/amd/display: Don't call PSR func if DMCU is off
> drm/amd/display: Keep DVI_SINGLE_LINK signal if low clk
> drm/amd/display: ifdef some code only needed for DCN
> drm/amd/display: Use MED update type if clip position changes
> drm/amd/display: DCE12 num_timing_generators should be 6
> drm/amd/display: Remove duplicate entry from log_mask
> drm/amd/display: Remove unused addr var in TG
> drm/amd/display: No need to assert on stream_status
> drm/amd/display: Limit DCN to x86 arch
> drm/amd/display: Don't guard x86 in Makefile
> drm/amd/display: Don't commit surfaces if no stream
> drm/amd/display: Don't call DCN clk code for Vega
> drm/amd/display: Don't program scaler if we have no surface
> drm/amd/display: Make mode_config_funcs const
> drm/amd/display: Create dm_atomic_state
> drm/amd/display: Hook dm private state into atomic_check
> drm/amd/display: Add correct retain/release
> drm/amd/display: Commit validation set from state
> drm/amd/display: Add validate_context to atomic_state
> drm/amd/display: Use validate_context from atomic_check in commit
> drm/amd/include: Add DC_PINSTRAPS.AUDIO defines
> drm/amd/include: Add DCHUBBUB_TEST_DEBUG register defines
> drm/amd: Add missing SURFACE_TMZ register shift/mask
> drm/amd/display: Roll surface struct into core_surface
> drm/amd/display: Roll core_surface into dc_surface
> drm/amd/display: Roll core_link into dc_link
> drm/amd/display: Roll sink struct into core_sink
> drm/amd/display: Roll core_sink into dc_sink
> drm/amd/display: Roll gamma struct into core_gamma
> drm/amd/display: Roll core_gamma into dc_gamma
> drm/amd/display: Minor fix for dc_sink refactor
> drm/amd/display: Rename firmware_info to dc_firmware_info
> drm/amd/display: Merge amdgpu_dm_types and amdgpu_dm
> drm/amd/display: Fix ckeckpatch problems in amdgpu_dm
> drm/amd/display: Rename dc_surface to dc_plane_state
> drm/amd/display: Rename dc_stream to dc_stream_state
> drm/amd/display: Rename more dc_surface stuff to plane_state
> drm/amd/display: Remove struct from stack in dp_set_test_pattern
> drm/amd/display: Stub new resource objects
> drm/amd/display: Move scl_data to plane_res
> drm/amd/display: Move mi, ipp, xfm to plane_res
> drm/amd/display: Move OPP to stream_res
> drm/amd/display: Move TG to stream_res
> drm/amd/display: Move stream_enc to stream_res
> drm/amd/display: Move audio to stream_res
> drm/amd/display: Move pix_clk_params into stream_res
> drm/amd/display: Move encoder_info_frame to stream_res
> drm/amd/display: Fix plane_atomic_check when no dc_state
> drm/amd/display: Clean up cursor code
> drm/amd/display: Use public plane destroy helper
> drm/amd/display: Couple newline fixes
> drm/amd/display: Fix regression in dce110_apply_ctx_for_surfaces
> drm/amd/display: Pass correct number for gamma entries
> drm/amd/display: Fix warnings about uninitialized use
> drm/amd/display: Add a TODO list
> drm/amd/display: Leave DCN config guard around fpu header
> drm/amd/display: Enable Vega by default.
> drm/amd/display: Remove unnecessary assignemnt
> drm/amd/display: dc: Remove unneeded includes in DCN
> drm/amd/display: Remove old, misleading comment
> drm/amd/display: Stop including atomfimrwareid.h directly
> drm/amd/display: Set add_stream_ctx for CZ, Hawaii and others
> drm/amd/display: Restore missing DCE8 xfm regs
> drm/amd/display: Don't spam log with failed validation
> drm/amdgpu: Remove unused flip_flags from amdgpu_crtc
> drm/amd/display: Enable dcn10_power_on_fe log by default
> drm/amd/display: Don't reset clock source at unref
> drm/amd/display: Power down clock source at commit
> drm/amd/display: Remove switching of clk sources at end of commit
> drm/amd/display: No need to keep track of unreffed clk sources
> drm/amd/display: Break out amdgpu_dm_connector
> drm/amd/display: Create fake sink if needed when commit stream
> drm/amd/display: Format changes to bring in line with internal tree
> drm/amd/display: Change comments to bring in line with internal tree
> drm/amd/display: Update include to bring in line with internal tree
> drm/amd/display: Clean Kconfig formatting
> drm/amdgpu: Add dc_log module parameter
> drm/amd/display: Pass log_mask from DM
> drm/amd/display: Reduce DC chattiness
> drm/amd/display: Remove unused dc_validate_guaranteed function
> drm/amd/display: Use kernel alloc/free
> drm/amd/display: DC I2C review
> drm/doc: Reference AMD DC todos
> drm/amd/display: Remove DWB
> drm/amd/display: Don't report fake sink as connected
> Revert "amdgpu/dc: inline dml_round_to_multiple"
> Revert "amdgpu/dc: drop dml display_mode_support.c (v2)"
> Revert "amdgpu/dc: drop dml_util_is_420"
> Revert "amdgpu/dc: inline a bunch of the dml wrappers."
> Revert "amdgpu/dc: drop display_pipe_clocks.c."
> Revert "amdgpu/dc: inline a bunch of float operations."
> drm/amd/display: Ignore wrong tautological warning
> drm/amd/display: Fix non-DCN build
> drm/amd/display: Fix warning about overflow
> drm/amd/display: Fix warning about uninitialized variable
> drm/amd/display: Fix up some whitespace in handle_cursor_update
> drm/amd/display: Move OS types to os_types.h
> drm/amd/display: Fix one more place for dc_stream_state leak
> drm/amd/display: Reduce stack size of commit_planes_to_stream
> drm/amd/display: Remove redundant condition in dml vba
> drm/amd/display: Small comment on dc_commit_planes_to_stream
> amdgpu/dc: inline a bunch of the dml wrappers.
> drm/amd/display: Add bunch of missing license headers in DML
> drm/amd/display: Don't print error when bo_pin is interrupted
> drm/amd/display: Use plane pointer to avoid line breaks
> drm/amd/display: Use single fail label in init_drm_dev
> drm/amd/display: Explicitly call ->reset for each object
> drm/amdgpu: Remove unused dc_stream from amdgpu_crtc
> amdgpu/dm: Remove unused forward declaration
> drm/amd/display: Fix formatting for null pointer dereference fix
>
> Hawking Zhang (1):
> drm/amdgpu: enable dcn1.0 dc support on raven
>
> Hersen Wu (22):
> drm/amd/display: Add missing function to fix crash for DP Test pattern 4
> drm/amd/display: set HBR3 and TPS4 capable flags
> drm/amd/display: Fix link retraining hw sequence for auto test
> drm/amd/display: Fix DP PHY test pre-emphasis not set properly
> drm/amd/display: set blank functionality
> drm/amd/display: No audio output heard from DP panel
> drm/amd/display: Check we got a stream in update_info_frame
> drm/amd/display: Clear test pattern when enabling stream
> drm/amd/display: Audio is not switching to DP when HDMI/DP hot plug/unplug
> drm/amd/display: Get dprefclk ss percentage from vbios
> drm/amd/display: create_links bug with empty DDI slot
> drm/amd/display: Enable DCN clock gating
> drm/amd/display: remove disable_clk_gate debug flag for DCN
> drm/amd/display: DAL3 RV get DPREFCLK SpreadspectrumInfo from smu_info
> drm/amd/display: DF C-state entry blocked when DPMS
> drm/amd/display: Request to have DCN RV pipe Harvesting
> drm/amd/display: USB-C to HDMI dongle not light
> drm/amd/display: Driver message to SMU to indicate display off
> drm/amd/display: screen flickers when connected to ext monitor in clone
> drm/amd/display: add dpms state to DC
> drm/amd/display: add dpms state to DC follow up
> drm/amd/display: LGD panel willl flash line under window
>
> Jeff Smith (1):
> drm/amd/display: default spd packet to invalid
>
> Jerry (Fangzhi) Zuo (2):
> drm/amd/display:: Fix NULL pointer in Raven hotplug
> drm/amd/display: Miss register MST encoder cbs
>
> Jerry Zuo (15):
> drm/amd/display: fix NULL pointer in dm_commit_surfaces
> drm/amd/display: Add surface to dm_plane_state if fb reserve fails
> drm/amd/display: Use atomic types for ref_count
> drm/amd/display: Fix two MST not light up regressions
> drm/amd/display: Fix MST downstream display not light up regression
> drm/amd/display: Rename dc validate_context and current_context
> drm/amd/display: Exclude MST from fake sink
> drm/amd/display: Fix NULL pointer on MST chained mode
> drm/amd/display: Fix MST daisy chain SST not light up
> drm/amd/display: Fix ref_count messed up issue
> drm/amd/display: Do not access fbdev helper members
> drm/amd/display: Remove drm_modeset_lock in MST code
> drm/amd/display: Fix a logic defect in cursor move
> drm/amd/display: Remove a false-positive error message
> drm/amd/display: Fix no display on Fiji
>
> John Wu (1):
> drm/amd/display: Fix eDP power isn't off when lid close
>
> Jordan Lazare (9):
> drm/amd/dal: Add POLARIS12 support (v2)
> drm/amd/display: Fix missing fcn pointer on DCE8
> drm/amd/display: Don't attempt to program missing register fields on DCE8
> drm/amd/display: Fix gamma colour corruption for 10 bit surfaces
> drm/amd/display: Less log spam
> drm/amd/display: Less log spam
> drm/amd/display: Fill in vrefresh and min_vblank_time for dce8/dce10
> drm/amd/display: Log clock source in error condition
> drm/amd/display: Fix missing irq refactor causing potential i2c race
>
> Joshua Aberback (5):
> drm/amd/display: Block 3D Timings
> drm/amd/display: When signal type of sink is none, use link type
> for stream
> drm/amd/display: Support 64-bit Polaris11 5k VSR
> drm/amd/display: Add Polaris12 to bw_calc
> drm/amd/display: Proper de-allocation of OPP
>
> Julia Lawall (3):
> drm/amd/dc: fix semicolon.cocci warnings
> drm/amd/dc: fix semicolon.cocci warnings
> drm/amd/dc: hw_sequencer: fix semicolon.cocci warnings
>
> Ken Chalmers (5):
> drm/amd/display: fix dc_commit_surfaces_to_stream for dcc
> drm/amd/display: Continue with stream enable if DP link training fails.
> drm/amd/display: RV stereo support
> drm/amd/display: fix ASSERT() caused by missing registers.
> drm/amd/display: use num_timing_generator instead of pipe_count
>
> Kenny Tsao (1):
> drm/amd/display: remove remaining DCN1 guard
>
> Krzysztof Nowicki (1):
> drm/amd/display: Fix MST physical ports always disconnected
>
> Leo (Sunpeng) Li (26):
> drm/amd/display: Fix dcn10 cursor set position hang
> drm/amd/display: Refactor use_lut() from dce110 to dce
> drm/amd/display: Implement input gamma LUT
> drm/amd/display: Remove unsupported RGB formats
> drm/amd/display: Workaround IGT multiplane restriction
> drm/amd/display: Move drm_get_vblank from legacy code
> drm/amd/display: Flattening to dc_transfer_func
> drm/amd/display: Do not release state objects on atomic check fail
> drm/amd/display: Roll core_stream into dc_stream
> drm/amd/display: Roll stream into dc_stream
> drm/amd/display: Refactor dc_state creation into a function.
> drm/amd/display: Move copy_construct from state_alloc to atomic_check.
> drm/amd/display: Use new DRM API where possible
> drm/amd/display: Unify DRM state variable namings.
> drm/amd/display: Unify amdgpu_dm state variable namings.
> drm/amd/display: Fix typo
> drm/amd/display: Remove useless pcrtc pointer
> drm/amd/display: Match actual state during S3 resume.
> drm/amd/display: Do not set bandwidth on page flips.
> drm/amd/display: Report stream as different on scaling change
> drm/amd/display: ASSERT on dc_create_state failing.
> drm/amd/display: Fix memoryleak during S3 resume.
> drm/amd: Add DCE12 resource strap registers
> drm/amd/display: Read resource_straps from registers for DCE12
> drm/amd/display: Fix warnings on S3 resume
> drm/amd/display: Remove dangling planes on dc commit state
>
> Leon Elazar (16):
> drm/amd/display: Add dcc param to surface
> drm/amd/display: blank mechanism for supporting MPO
> drm/amd/display: Fixing some fallout from dc_target removal
> drm/amd/display: Add missing MI masks
> drm/amd/display: check surface size is at least as large as stream
> drm/amd/display: DP compliance automation test fixes
> drm/amd/display: surface validation on dce100
> drm/amd/display: Surface Validation Fixes + Audio Mask
> drm/amd/display: Adding FastUpdate functionality
> drm/amd/display: Memory leak fix during disable
> drm/amd/display: adding new dc_update_surfaces_and_stream
> drm/amd/display: changing the dc_update_surfaces_and_stream
> drm/amd/display: Fix applying surface to underlay pipe
> drm/amd/display: Memory was freed twice during disable
> drm/amd/display: set NULL value during removal for remoteSink
> drm/amd/display: Allow MPO on Raven
>
> Logatharshan Thothiralingam (2):
> drm/amd/display: Fixed bandwidth calculation error when
> converting fractions
> drm/amd/display: Get OTG info if OTG master enabled
>
> Mario Kleiner (2):
> drm/amd/display: Fix race between vblank irq and pageflip irq. (v2)
> drm/amd/display: Prevent premature pageflip when comitting in vblank. (v3)
>
> Martin Tsai (2):
> drm/amd/display: To prevent detecting new sink from spurious HPD
> drm/amd/display: To prevent detecting new sink from spurious HPD
>
> Michel DÃnzer (1):
> amdgpu/dm: Don't use DRM_ERROR in amdgpu_dm_atomic_check
>
> Mikita Lipski (1):
> drm/amd/display: Add a clock source to a sharing pipe
>
> Pratik Vishwakarma (1):
> drm/amd/display: get_atomic_property missing for drm_connector_funcs
>
> Rex Zhu (4):
> drm/amd/display: mclk level can't be 0.
> drm/amdgpu: get display info from DC when DC enabled.
> drm/amd/display: call amdgpu_dm_fini when hw_fini.
> Revert "drm/amd/display: Match actual state during S3 resume."
>
> Reza Amini (3):
> drm/amd/display: handle unsupported sink types
> drm/amd/display: remove surface validation against stream rect
> drm/amd/display: refactor member referencing to improve readability
>
> Roman Li (22):
> drm/amd/display: fix REG_SET_5 macro
> drm/amd/display: fix hotplug regression after code refactor
> drm/amd/display: fix gamma for dpms usecase
> drm/amd/display: increase timeout for dmif dealloc
> drm/amd/display: Fix 5th display lightup on Vega10
> drm/amd/display: fix index and union overwrite in compressor
> drm/amd/display: Fix eDP panel light-up
> drm/amd/display: safeguard compressor api
> drm/amd/display: add detect caps for edp
> drm/amd/display: Initial prototype of FBC implementation
> drm/amd/display: Initial prototype of FBC implementation
> drm/amd/display: fix gamma distortion on Vega
> drm/amd/display: Fix FBC compilation
> drm/amd/display: increase polling interval for fbc status update
> drm/amd/display: Fix FBC disable for stereo
> drm/amd/display: program fbc for scatter/gather
> drm/amd/display: Disable FBC for linear tiling
> drm/amd/display: Add FBC on/off to front-end programming
> drm/amd/display: fix multi-display on CZ
> drm/amd/display: Fix hotplug after s3 resume.
> drm/amd/display: Fix irq enable/disable on resume.
> drm/amd/display: use configurable FBC option in dm
>
> ShihChen Chen (1):
> drm/amd/display: make tile changing run at ISR
>
> Shirish S (15):
> drm/amd/display: update plane functionalities
> drm/amd/display: initialize YUV plane capabilities
> drm/amd/display: update the YUV plane offsets
> drm/amd/display: make dc_commit_surfaces_to_stream() re-entrant
> drm/amd/display: re-order the luma chroma addres updation
> drm/amd/display: update NV12/NV21 as the YUV format
> drm/amd/display: remove get_position() of underlay
> drm/amd/display: dce110: fix plane validation
> drm/amd/display: don't clean-up bottom pipe plane_state
> drm/amd/display: make FBC configurable option
> drm/amd/display: add hardware_planes_only to list of affected planes
> drm/amd/display : add high part address calculation for underlay
> drm/amd/display: fix high part address in dm_plane_helper_prepare_fb()
> drm/amd/display: check if modeset is required before adding plane
> drm/amd/display: fix null pointer dereference
>
> SivapiriyanKumarasamy (2):
> drm/amd/display: Program stream's csc matrix instead of using default
> drm/amd/display: Pull transfer func defines into DC
>
> Sylvia Tsai (4):
> drm/amd/display: Set ignore_msa_timing flag for freesync modes
> drm/amd/display: Adding dm controlled signal type in dc_stream
> drm/amd/display: Parse scanline registers
> drm/amd/display: PSR Refactor
>
> Tom St Denis (19):
> drm/amd/display: Tidy up dce120_timing_generator_enable_advanced_request()
> drm/amd/display: Fix indentation in dce120_tg_program_timing()
> drm/amd/display: Make dce120_tg_is_blanked() more legible
> drm/amd/display: Clean up indentation in dce120_tg_set_blank()
> drm/amd/display: Tidy up dce120_clock_source_create()
> drm/amd/display: Tidy up mem_input_program_surface_flip_and_addr()
> drm/amd/display: Simplify dm_late_init()
> drm/amd/display: Fix indentation in dm_suspend()
> drm/amd/display: Fix indentation in dm_resume()
> drm/amd/display: Fix brace style in
> amdgpu_dm_update_connector_after_detect()
> drm/amd/display: Fix brace style in dm_handle_hpd_rx_irq()
> drm/amd/display: Simplify handle_hpd_rx_irq()
> drm/amd/display: Fix brace style in amdgpu_dm_initialize_drm_device()
> drm/amd/display: Replace block with strncpy() in fill_audio_info()
> drm/amd/display: Fix indentation in create_eml_sink()
> drm/amd/display: Tidy up dm_drm_plane_reset()
> drm/amd/display: Fix brace style in amdgpu_dm_connector_ddc_get_modes()
> drm/amd/display: Remove needless cast in amdgpu_dm_connector_init()
> drm/amd/display: Fix brace style
>
> Tony Cheng (81):
> drm/amd/display: refactor DCE11 DVVM
> drm/amd/display: fix indexing bug
> drm/amd/display: avoid apply_clk_constraints for address update
> drm/amd/display: 4k split black out due to incorrect cursor
> drm/amd/display: add pitch to cursor attributes
> drm/amd/display: track cursor width in ipp
> drm/amd/display: Allow multiple instance of DTO regs
> drm/amd/display: debug opt disable hdmi deep color
> drm/amd/display: debug option to disable color module fucntionality
> drm/amd/display: enable option to disable HDR related updates.
> drm/amd/display: simplify link_encoder
> drm/amd/display: limit HBR3 support to Polaris and up
> drm/amd/display: fix Infoframe byte 28-31 doesn't get written
> out to register
> drm/amd/display: remove HDMI deep color debug flag
> drm/amd/display: mode change without breaking unaffected streams
> drm/amd/display: assert if mask is 0 in set_reg_field_value_ex
> drm/amd/display: remove un-used defines and dead code
> drm/amd/display: remove hw_crtc_timing
> drm/amd/display: remove hw_info_frame
> drm/amd/display: remove SIGNAL_TYPE_WIRELESS
> drm/amd/display: remove dead code
> drm/amd/display: remove calculate_adjustments in conversion.h
> drm/amd/display: enable clock gating and dchubp power gating
> drm/amd/display: refactor clk_resync to avoid assertion
> drm/amd/display: rename BGRA8888 to ABGR8888
> drm/amd/display: improve debug-ability
> drm/amd/display: refactor dc_update_surfaces_for_stream
> drm/amd/display: clean up redundant logic
> drm/amd/display: enable color gamma programming
> drm/amd/display: report cursor size base on the ASIC
> drm/amd/display: clean up and simply locking logic
> drm/amd/display: remove independent lock as we have no use case today
> drm/amd/display: use extended receiver cap for dpcd ver
> drm/amd/display: support CP2520 pattern 2 for HBR2 compliance
> drm/amd/display: support PHY compliance automation for CP2520
> pattern 1/2/3
> drm/amd/display: use CP2520-3 for PHY compliance automation
> drm/amd/display: move tg_color to dc_hw_types
> drm/amd/display: clarify delay param for REG_WAIT
> drm/amd/display: decouple resource_pool from resource_context
> drm/amd/display: move drr_params definition to TG
> drm/amd/display: do not set_mpc_tree if tree is already setup
> drm/amd/display: read VM settings from MMHUB
> drm/amd/display: fix YUV surface address programming sequence
> drm/amd/display: disable forced stutter disable after
> programming watermark
> drm/amd/display: update DPM bounding box
> drm/amd/display: change order of HUBP and MPC disable according
> to HW guide
> drm/amd/display: avoid disabling opp clk before hubp is blanked.
> drm/amd/display: ensure OTG is locked before proceeding
> drm/amd/display: revert order change of HUBP and MPC disable
> drm/amd/display: register programming consolidation
> drm/amd/display: plumbing to allow easy print of HW state for DTN
> drm/amd/display: mpo debug sanity checks
> drm/amd/display: mpcc disconnect and pipe pg in multi-display
> drm/amd/display: move VGA to HWSS from TG
> drm/amd/display: move ocsc programming from opp to dpp
> drm/amd/display: separate plane disable sequence
> drm/amd/display: log HUBP using DTN logging
> drm/amd/display: log HW state when we about to encounter DF DPM hang
> drm/amd/display: log underflow
> drm/amd/display: use some sensible time out
> drm/amd/display: log watermarks
> drm/amd/display: remove fake address reporting when blank
> drm/amd/display: refactor pplib/smu communication
> drm/amd/display: memory leak dwb
> drm/amd/display: version 3.1.01
> drm/amd/display: retire dm_pp_apply_clock_for_voltage_request
> drm/amd/display: delete dead code
> drm/amd/display: fix default dithering
> drm/amd/display: version 3.1.02
> drm/amd/display: enable optional pipe split for single display
> drm/amd/display: add option to disable DCC for DCC 128b request
> drm/amd/display: option to maximize lb usage
> drm/amd/display: fix bug in force_single_disp_pipe_split
> drm/amd/display: dal 3.1.03
> drm/amd/display: align DCLK to voltage level
> drm/amd/display: wrong VM setting cause invalid DF request from DCN
> drm/amd/display: dal 3.1.04
> drm/amd/display: dal 3.1.05
> drm/amd/display: DAL 3.1.06
> drm/amd/display: dal 3.1.07
> drm/amd/display: default force_single_disp_pipe_split = 1 on RV
>
> Vikrant Mhaske (1):
> drm/amd/display: Fix DCN compile errors
>
> Vitaly Prosyak (14):
> drm/amd/display: re gamma programming
> drm/amd/display: Adding 10 bpcc video P010 format
> drm/amd/display: Enable regamma 25 segments and use double buffer.
> drm/amd/display: stereo support
> drm/amd/display: Add support for programming stereo sync
> drm/amd/display: RV stereo support
> drm/amd/display: RV stereo support
> drm/amd/display: RV stereo support
> drm/amd/display: Fix for hdmi frame pack stereo
> drm/amd/display: Rename trasnform to dpp for dcn's
> drm/amd/display: Move view port registers and programming to
> memory input.
> drm/amd/display: Add interfaces for new CM blocks
> drm/amd/display: Update DPP registers
> drm/amd/display: [RV] bug in cm programming
>
> Wenjing Liu (15):
> drm/amd/display: Update rgb limited range csc matrix calculation
> drm/amd/display: use rgb full range as default quantization for non HDMI
> drm/amd/display: Return hpd_irq_dpcd from hpd_rx handler
> drm/amd/display: Move verify link cap after read edid
> drm/amd/display: Cache edp config in dc link
> drm/amd/display: re-enable audio after LT test
> drm/amd/display: retry LT on failing LT in automated request
> drm/amd/display: Fix return value from rx irq handler on up request
> drm/amd/display: Safe stream encoder id in stream_status
> drm/amd/display: do not reset lane count in EQ fallback
> drm/amd/display: Use TPS4 instead of CP2520_3 for phy pattern 7
> drm/amd/display: set CP2520 Test pattern to use
> DP_TEST_PATTERN_HBR2_COMPLIANCE_EYE
> drm/amd/display: set cp25201 to use TPS4
> drm/amd/display: update link type to mst before topology discovery
> drm/amd/display: disconnect on HPD low even if edid is the same
>
> Wesley Chalmers (1):
> drm/amd/display: Change DTN_INFO macro
>
> Xiangliang Yu (1):
> drm/amdgpu/virt: disable dc
>
> Xiaojie Yuan (1):
> drm/amd/display: Fix misuse of plane state destroy helper
>
> Yongqiang Sun (60):
> drm/amd/display: Add missing GRPH register definition
> drm/amd/display: Added timing sync trace.
> drm/amd/display: Moved swizzle parameter translation to dc.
> drm/amd/display: Resolved HDMI assert in dal
> drm/amd/display: Add debug option to disable dmcu
> drm/amd/display: don't crash if stream is NULL when trying to share clocks
> drm/amd/display: reset transfer_func to NULL on release
> drm/amd/display: Fixed crash
> drm/amd/display: Fixed split update bug.
> drm/amd/display: Fixed crash caused by unnecessary clock source
> in split pipe.
> drm/amd/display: Set gamma to NULL at release
> drm/amd/display: Check hdr support before setting.
> drm/amd/display: Don't fail validation for SIGNAL_TYPE_VIRTUAL
> drm/amd/display: Pass visible flag into surface programming
> drm/amd/display: Null check clock source.
> drm/amd/display: Change update surface condition, fix surface
> transition corruption.
> drm/amd/display: Fixed 4K black issue by refactor update surface.
> drm/amd/display: Expose hw sequencer gamma function
> drm/amd/display: Change power gating off sequence to fix hang
> drm/amd/display: Fixed color temperature corruption.
> drm/amd/display: After program backend, also program front end regs.
> drm/amd/display: Do not copy bottom pipe when map resource.
> drm/amd/display: Use stream_enc to get head pipe.
> drm/amd/display: Power on front end during set mode.
> drm/amd/display: Fix MPO exit and cursor issue.
> drm/amd/display: Ignore visible flag when check surface update type.
> drm/amd/display: Add same check as reset pipes for programing
> backend regs.
> drm/amd/display: change mpo surface update check condition.
> drm/amd/display: set correct v_total_min and v_total_max for dce.
> drm/amd/display: Make sure v_total_min and max not less than v_total.
> drm/amd/display: Disable cursor on video surface.
> drm/amd/display: Only apply ctx for specific surface.
> drm/amd/display: Add 64KB_S_T and 64KB_D_T swizzle mode.
> drm/amd/display: Use surface update inuse for pending check.
> drm/amd/display: disable dcc when reset front end.
> drm/amd/display: Disable pipe split.
> drm/amd/display: set drr during program timing.
> drm/amd/display: Disable timestamp and entry heading
> drm/amd/display: Keep blank until set visibility to true after mode switch
> drm/amd/display: Implement tmz surface.
> drm/amd/display: Clear water mark change request bit before programing.
> drm/amd/display: Workaround for underflow.
> drm/amd/display: blank otg before power gate front end.
> drm/amd/display: Enable double buffer when unblank crtc.
> drm/amd/display: work around for 8k sleep crash
> drm/amd/display: Remove mpc from bios left over, keep double
> buffer disabled.
> drm/amd/display: Program reg for vertical interrupt.
> drm/amd/display: Disable OTG double buffer.
> drm/amd/display: Added negative check for vertical line start.
> drm/amd/display: Remove sanity check.
> drm/amd/display: Fixed validation return wrong result.
> drm/amd/display: Fixed incorrect return value for validaton
> drm/amd/display: Early return when turn off a plane.
> drm/amd/display: Only reset top pipe back end.
> drm/amd/display: Enable double buffer as per vertical interrupt enabled.
> drm/amd/display: Program front end first when set mode.
> drm/amd/display: Fixed extend to second screen mode hang
> drm/amd/display: wa to program split pipedegamma regs after mode set.
> drm/amd/display: Fixed switching mode half screen gamma incorrect.
> drm/amd/display: WA for 3 display play video hot plug.
>
> Yue Hin Lau (29):
> drm/amd/display: Add DC interface for custom CSC matrix
> drm/amd/display: move RGAM programming from opp to dpp
> drm/amd/display: move ocsc programming from opp to dpp
> drm/amd/display: move ocsc programming from opp to dpp for dce
> drm/amd/display: move regamma from opp to dpp for dce
> drm/amd/display: move vm registers to hwsequencer
> drm/amd/display: separate scl functions out from dcn10_dpp
> drm/amd/display: separate cm functions out from dcn10_dpp
> drm/amd/display: cleanup naming of DCN DPP functions
> drm/amd/display: move cm registers from ipp to dpp_cm
> drm/amd/display: clean up header file includes
> drm/amd/display: clean up functions in dcn10_dpp_cm
> drm/amd/display: clean up cm register programming functions
> drm/amd/display: seperate dpp_cm_helper functions into new file
> drm/amd/display: move dwb registers to header file
> drm/amd/display: Refactor dcn10_dpp_cm_helper to dcn10_cm_common
> drm/amd/display: fixing register includes
> drm/amd/display: removing remaining register definitions work around
> drm/amd/display: moving backlight registers to hwsequencer
> drm/amd/display: edp backlight regression fix
> drm/amd/display: moving cursor functions from ipp to mem_input
> drm/amd/display: Expose some mem_input functions for reuse
> drm/amd/display: renaming mem input to hubp
> drm/amd/display: Making hubp1_program_surface_config public
> drm/amd/display: rename struct mem_input to hubp for dcn
> drm/amd/display: renaming filename for hubp
> drm/amd/display: add null check for cursor functions
> drm/amd/display: rename transform to dpp for dcn
> drm/amd/display: rename dscl functions
>
> Zeyu Fan (24):
> drm/amd/display: Fix hdmi not lighting up on Hawaii.
> drm/amd/display: Fix bugs causing Hawaii and Bonaire not light up.
> drm/amd/display: Fix HDMI scaling corruption issue.
> drm/amd/display: OPP refactor and consolidation for DCE.
> drm/amd/display: Fix link retraining hw sequence
> drm/amd/display: Fix missing conditions in hw sequencer.
> drm/amd/display: Fix program pix clk logic to unblock deep color set.
> drm/amd/display: Fix logic that causes segfault on DP display.
> drm/amd/display: Add query_ddc_data function
> drm/amd/display: Fix error where wrong payload size is given.
> drm/amd/display: Refactor on dc_sink structure.
> drm/amd/display: Temporary disable PSR for HBR2 & HBR3
> drm/amd/display: Fix hotspot programming during set cursor position.
> drm/amd/display: Block YCbCr formats for eDP. Revert previous change.
> drm/amd/display: Make dc_link param const in set_drive_settings
> drm/amd/display: Add FORCE_HDR timing flag
> drm/amd/display: Add function to log connectivity
> drm/amd/display: Call program_gamut explicitly instead of entire set_plane
> drm/amd/display: Save hpd_src for dc_link
> drm/amd/display: Set i2c speed to 100khz for DCE11.2 and later.
> drm/amd/display: Implement logic for hdmi info packet bits.
> drm/amd/display: Move DCHUBBUB block from MemInput to HW sequencer.
> drm/amd/display: Clean up some DCN1 guards
> drm/amd/display: Implement HDMI retimer settings for RV AM4 support.
>
> jimqu (1):
> drm/amd/display: Fix memory corruption issue.
>
> kbuild test robot (4):
> drm/amdgpu/display: fix semicolon.cocci warnings
> drm/amdgpu/display: fix semicolon.cocci warnings
> drm/amd/dc: fix semicolon.cocci warnings
> drm/amd/display: fix ifnullfree.cocci warnings
>
> pana (1):
> drm/amd/display: Add 2X Cursor Magnification Code
>
> xhdu (1):
> drm/amd/display: Add audio/video ContainerId implementation
>
> Documentation/gpu/todo.rst | 10 +
> drivers/gpu/drm/amd/amdgpu/Kconfig | 1 +
> drivers/gpu/drm/amd/amdgpu/Makefile | 17 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu.h | 16 +
> drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 59 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 105 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 4 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_display.h | 33 +
> drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.h | 2 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 26 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 8 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 29 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 97 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/cik.c | 17 +
> drivers/gpu/drm/amd/amdgpu/soc15.c | 12 +
> drivers/gpu/drm/amd/amdgpu/vi.c | 21 +
> drivers/gpu/drm/amd/display/Kconfig | 45 +
> drivers/gpu/drm/amd/display/Makefile | 22 +
> drivers/gpu/drm/amd/display/TODO | 107 +
> drivers/gpu/drm/amd/display/amdgpu_dm/Makefile | 17 +
> drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4925 ++++++++++++++++
> drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 259 +
> .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 498 ++
> .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 755 +++
> .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.h | 102 +
> .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 446 ++
> .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.h | 35 +
> .../drm/amd/display/amdgpu_dm/amdgpu_dm_services.c | 379 ++
> drivers/gpu/drm/amd/display/dc/Makefile | 33 +
> drivers/gpu/drm/amd/display/dc/basics/Makefile | 11 +
> drivers/gpu/drm/amd/display/dc/basics/conversion.c | 104 +
> drivers/gpu/drm/amd/display/dc/basics/conversion.h | 46 +
> drivers/gpu/drm/amd/display/dc/basics/fixpt31_32.c | 567 ++
> drivers/gpu/drm/amd/display/dc/basics/fixpt32_32.c | 161 +
> .../gpu/drm/amd/display/dc/basics/grph_object_id.c | 75 +
> .../gpu/drm/amd/display/dc/basics/log_helpers.c | 102 +
> drivers/gpu/drm/amd/display/dc/basics/logger.c | 397 ++
> drivers/gpu/drm/amd/display/dc/basics/logger.h | 30 +
> drivers/gpu/drm/amd/display/dc/basics/vector.c | 307 +
> drivers/gpu/drm/amd/display/dc/bios/Makefile | 27 +
> drivers/gpu/drm/amd/display/dc/bios/bios_parser.c | 3871 +++++++++++++
> drivers/gpu/drm/amd/display/dc/bios/bios_parser.h | 33 +
> drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c | 1934 +++++++
> drivers/gpu/drm/amd/display/dc/bios/bios_parser2.h | 33 +
> .../drm/amd/display/dc/bios/bios_parser_common.c | 288 +
> .../drm/amd/display/dc/bios/bios_parser_common.h | 33 +
> .../drm/amd/display/dc/bios/bios_parser_helper.c | 82 +
> .../drm/amd/display/dc/bios/bios_parser_helper.h | 40 +
> .../amd/display/dc/bios/bios_parser_interface.c | 56 +
> .../display/dc/bios/bios_parser_types_internal.h | 72 +
> .../display/dc/bios/bios_parser_types_internal2.h | 74 +
> .../gpu/drm/amd/display/dc/bios/command_table.c | 2424 ++++++++
> .../gpu/drm/amd/display/dc/bios/command_table.h | 102 +
> .../gpu/drm/amd/display/dc/bios/command_table2.c | 812 +++
> .../gpu/drm/amd/display/dc/bios/command_table2.h | 105 +
> .../drm/amd/display/dc/bios/command_table_helper.c | 290 +
> .../drm/amd/display/dc/bios/command_table_helper.h | 90 +
> .../amd/display/dc/bios/command_table_helper2.c | 265 +
> .../amd/display/dc/bios/command_table_helper2.h | 82 +
> .../dc/bios/dce110/command_table_helper_dce110.c | 364 ++
> .../dc/bios/dce110/command_table_helper_dce110.h | 34 +
> .../dc/bios/dce112/command_table_helper2_dce112.c | 418 ++
> .../dc/bios/dce112/command_table_helper2_dce112.h | 34 +
> .../dc/bios/dce112/command_table_helper_dce112.c | 418 ++
> .../dc/bios/dce112/command_table_helper_dce112.h | 34 +
> .../dc/bios/dce80/command_table_helper_dce80.c | 354 ++
> .../dc/bios/dce80/command_table_helper_dce80.h | 33 +
> drivers/gpu/drm/amd/display/dc/calcs/Makefile | 18 +
> drivers/gpu/drm/amd/display/dc/calcs/bw_fixed.c | 191 +
> .../gpu/drm/amd/display/dc/calcs/custom_float.c | 197 +
> drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c | 3257 +++++++++++
> .../gpu/drm/amd/display/dc/calcs/dcn_calc_auto.c | 1899 ++++++
> .../gpu/drm/amd/display/dc/calcs/dcn_calc_auto.h | 37 +
> .../gpu/drm/amd/display/dc/calcs/dcn_calc_math.c | 120 +
> .../gpu/drm/amd/display/dc/calcs/dcn_calc_math.h | 40 +
> drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c | 1626 ++++++
> drivers/gpu/drm/amd/display/dc/core/dc.c | 1677 ++++++
> drivers/gpu/drm/amd/display/dc/core/dc_debug.c | 359 ++
> .../gpu/drm/amd/display/dc/core/dc_hw_sequencer.c | 101 +
> drivers/gpu/drm/amd/display/dc/core/dc_link.c | 2367 ++++++++
> drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c | 775 +++
> drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 2587 +++++++++
> drivers/gpu/drm/amd/display/dc/core/dc_link_hwss.c | 331 ++
> drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 2795 +++++++++
> drivers/gpu/drm/amd/display/dc/core/dc_sink.c | 104 +
> drivers/gpu/drm/amd/display/dc/core/dc_stream.c | 398 ++
> drivers/gpu/drm/amd/display/dc/core/dc_surface.c | 193 +
> drivers/gpu/drm/amd/display/dc/dc.h | 1103 ++++
> drivers/gpu/drm/amd/display/dc/dc_bios_types.h | 218 +
> drivers/gpu/drm/amd/display/dc/dc_ddc_types.h | 115 +
> drivers/gpu/drm/amd/display/dc/dc_dp_types.h | 467 ++
> drivers/gpu/drm/amd/display/dc/dc_helper.c | 171 +
> drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 706 +++
> drivers/gpu/drm/amd/display/dc/dc_types.h | 652 +++
> drivers/gpu/drm/amd/display/dc/dce/Makefile | 15 +
> drivers/gpu/drm/amd/display/dc/dce/dce_abm.c | 485 ++
> drivers/gpu/drm/amd/display/dc/dce/dce_abm.h | 228 +
> drivers/gpu/drm/amd/display/dc/dce/dce_audio.c | 945 +++
> drivers/gpu/drm/amd/display/dc/dce/dce_audio.h | 148 +
> .../gpu/drm/amd/display/dc/dce/dce_clock_source.c | 1383 +++++
> .../gpu/drm/amd/display/dc/dce/dce_clock_source.h | 145 +
> drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c | 827 +++
> drivers/gpu/drm/amd/display/dc/dce/dce_clocks.h | 137 +
> drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c | 620 ++
> drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.h | 218 +
> drivers/gpu/drm/amd/display/dc/dce/dce_hwseq.c | 209 +
> drivers/gpu/drm/amd/display/dc/dce/dce_hwseq.h | 631 ++
> drivers/gpu/drm/amd/display/dc/dce/dce_ipp.c | 268 +
> drivers/gpu/drm/amd/display/dc/dce/dce_ipp.h | 238 +
> .../gpu/drm/amd/display/dc/dce/dce_link_encoder.c | 1379 +++++
> .../gpu/drm/amd/display/dc/dce/dce_link_encoder.h | 268 +
> drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c | 700 +++
> drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.h | 347 ++
> drivers/gpu/drm/amd/display/dc/dce/dce_opp.c | 567 ++
> drivers/gpu/drm/amd/display/dc/dce/dce_opp.h | 310 +
> .../gpu/drm/amd/display/dc/dce/dce_scl_filters.c | 1119 ++++
> .../drm/amd/display/dc/dce/dce_stream_encoder.c | 1617 ++++++
> .../drm/amd/display/dc/dce/dce_stream_encoder.h | 733 +++
> drivers/gpu/drm/amd/display/dc/dce/dce_transform.c | 1463 +++++
> drivers/gpu/drm/amd/display/dc/dce/dce_transform.h | 516 ++
> drivers/gpu/drm/amd/display/dc/dce100/Makefile | 23 +
> .../amd/display/dc/dce100/dce100_hw_sequencer.c | 152 +
> .../amd/display/dc/dce100/dce100_hw_sequencer.h | 42 +
> .../drm/amd/display/dc/dce100/dce100_resource.c | 933 +++
> .../drm/amd/display/dc/dce100/dce100_resource.h | 26 +
> drivers/gpu/drm/amd/display/dc/dce110/Makefile | 12 +
> .../drm/amd/display/dc/dce110/dce110_compressor.c | 522 ++
> .../drm/amd/display/dc/dce110/dce110_compressor.h | 81 +
> .../amd/display/dc/dce110/dce110_hw_sequencer.c | 2987 ++++++++++
> .../amd/display/dc/dce110/dce110_hw_sequencer.h | 81 +
> .../drm/amd/display/dc/dce110/dce110_mem_input_v.c | 1052 ++++
> .../drm/amd/display/dc/dce110/dce110_mem_input_v.h | 35 +
> .../drm/amd/display/dc/dce110/dce110_opp_csc_v.c | 738 +++
> .../amd/display/dc/dce110/dce110_opp_regamma_v.c | 555 ++
> .../gpu/drm/amd/display/dc/dce110/dce110_opp_v.c | 54 +
> .../gpu/drm/amd/display/dc/dce110/dce110_opp_v.h | 39 +
> .../drm/amd/display/dc/dce110/dce110_resource.c | 1327 +++++
> .../drm/amd/display/dc/dce110/dce110_resource.h | 49 +
> .../display/dc/dce110/dce110_timing_generator.c | 1966 +++++++
> .../display/dc/dce110/dce110_timing_generator.h | 273 +
> .../display/dc/dce110/dce110_timing_generator_v.c | 688 +++
> .../display/dc/dce110/dce110_timing_generator_v.h | 33 +
> .../drm/amd/display/dc/dce110/dce110_transform_v.c | 716 +++
> .../drm/amd/display/dc/dce110/dce110_transform_v.h | 58 +
> drivers/gpu/drm/amd/display/dc/dce112/Makefile | 10 +
> .../drm/amd/display/dc/dce112/dce112_compressor.c | 854 +++
> .../drm/amd/display/dc/dce112/dce112_compressor.h | 78 +
> .../amd/display/dc/dce112/dce112_hw_sequencer.c | 163 +
> .../amd/display/dc/dce112/dce112_hw_sequencer.h | 36 +
> .../drm/amd/display/dc/dce112/dce112_resource.c | 1283 ++++
> .../drm/amd/display/dc/dce112/dce112_resource.h | 61 +
> drivers/gpu/drm/amd/display/dc/dce120/Makefile | 11 +
> .../amd/display/dc/dce120/dce120_hw_sequencer.c | 257 +
> .../amd/display/dc/dce120/dce120_hw_sequencer.h | 36 +
> .../drm/amd/display/dc/dce120/dce120_resource.c | 1004 ++++
> .../drm/amd/display/dc/dce120/dce120_resource.h | 39 +
> .../display/dc/dce120/dce120_timing_generator.c | 1174 ++++
> .../display/dc/dce120/dce120_timing_generator.h | 40 +
> drivers/gpu/drm/amd/display/dc/dce80/Makefile | 13 +
> .../drm/amd/display/dc/dce80/dce80_compressor.c | 834 +++
> .../drm/amd/display/dc/dce80/dce80_compressor.h | 78 +
> .../drm/amd/display/dc/dce80/dce80_hw_sequencer.c | 117 +
> .../drm/amd/display/dc/dce80/dce80_hw_sequencer.h | 36 +
> .../gpu/drm/amd/display/dc/dce80/dce80_resource.c | 1257 ++++
> .../gpu/drm/amd/display/dc/dce80/dce80_resource.h | 47 +
> .../amd/display/dc/dce80/dce80_timing_generator.c | 239 +
> .../amd/display/dc/dce80/dce80_timing_generator.h | 45 +
> drivers/gpu/drm/amd/display/dc/dcn10/Makefile | 11 +
> .../gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.c | 123 +
> .../gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.h | 99 +
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.c | 481 ++
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h | 1386 +++++
> .../gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c | 816 +++
> .../gpu/drm/amd/display/dc/dcn10/dcn10_dpp_dscl.c | 702 +++
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.c | 960 +++
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.h | 683 +++
> .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 2958 ++++++++++
> .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.h | 38 +
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c | 70 +
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.h | 167 +
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_mpc.c | 363 ++
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_mpc.h | 138 +
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c | 351 ++
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.h | 186 +
> .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.c | 1466 +++++
> .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.h | 47 +
> .../amd/display/dc/dcn10/dcn10_timing_generator.c | 1203 ++++
> .../amd/display/dc/dcn10/dcn10_timing_generator.h | 374 ++
> drivers/gpu/drm/amd/display/dc/dm_helpers.h | 105 +
> drivers/gpu/drm/amd/display/dc/dm_pp_smu.h | 131 +
> drivers/gpu/drm/amd/display/dc/dm_services.h | 387 ++
> drivers/gpu/drm/amd/display/dc/dm_services_types.h | 282 +
> drivers/gpu/drm/amd/display/dc/dml/Makefile | 22 +
> drivers/gpu/drm/amd/display/dc/dml/dc_features.h | 559 ++
> .../drm/amd/display/dc/dml/display_mode_enums.h | 111 +
> .../gpu/drm/amd/display/dc/dml/display_mode_lib.c | 138 +
> .../gpu/drm/amd/display/dc/dml/display_mode_lib.h | 50 +
> .../drm/amd/display/dc/dml/display_mode_structs.h | 557 ++
> .../gpu/drm/amd/display/dc/dml/display_mode_vba.c | 6124 ++++++++++++++++++++
> .../gpu/drm/amd/display/dc/dml/display_mode_vba.h | 598 ++
> .../drm/amd/display/dc/dml/display_rq_dlg_calc.c | 1763 ++++++
> .../drm/amd/display/dc/dml/display_rq_dlg_calc.h | 148 +
> .../amd/display/dc/dml/display_rq_dlg_helpers.c | 392 ++
> .../amd/display/dc/dml/display_rq_dlg_helpers.h | 47 +
> .../amd/display/dc/dml/dml1_display_rq_dlg_calc.c | 1905 ++++++
> .../amd/display/dc/dml/dml1_display_rq_dlg_calc.h | 67 +
> .../gpu/drm/amd/display/dc/dml/dml_common_defs.c | 43 +
> .../gpu/drm/amd/display/dc/dml/dml_common_defs.h | 39 +
> .../gpu/drm/amd/display/dc/dml/dml_inline_defs.h | 121 +
> .../gpu/drm/amd/display/dc/dml/soc_bounding_box.c | 69 +
> .../gpu/drm/amd/display/dc/dml/soc_bounding_box.h | 35 +
> drivers/gpu/drm/amd/display/dc/gpio/Makefile | 58 +
> .../amd/display/dc/gpio/dce110/hw_factory_dce110.c | 178 +
> .../amd/display/dc/gpio/dce110/hw_factory_dce110.h | 32 +
> .../display/dc/gpio/dce110/hw_translate_dce110.c | 387 ++
> .../display/dc/gpio/dce110/hw_translate_dce110.h | 34 +
> .../amd/display/dc/gpio/dce120/hw_factory_dce120.c | 197 +
> .../amd/display/dc/gpio/dce120/hw_factory_dce120.h | 32 +
> .../display/dc/gpio/dce120/hw_translate_dce120.c | 408 ++
> .../display/dc/gpio/dce120/hw_translate_dce120.h | 34 +
> .../amd/display/dc/gpio/dce80/hw_factory_dce80.c | 173 +
> .../amd/display/dc/gpio/dce80/hw_factory_dce80.h | 32 +
> .../amd/display/dc/gpio/dce80/hw_translate_dce80.c | 411 ++
> .../amd/display/dc/gpio/dce80/hw_translate_dce80.h | 32 +
> .../amd/display/dc/gpio/dcn10/hw_factory_dcn10.c | 192 +
> .../amd/display/dc/gpio/dcn10/hw_factory_dcn10.h | 32 +
> .../amd/display/dc/gpio/dcn10/hw_translate_dcn10.c | 408 ++
> .../amd/display/dc/gpio/dcn10/hw_translate_dcn10.h | 34 +
> drivers/gpu/drm/amd/display/dc/gpio/ddc_regs.h | 150 +
> .../display/dc/gpio/diagnostics/hw_factory_diag.c | 63 +
> .../display/dc/gpio/diagnostics/hw_factory_diag.h | 32 +
> .../dc/gpio/diagnostics/hw_translate_diag.c | 40 +
> .../dc/gpio/diagnostics/hw_translate_diag.h | 34 +
> drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c | 272 +
> drivers/gpu/drm/amd/display/dc/gpio/gpio_regs.h | 45 +
> drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 591 ++
> drivers/gpu/drm/amd/display/dc/gpio/gpio_service.h | 56 +
> drivers/gpu/drm/amd/display/dc/gpio/hpd_regs.h | 79 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.c | 232 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.h | 46 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c | 107 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_factory.h | 74 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_gpio.c | 203 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_gpio.h | 144 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.c | 162 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.h | 46 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_translate.c | 90 +
> drivers/gpu/drm/amd/display/dc/gpio/hw_translate.h | 50 +
> drivers/gpu/drm/amd/display/dc/i2caux/Makefile | 78 +
> drivers/gpu/drm/amd/display/dc/i2caux/aux_engine.c | 571 ++
> drivers/gpu/drm/amd/display/dc/i2caux/aux_engine.h | 119 +
> .../amd/display/dc/i2caux/dce100/i2caux_dce100.c | 105 +
> .../amd/display/dc/i2caux/dce100/i2caux_dce100.h | 32 +
> .../display/dc/i2caux/dce110/aux_engine_dce110.c | 470 ++
> .../display/dc/i2caux/dce110/aux_engine_dce110.h | 78 +
> .../dc/i2caux/dce110/i2c_hw_engine_dce110.c | 570 ++
> .../dc/i2caux/dce110/i2c_hw_engine_dce110.h | 210 +
> .../dc/i2caux/dce110/i2c_sw_engine_dce110.c | 160 +
> .../dc/i2caux/dce110/i2c_sw_engine_dce110.h | 43 +
> .../amd/display/dc/i2caux/dce110/i2caux_dce110.c | 311 +
> .../amd/display/dc/i2caux/dce110/i2caux_dce110.h | 53 +
> .../amd/display/dc/i2caux/dce112/i2caux_dce112.c | 128 +
> .../amd/display/dc/i2caux/dce112/i2caux_dce112.h | 32 +
> .../amd/display/dc/i2caux/dce120/i2caux_dce120.c | 118 +
> .../amd/display/dc/i2caux/dce120/i2caux_dce120.h | 32 +
> .../display/dc/i2caux/dce80/i2c_hw_engine_dce80.c | 875 +++
> .../display/dc/i2caux/dce80/i2c_hw_engine_dce80.h | 54 +
> .../display/dc/i2caux/dce80/i2c_sw_engine_dce80.c | 173 +
> .../display/dc/i2caux/dce80/i2c_sw_engine_dce80.h | 43 +
> .../drm/amd/display/dc/i2caux/dce80/i2caux_dce80.c | 284 +
> .../drm/amd/display/dc/i2caux/dce80/i2caux_dce80.h | 38 +
> .../drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.c | 118 +
> .../drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.h | 32 +
> .../display/dc/i2caux/diagnostics/i2caux_diag.c | 97 +
> .../display/dc/i2caux/diagnostics/i2caux_diag.h | 32 +
> drivers/gpu/drm/amd/display/dc/i2caux/engine.h | 120 +
> .../gpu/drm/amd/display/dc/i2caux/engine_base.c | 52 +
> drivers/gpu/drm/amd/display/dc/i2caux/i2c_engine.c | 118 +
> drivers/gpu/drm/amd/display/dc/i2caux/i2c_engine.h | 113 +
> .../amd/display/dc/i2caux/i2c_generic_hw_engine.c | 284 +
> .../amd/display/dc/i2caux/i2c_generic_hw_engine.h | 77 +
> .../gpu/drm/amd/display/dc/i2caux/i2c_hw_engine.c | 244 +
> .../gpu/drm/amd/display/dc/i2caux/i2c_hw_engine.h | 80 +
> .../gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.c | 601 ++
> .../gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.h | 81 +
> drivers/gpu/drm/amd/display/dc/i2caux/i2caux.c | 485 ++
> drivers/gpu/drm/amd/display/dc/i2caux/i2caux.h | 122 +
> drivers/gpu/drm/amd/display/dc/inc/bw_fixed.h | 166 +
> drivers/gpu/drm/amd/display/dc/inc/clock_source.h | 182 +
> drivers/gpu/drm/amd/display/dc/inc/compressor.h | 136 +
> drivers/gpu/drm/amd/display/dc/inc/core_status.h | 50 +
> drivers/gpu/drm/amd/display/dc/inc/core_types.h | 283 +
> drivers/gpu/drm/amd/display/dc/inc/custom_float.h | 40 +
> drivers/gpu/drm/amd/display/dc/inc/dc_link_ddc.h | 141 +
> drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h | 64 +
> drivers/gpu/drm/amd/display/dc/inc/dce_calcs.h | 481 ++
> drivers/gpu/drm/amd/display/dc/inc/dcn_calcs.h | 635 ++
> drivers/gpu/drm/amd/display/dc/inc/hw/abm.h | 48 +
> drivers/gpu/drm/amd/display/dc/inc/hw/audio.h | 62 +
> .../gpu/drm/amd/display/dc/inc/hw/display_clock.h | 85 +
> drivers/gpu/drm/amd/display/dc/inc/hw/dmcu.h | 50 +
> drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h | 134 +
> drivers/gpu/drm/amd/display/dc/inc/hw/gpio.h | 86 +
> drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h | 105 +
> drivers/gpu/drm/amd/display/dc/inc/hw/hw_shared.h | 141 +
> drivers/gpu/drm/amd/display/dc/inc/hw/ipp.h | 112 +
> .../gpu/drm/amd/display/dc/inc/hw/link_encoder.h | 134 +
> drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h | 175 +
> drivers/gpu/drm/amd/display/dc/inc/hw/mpc.h | 61 +
> drivers/gpu/drm/amd/display/dc/inc/hw/opp.h | 289 +
> .../gpu/drm/amd/display/dc/inc/hw/stream_encoder.h | 130 +
> .../drm/amd/display/dc/inc/hw/timing_generator.h | 183 +
> drivers/gpu/drm/amd/display/dc/inc/hw/transform.h | 311 +
> drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 197 +
> drivers/gpu/drm/amd/display/dc/inc/link_hwss.h | 79 +
> drivers/gpu/drm/amd/display/dc/inc/reg_helper.h | 392 ++
> drivers/gpu/drm/amd/display/dc/inc/resource.h | 172 +
> drivers/gpu/drm/amd/display/dc/irq/Makefile | 48 +
> .../amd/display/dc/irq/dce110/irq_service_dce110.c | 430 ++
> .../amd/display/dc/irq/dce110/irq_service_dce110.h | 53 +
> .../amd/display/dc/irq/dce120/irq_service_dce120.c | 289 +
> .../amd/display/dc/irq/dce120/irq_service_dce120.h | 34 +
> .../amd/display/dc/irq/dce80/irq_service_dce80.c | 303 +
> .../amd/display/dc/irq/dce80/irq_service_dce80.h | 35 +
> .../amd/display/dc/irq/dcn10/irq_service_dcn10.c | 356 ++
> .../amd/display/dc/irq/dcn10/irq_service_dcn10.h | 34 +
> drivers/gpu/drm/amd/display/dc/irq/irq_service.c | 170 +
> drivers/gpu/drm/amd/display/dc/irq/irq_service.h | 85 +
> drivers/gpu/drm/amd/display/dc/irq_types.h | 193 +
> drivers/gpu/drm/amd/display/dc/os_types.h | 96 +
> drivers/gpu/drm/amd/display/dc/virtual/Makefile | 9 +
> .../amd/display/dc/virtual/virtual_link_encoder.c | 124 +
> .../amd/display/dc/virtual/virtual_link_encoder.h | 34 +
> .../display/dc/virtual/virtual_stream_encoder.c | 136 +
> .../display/dc/virtual/virtual_stream_encoder.h | 39 +
> drivers/gpu/drm/amd/display/include/audio_types.h | 106 +
> .../amd/display/include/bios_parser_interface.h | 44 +
> .../drm/amd/display/include/bios_parser_types.h | 310 +
> drivers/gpu/drm/amd/display/include/dal_asic_id.h | 143 +
> drivers/gpu/drm/amd/display/include/dal_types.h | 49 +
> .../drm/amd/display/include/ddc_service_types.h | 154 +
> drivers/gpu/drm/amd/display/include/dpcd_defs.h | 149 +
> drivers/gpu/drm/amd/display/include/fixed31_32.h | 466 ++
> drivers/gpu/drm/amd/display/include/fixed32_32.h | 129 +
> .../gpu/drm/amd/display/include/gpio_interface.h | 92 +
> .../amd/display/include/gpio_service_interface.h | 105 +
> drivers/gpu/drm/amd/display/include/gpio_types.h | 332 ++
> .../amd/display/include/grph_object_ctrl_defs.h | 445 ++
> .../gpu/drm/amd/display/include/grph_object_defs.h | 140 +
> .../gpu/drm/amd/display/include/grph_object_id.h | 294 +
> .../gpu/drm/amd/display/include/i2caux_interface.h | 92 +
> .../amd/display/include/irq_service_interface.h | 51 +
> .../drm/amd/display/include/link_service_types.h | 170 +
> .../gpu/drm/amd/display/include/logger_interface.h | 188 +
> drivers/gpu/drm/amd/display/include/logger_types.h | 166 +
> .../gpu/drm/amd/display/include/set_mode_types.h | 107 +
> drivers/gpu/drm/amd/display/include/signal_types.h | 95 +
> drivers/gpu/drm/amd/display/include/vector.h | 150 +
> .../gpu/drm/amd/display/modules/freesync/Makefile | 10 +
> .../drm/amd/display/modules/freesync/freesync.c | 1483 +++++
> .../gpu/drm/amd/display/modules/inc/mod_freesync.h | 167 +
> .../include/asic_reg/raven1/DCN/dcn_1_0_offset.h | 6 +
> .../include/asic_reg/raven1/DCN/dcn_1_0_sh_mask.h | 5 +
> .../include/asic_reg/vega10/DC/dce_12_0_offset.h | 4 +
> .../include/asic_reg/vega10/DC/dce_12_0_sh_mask.h | 8 +
> include/drm/drm_dp_helper.h | 20 +
> 368 files changed, 132395 insertions(+), 75 deletions(-)
> create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_display.h
> create mode 100644 drivers/gpu/drm/amd/display/Kconfig
> create mode 100644 drivers/gpu/drm/amd/display/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/TODO
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.h
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.h
> create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_services.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/conversion.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/conversion.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/fixpt31_32.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/fixpt32_32.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/grph_object_id.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/log_helpers.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/logger.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/logger.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/basics/vector.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser2.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser_common.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser_common.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/bios_parser_interface.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/bios_parser_types_internal.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/bios_parser_types_internal2.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/command_table.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/command_table.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/command_table2.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/command_table2.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/command_table_helper.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/command_table_helper.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/command_table_helper2.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/bios/command_table_helper2.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/dce110/command_table_helper_dce110.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/dce110/command_table_helper_dce110.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/dce112/command_table_helper2_dce112.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/dce112/command_table_helper2_dce112.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/dce112/command_table_helper_dce112.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/dce112/command_table_helper_dce112.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/dce80/command_table_helper_dce80.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/bios/dce80/command_table_helper_dce80.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/bw_fixed.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/custom_float.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_math.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_math.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_debug.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_hw_sequencer.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_link.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_link_hwss.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_resource.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_sink.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_stream.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_surface.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dc.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dc_bios_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dc_ddc_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dc_dp_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dc_helper.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dc_hw_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dc_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_abm.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_abm.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_audio.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_audio.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_clocks.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_hwseq.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_hwseq.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_ipp.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_ipp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_opp.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_opp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_scl_filters.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_stream_encoder.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_stream_encoder.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_transform.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_transform.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce100/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce100/dce100_hw_sequencer.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce100/dce100_hw_sequencer.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_compressor.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_compressor.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_mem_input_v.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_csc_v.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_regamma_v.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_v.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_v.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator_v.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator_v.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_transform_v.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce110/dce110_transform_v.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce112/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce112/dce112_compressor.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce112/dce112_compressor.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce112/dce112_hw_sequencer.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce112/dce112_hw_sequencer.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce120/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce120/dce120_hw_sequencer.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce120/dce120_hw_sequencer.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dce120/dce120_timing_generator.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dce120/dce120_timing_generator.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce80/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce80/dce80_compressor.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce80/dce80_compressor.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce80/dce80_hw_sequencer.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce80/dce80_hw_sequencer.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_dscl.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_mpc.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_mpc.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_timing_generator.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_timing_generator.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dm_helpers.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dm_pp_smu.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dm_services.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dm_services_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dc_features.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_mode_enums.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_mode_structs.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_helpers.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_helpers.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dml_inline_defs.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/soc_bounding_box.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/dml/soc_bounding_box.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/Makefile
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce110/hw_factory_dce110.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce110/hw_factory_dce110.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce110/hw_translate_dce110.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce110/hw_translate_dce110.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce120/hw_factory_dce120.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce120/hw_factory_dce120.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce120/hw_translate_dce120.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce120/hw_translate_dce120.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/dce80/hw_factory_dce80.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/dce80/hw_factory_dce80.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce80/hw_translate_dce80.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dce80/hw_translate_dce80.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/dcn10/hw_factory_dcn10.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/dcn10/hw_factory_dcn10.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dcn10/hw_translate_dcn10.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/dcn10/hw_translate_dcn10.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/ddc_regs.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/diagnostics/hw_factory_diag.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/diagnostics/hw_factory_diag.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/diagnostics/hw_translate_diag.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/gpio/diagnostics/hw_translate_diag.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/gpio_regs.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/gpio_service.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hpd_regs.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_factory.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_gpio.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_gpio.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_translate.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/hw_translate.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/aux_engine.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/aux_engine.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce100/i2caux_dce100.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce100/i2caux_dce100.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce110/aux_engine_dce110.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce110/aux_engine_dce110.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_hw_engine_dce110.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_hw_engine_dce110.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_sw_engine_dce110.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_sw_engine_dce110.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce112/i2caux_dce112.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce112/i2caux_dce112.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce120/i2caux_dce120.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce120/i2caux_dce120.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_hw_engine_dce80.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_hw_engine_dce80.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_sw_engine_dce80.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_sw_engine_dce80.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2caux_dce80.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2caux_dce80.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/diagnostics/i2caux_diag.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/diagnostics/i2caux_diag.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/engine.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/engine_base.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/i2c_engine.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/i2c_engine.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/i2c_generic_hw_engine.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/i2caux/i2c_generic_hw_engine.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/i2c_hw_engine.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/i2c_hw_engine.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/i2caux.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/i2caux/i2caux.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/bw_fixed.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/clock_source.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/compressor.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/core_status.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/core_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/custom_float.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/dc_link_ddc.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/dce_calcs.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/dcn_calcs.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/abm.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/audio.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/display_clock.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/dmcu.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/gpio.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/hw_shared.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/ipp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/link_encoder.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/mpc.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/opp.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/stream_encoder.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/timing_generator.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/transform.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/link_hwss.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/reg_helper.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/inc/resource.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/irq/Makefile
> create mode 100644
> drivers/gpu/drm/amd/display/dc/irq/dce110/irq_service_dce110.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/irq/dce110/irq_service_dce110.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/irq/dce120/irq_service_dce120.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/irq/dce120/irq_service_dce120.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/irq/dce80/irq_service_dce80.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/irq/dce80/irq_service_dce80.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/irq/dcn10/irq_service_dcn10.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/irq/dcn10/irq_service_dcn10.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/irq/irq_service.c
> create mode 100644 drivers/gpu/drm/amd/display/dc/irq/irq_service.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/irq_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/os_types.h
> create mode 100644 drivers/gpu/drm/amd/display/dc/virtual/Makefile
> create mode 100644
> drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.h
> create mode 100644
> drivers/gpu/drm/amd/display/dc/virtual/virtual_stream_encoder.c
> create mode 100644
> drivers/gpu/drm/amd/display/dc/virtual/virtual_stream_encoder.h
> create mode 100644 drivers/gpu/drm/amd/display/include/audio_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/bios_parser_interface.h
> create mode 100644 drivers/gpu/drm/amd/display/include/bios_parser_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/dal_asic_id.h
> create mode 100644 drivers/gpu/drm/amd/display/include/dal_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/ddc_service_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/dpcd_defs.h
> create mode 100644 drivers/gpu/drm/amd/display/include/fixed31_32.h
> create mode 100644 drivers/gpu/drm/amd/display/include/fixed32_32.h
> create mode 100644 drivers/gpu/drm/amd/display/include/gpio_interface.h
> create mode 100644 drivers/gpu/drm/amd/display/include/gpio_service_interface.h
> create mode 100644 drivers/gpu/drm/amd/display/include/gpio_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/grph_object_ctrl_defs.h
> create mode 100644 drivers/gpu/drm/amd/display/include/grph_object_defs.h
> create mode 100644 drivers/gpu/drm/amd/display/include/grph_object_id.h
> create mode 100644 drivers/gpu/drm/amd/display/include/i2caux_interface.h
> create mode 100644 drivers/gpu/drm/amd/display/include/irq_service_interface.h
> create mode 100644 drivers/gpu/drm/amd/display/include/link_service_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/logger_interface.h
> create mode 100644 drivers/gpu/drm/amd/display/include/logger_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/set_mode_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/signal_types.h
> create mode 100644 drivers/gpu/drm/amd/display/include/vector.h
> create mode 100644 drivers/gpu/drm/amd/display/modules/freesync/Makefile
> create mode 100644 drivers/gpu/drm/amd/display/modules/freesync/freesync.c
> create mode 100644 drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h