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 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel