Hi Dave, Daniel,
New stuff for 5.5. There's an export of a cgroup function that Tejun acked for merging through the drm tree. kfd uses it to handle permissions in containers since there is only one /dev/kfd.
The following changes since commit 9a60b2990d6c2b7ab935fe0a5cc274de67d98bed:
Merge branch 'etnaviv/next' of https://git.pengutronix.de/git/lst/linux into drm-next (2019-09-06 16:58:10 +1000)
are available in the Git repository at:
git://people.freedesktop.org/~agd5f/linux tags/drm-next-5.5-2019-10-09
for you to fetch changes up to 1cd4d9eead73c004d08a58536dc726bd172eaaec:
drm/amdkfd: update for drmP.h removal (2019-10-09 12:04:48 -0500)
---------------------------------------------------------------- drm-next-5.5-2019-10-09:
amdgpu: - Additional RAS enablement for vega20 - RAS page retirement and bad page storage in EEPROM - No GPU reset with unrecoverable RAS errors - Reserve vram for page tables rather than trying to evict - Fix issues with GPU reset and xgmi hives - DC i2c over aux fixes - Direct submission for clears, PTE/PDE updates - Improvements to help support recoverable GPU page faults - Silence harmless SAD block messages - Clean up code for creating a bo at a fixed location - Initial DC HDCP support - Lots of documentation fixes - GPU reset for renoir - Add IH clockgating support for soc15 asics - Powerplay improvements - DC MST cleanups - Add support for MSI-X - Misc cleanups and bug fixes
amdkfd: - Query KFD device info by asic type rather than pci ids - Add navi14 support - Add renoir support - Add navi12 support - gfx10 trap handler improvements - pasid cleanups - Check against device cgroup
ttm: - Return -EBUSY with pipelining with no_gpu_wait
radeon: - Silence harmless SAD block messages
device_cgroup: - Export devcgroup_check_permission
---------------------------------------------------------------- Aaron Liu (4): drm/amd/display: update renoir_ip_offset.h drm/amdgpu: disable stutter mode for renoir drm/amdgpu: remove program of lbpw for renoir Revert "drm/amdgpu: disable stutter mode for renoir"
Adam Zerella (1): docs: drm/amdgpu: Resolve build warnings
Alex Deucher (20): drm/amdgpu/irq: check if nbio funcs exist drm/amdgpu/vm: fix documentation for amdgpu_vm_bo_param drm/amdgpu/ras: use GPU PAGE_SIZE/SHIFT for reserving pages drm/amdgpu/psp: flush HDP write fifo after submitting cmds to the psp drm/amdgpu/psp: invalidate the hdp read cache before reading the psp response drm/amdgpu: flag navi12 and 14 as experimental for 5.4 drm/amdgpu: fix documentation for amdgpu_gem_prime_export drm/amdgpu/mn: fix documentation for amdgpu_mn_read_lock drm/amdgpu/vm: fix up documentation in amdgpu_vm.c drm/amdgpu/ih: fix documentation in amdgpu_irq_dispatch drm/amdgpu: fix documentation for amdgpu_pm.c drm/amdgpu/ras: fix and update the documentation for RAS drm/amdgpu/display: fix 64 bit divide drm/amdgpu/display: include slab.h in dcn21_resource.c drm/amdgpu/atomfirmware: use proper index for querying vram type (v3) drm/amdgpu/atomfirmware: simplify the interface to get vram info drm/amdgpu: don't increment vram lost if we are in hibernation drm/amdgpu: improve MSI-X handling (v3) drm/amdgpu: move amdgpu_device_get_job_timeout_settings drm/amdkfd: fix the build when CIK support is disabled
Allen Pais (1): drm/amdkfd: fix a potential NULL pointer dereference (v2)
Alvin Lee (1): drm/amd/display: Don't allocate payloads if link lost
Andrey Grodzovsky (11): drm/amdgpu: Fix bugs in amdgpu_device_gpu_recover in XGMI case. drm/amdgpu: Avoid HW GPU reset for RAS. dmr/amdgpu: Add system auto reboot to RAS. drm/amdgpu: Add smu lock around in pp_smu_i2c_bus_access drm/amdgpu: Remove clock gating restore. drm/madgpu: Fix EEPROM Checksum calculation. drm/amdgpu: Avoid RAS recovery init when no RAS support. drm/amdgpu: Add amdgpu_ras_eeprom_reset_table drm/amdgpu: Allow to reset to EERPOM table. drm/amdgpu: Fix mutex lock from atomic context. drm/amdgpu:Fix EEPROM checksum calculation.
Anthony Koo (2): drm/amd/display: 3.2.49 drm/amd/display: set minimum abm backlight level
Aric Cyr (4): drm/amd/display: 3.2.50 drm/amd/display: 3.2.51 drm/amd/display: 3.2.51.1 drm/amd/display: Improve LFC behaviour
Arnd Bergmann (4): drm/amd/display: hide an unused variable drm/amdgpu: make pmu support optional, again drm/amdgpu: hide another #warning drm/amdgpu: display_mode_vba_21: remove uint typedef
Austin Kim (1): drm/amdgpu: Drop unused variable and statement
Bayan Zabihiyan (1): drm/amd/display: Isolate DSC module from driver dependencies
Bhawanpreet Lakha (15): drm/amd/display: add Asic ID for Dali drm/amd/display: Implement voltage limitation for dali drm/amdgpu: psp HDCP init drm/amdgpu: psp DTM init drm/amd/display: Add HDCP module drm/amd/display: add PSP block to verify hdcp steps drm/amd/display: Update hdcp display config drm/amd/display: Create amdgpu_dm_hdcp drm/amd/display: Create dpcd and i2c packing functions drm/amd/display: Initialize HDCP work queue drm/amd/display: Handle Content protection property changes drm/amd/display: handle DP cpirq drm/amd/display: Update CP property based on HW query drm/amd/display: only enable HDCP for DCN+ drm/amd/display: Add hdcp to Kconfig
Charlene Liu (1): drm/amd/display: dce11.x /dce12 update formula input
Christian König (22): drm/amdgpu: use moving fence instead of exclusive for VM updates drm/amdgpu: reserve at least 4MB of VRAM for page tables v2 drm/amdgpu: remove amdgpu_cs_try_evict drm/amdgpu: cleanup mtype mapping drm/amdgpu: cleanup PTE flag generation v3 drm/amdgpu: grab the id mgr lock while accessing passid_mapping drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2) drm/amdgpu: split the VM entity into direct and delayed drm/amdgpu: allow direct submission in the VM backends v2 drm/amdgpu: allow direct submission of PDE updates v2 drm/amdgpu: allow direct submission of PTE updates drm/amdgpu: allow direct submission of clears drm/amdgpu: allocate PDs/PTs with no_gpu_wait in a page fault drm/amdgpu: reserve the root PD while freeing PASIDs drm/amdgpu: add graceful VM fault handling v3 drm/amdgpu: revert "disable bulk moves for now" drm/amdgpu: cleanup coding style in the VM code a bit drm/amdgpu: drop double HDP flush in the VM code drm/amdgpu: trace if a PD/PT update is done directly drm/amdgpu: cleanup creating BOs at fixed location (v2) drm/amdgpu: once more fix amdgpu_bo_create_kernel_at drm/amdgpu: restrict hotplug error message
Christophe JAILLET (1): drm/amd/display: Fix typo in some comments
Colin Ian King (5): drm/amd/display: rename variable eanble -> enable drm/amd/display: fix spelling mistake AUTHENICATED -> AUTHENTICATED drm/amdgpu: fix uninitialized variable pasid_mapping_needed drm/amdgpu: remove redundant variable r and redundant return statement drm/amdkfd: add missing void argument to function kgd2kfd_init
Dan Carpenter (3): drm/amd/powerplay: unlock on error in smu_resume() drm/amd/powerplay: Fix error handling in smu_init_fb_allocations() drm/amdkfd: Fix a && vs || typo
Dmytro Laktyushkin (7): drm/amd/display: update navi to use new surface programming behaviour drm/amd/display: remove temporary transition code drm/amd/display: add additional flag consideration for surface update drm/amd/display: add vtg update after global sync update drm/amd/display: fix global sync param extraction indexing drm/amd/display: update odm mode validation to be in line with policy drm/amd/display: Add detile buffer size for DCN20
Evan Quan (8): drm/amd/powerplay: guard manual mode prerequisite for clock level force drm/amd/powerplay: update cached feature enablement status V3 drm/amd/powerplay: do proper cleanups on hw_fini drm/amd/powerplay: issue DC-BTC for arcturus on SMU init drm/amd/powerplay: update smu11_driver_if_arcturus.h drm/amd/powerplay: properly set mp1 state for SW SMU suspend/reset routine drm/amd/powerplay: check SMU engine readiness before proceeding on S3 resume drm/amd/powerplay: update arcturus smu-driver interaction header
Felix Kuehling (7): drm/amdgpu: Determing PTE flags separately for each mapping (v3) drm/amdgpu: Use optimal mtypes and PTE bits for Arcturus drm/amdgpu: Remove unnecessary TLB workaround (v2) drm/amdgpu: Disable page faults while reading user wptrs drm/amdgpu: Disable retry faults in VMID0 drm/amdgpu: Fix KFD-related kernel oops on Hawaii drm/amdgpu: Fix error handling in amdgpu_ras_recovery_init
Guchun Chen (9): drm/amdgpu: remove duplicated header file include drm/amdgpu: add ras error query count interface for nbio drm/amdgpu: support pcie bif ras query and inject drm/amdgpu: add pcie bif ras related registers drm/amdgpu: implement ras query function for pcie bif drm/amdgpu: fix ras ctrl debugfs node leak drm/amdgpu: avoid null pointer dereference drm/amdgpu: remove redundant variable definition drm/amdgpu: enable full ras by default
Hans de Goede (1): drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed
Harish Kasiviswanathan (4): drm/amdkfd: Store kfd_dev in iolink and cache properties drm/amd: Pass drm_device to kfd device_cgroup: Export devcgroup_check_permission drm/amdkfd: Check against device cgroup
Harry Wentland (1): drm/amd/display; Fix kernel doc warnings
Hawking Zhang (29): drm/amdgpu: add new amdgpu nbio header file drm/amdgpu: switch to new amdgpu_nbio structure drm/amdgpu/nbio: add functions to query ras specific interrupt status drm/amdgpu: add nbif v7_4 irq source header for vega20 drm/amdgpu: update nbio v7_4 ip header files drm/amdgpu: add ras_controller and err_event_athub interrupt support drm/amdgpu: poll ras_controller_irq and err_event_athub_irq status drm/amdgpu: add helper function to do common ras_late_init/fini (v3) drm/amdgpu: switch to amdgpu_ras_late_init for gfx v9 block (v2) drm/amdgpu: switch to amdgpu_ras_late_init for sdma v4 block (v2) drm/amdgpu: switch to amdgpu_ras_late_init for gmc v9 block (v2) drm/amdgpu: add mmhub ras_late_init callback function (v2) drm/amdgpu: add ras_late_init callback function for nbio v7_4 (v3) drm/amdgpu: switch to amdgpu_ras_late_init for nbio v7_4 (v2) drm/amdgpu: check mmhub_funcs pointer before refering to it drm/amdgpu: fix memory leak when ras is not supported on specific ip block drm/amdgpu: only apply gds clearing workaround when ras is supported drm/amdgpu: set ip specific ras interface pointer to NULL after free it drm/amdgpu/gmc: switch to amdgpu_gmc_ras_late_init helper function drm/amdgpu/gfx: switch to amdgpu_gfx_ras_late_init helper function drm/amdgpu/sdma: switch to amdgpu_sdma_ras_late_init helper function drm/amdgpu/mmhub: switch to amdgpu_mmhub_ras_late_init helper function drm/amdgpu/nbio: switch to amdgpu_nbio_ras_late_init helper function drm/amdgpu: init UMC & RSMU register base address drm/amdgpu: initialize ras structures for xgmi block (v2) drm/amdgpu: enable error injection to XGMI block via debugfs drm/amdgpu: add psp ip block for arct drm/amdgpu: do not init mec2 jt for renoir drm/amdgpu: add command id in psp response failure message
Huang Rui (11): drm/amdkfd: add renoir cache info for CRAT (v2) drm/amdkfd: add renoir kfd device info (v2) drm/amdkfd: enable kfd device queue manager v9 for renoir drm/amdkfd: add renoir type for the workaround of iommu v2 (v2) drm/amdkfd: init kfd apertures v9 for renoir drm/amdkfd: init kernel queue for renoir drm/amdkfd: add package manager for renoir drm/amdkfd: add renoir kfd topology drm/amdgpu: disable gfxoff while use no H/W scheduling policy drm/amdkfd: enable renoir while device probes drm/amdkfd: fix the missed asic name while inited renoir_device_info
Ilya Bakoulin (3): drm/amd/display: Fix DML tests drm/amd/display: Add missing surface address registers drm/amd/display: Fix HUBP secondary viewport programming
Jack Zhang (3): drm/amd/amdgpu: add sw_fini interface for df_funcs drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code drm/amd/amdgpu/sriov ip block setting of Arcturus
Jaehyun Chung (1): drm/amd/display: OTC underflow fix
Jay Cornwall (2): drm/amdkfd: Swap trap temporary registers in gfx10 trap handler drm/amdkfd: Fix race in gfx10 context restore handler
Jean Delvare (2): drm/amd: be quiet when no SAD block is found drm/radeon: be quiet when no SAD block is found
Jesse Zhang (1): drm/amd/amdgpu:Fix compute ring unable to detect hang.
Jiange Zhao (6): drm/amdgpu: Add SRIOV mailbox backend for Navi1x drm/amdgpu: For Navi12 SRIOV VF, register mailbox functions drm/amdgpu/SRIOV: Navi10/12 VF doesn't support SMU drm/amdgpu/SRIOV: Navi12 SRIOV VF doesn't load TOC drm/amdgpu/SRIOV: Navi12 SRIOV VF gets GTT base drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2)
Jing Zhou (1): drm/amd/display: verify stream link before link test
John Clements (2): drm/amdgpu: enable TA load support in Arcturus drm/amdgpu: clean up load TMR sequence
Josip Pavic (1): drm/amd/display: define parameters for abm 2.3
Julian Parkin (1): drm/amd/display: Separate hardware initialization from creation
Jun Lei (1): drm/amd/display: remove hw access from dc_destroy
Kai-Heng Feng (1): drm/amd/display: Restore backlight brightness after system resume
Kenneth Feng (1): drm/amd/amdgpu: add IH cg support on soc15 project
Kent Russell (2): Revert "drm/amdgpu/nbio7.4: add hw bug workaround for vega20" drm/amdgpu: Add SMUIO values for other I2C controller v2
Kevin Wang (5): drm/amd/powerplay: replace smu->table_count with SMU_TABLE_COUNT in smu (v2) drm/amd/powerplay: remove duplicate macro of smu_get_uclk_dpm_states drm/amd/powerplay: change metrics update period from 1ms to 100ms drm/amd/powerplay: add sensor lock support for smu drm/amd/powerplay: initlialize smu->is_apu is false by default
Krunoslav Kovac (1): drm/amd/display: Subsample mode suboptimal for YCbCr4:2:2
Krzysztof Kozlowski (1): drm/amd: Fix Kconfig indentation
Le Ma (3): drm/amdgpu: disable vcn ip block for front door loading on Arcturus drm/amdgpu: enable psp front door loading by default on Arcturus drm/amdgpu: correct condition check for psp rlc autoload
Leo Liu (2): drm/amdgpu/vcn: use amdgpu_ring_test_helper drm/amdgpu: add code comment in vcn_v2_5_hw_init
Lewis Huang (2): drm/amd/display: refine i2c over aux drm/amd/display: fix i2c wtire mot incorrect issue
Lyude Paul (5): drm/amdgpu/dm: Resume short HPD IRQs before resuming MST topology drm/amdgpu: Iterate through DRM connectors correctly drm/amdgpu/dm/mst: Remove unnecessary NULL check drm/amdgpu/dm/mst: Don't create MST topology managers for eDP ports drm/amdgpu/dm/mst: Use ->atomic_best_encoder
Marek Olšák (2): drm/amdgpu: remove gfx9 NGG drm/amdgpu: return tcc_disabled_mask to userspace
Martin Leung (2): drm/amd/display: enable single dp seamless boot drm/amd/display: fix use of uninitialized variable
Martin Tsai (1): drm/amd/display: Handle virtual signal type in disable_link()
Mikita Lipski (1): drm/amd/display: Rebuild mapped resources after pipe split
Monk Liu (1): drm/amdgpu: fix an UMC hw arbitrator bug(v3)
Navid Emamdoost (3): drm/amd/display: prevent memory leak drm/amdgpu: fix multiple memory leaks in acp_hw_init drm/amd/display: memory leak
Nikola Cornij (3): drm/amd/display: Add back support for DSC 4:2:2 Simple drm/amd/display: config to override DSC start slice height drm/amd/display: Set number of pipes to 1 if the second pipe was disabled
Oak Zeng (4): drm/amdgpu: Extends amdgpu vm definitions (v2) drm/amdgpu: Support new arcturus mtype drm/amdkfd: Fix MQD size calculation drm/amdkfd: Print more sdma engine hqds in debug fs
Ori Messinger (1): drm/amdgpu: Report vram vendor with sysfs (v3)
Philip Yang (1): drm/amdgpu: check if nbio->ras_if exist
Prike Liang (13): drm/amd/powerplay: implement sysfs for getting dpm clock drm/amd/powerplay: Add the interface for geting dpm current power state drm/amd/amdgpu: power up sdma engine when S3 resume back drm/amd/powerplay: implement VCN power gating control interface drm/amd/powerplay: bypass dpm_context null pointer check guard for some smu series drm/amd/powerplay: implement the interface for setting soft freq range drm/amd/powerplay: add interface for forcing and unforcing dpm limit value drm/amd/powerplay: add interface for getting workload type drm/amd/powerplay: add the interfaces for getting and setting profiling dpm clock level drm/amd/powerplay: implement interface set_power_profile_mode() (v2) drm/amd/powerplay: implement the interface for setting sclk/uclk profile_peak level drm/amd/powerplay: update the interface for getting dpm full scale clock frequency drm/amdkfd: fix kgd2kfd_device_init() definition conflict error
Qingqing Zhuo (1): drm/amd/display: replace FIXME with TODO
Raul E Rangel (1): drm/amd/display: fix struct init in update_bounding_box
Roman Li (1): drm/amd/display: Add stereo mux and dig programming calls for dcn21
Shirish S (3): drm/amdgpu: fix build error without CONFIG_HSA_AMD drm/amdgpu: remove needless usage of #ifdef drm/amdgpu/psp: silence response status warning
Stephen Rothwell (1): drm/amdkfd: update for drmP.h removal
Stylon Wang (1): drm/amd/display: Add debugfs entry to force YUV420 output
Tao Zhou (32): drm/amdgpu: change r type to int in gmc_v9_0_late_init drm/amdgpu: change ras bps type to eeprom table record structure drm/amdgpu: Hook EEPROM table to RAS drm/amdgpu: save umc error records drm/amdgpu: move the call of ras recovery_init and bad page reserve to proper place drm/amdgpu: move umc late init from gmc to umc block drm/amdgpu: move umc ras init to umc block drm/amdgpu: rename umc ras_init to err_cnt_init drm/amdgpu: replace DRM_ERROR with DRM_WARN in ras_reserve_bad_pages drm/amdgpu: use GPU PAGE SHIFT for umc retired page drm/amdgpu: update parameter of ras_ih_cb drm/amdgpu: move umc ras irq functions to umc block drm/amdgpu: move gfx ecc functions to generic gfx file drm/amdgpu: move sdma ecc functions to generic sdma file drm/amdgpu: refine sdma4 ras_data_cb drm/amdgpu: move umc_ras_if from gmc to umc block drm/amdgpu: add common mmhub member for adev drm/amdgpu: replace mmhub_funcs with mmhub.funcs drm/amdgpu: move mmhub_ras_if from gmc to mmhub block drm/amdgpu: add common gmc_ras_fini function drm/amdgpu: add common gfx_ras_fini function drm/amdgpu: add common sdma_ras_fini function drm/amdgpu: remove ih_info parameter of umc_ras_late_init drm/amdgpu: remove ih_info parameter of gfx_ras_late_init drm/amdgpu: simplify the access to eeprom_control struct drm/amdgpu: add ras fini for nbio drm/amdgpu: add ras fini for xgmi drm/amdgpu: move umc ras fini to umc block drm/amdgpu: move mmhub ras fini to mmhub block drm/amdgpu: move xgmi ras fini to xgmi block drm/amdgpu: implement common gmc_ras_late_init drm/amdgpu: add comments in ras interrupt callback
Tianci.Yin (6): drm/amdgpu: add navi14 PCI ID for work station SKU drm/amdgpu: fix CPDMA hang in PRT mode for VEGA10 drm/amdgpu: add navi12 pci id drm/amdgpu/gfx10: update gfx golden settings drm/amdgpu/gfx10: update gfx golden settings for navi14 drm/amdgpu/gfx10: add support for wks firmware loading
Trek (1): drm/amdgpu: Check for valid number of registers to read
Vitaly Prosyak (1): drm/amd/display: Reuse dcn2 registers
Wesley Chalmers (4): drm/amd/display: Replace for loop w/ function call drm/amd/display: Do not double-buffer DTO adjustments drm/amd/display: Revert fixup DPP programming sequence drm/amd/display: Optimize clocks on clock change
Xiaojie Yuan (3): drm/amdgpu: fix null pointer deref in firmware header printing drm/amdgpu/discovery: get gpu info from ip discovery table drm/amdgpu/powerplay: add new mapping for APCC_DFLL feature
Yong Zhao (26): drm/amdkfd: Query kfd device info by CHIP id instead of pci device id drm/amdkfd: Fix a building error when KFD_SUPPORT_IOMMU_V2 is turned off drm/amdgpu: Add a kernel parameter for specifying the asic type drm/amdkfd: Support Navi14 in KFD drm/amdkfd: Delete unused KFD_IS_* macro drm/amdkfd: Add an error print if SDMA RLC is not idle drm/amdkfd: Remove excessive print when reserving doorbells drm/amdkfd: Remove unnecessary pm_init() for non HWS mode drm/amdkfd: Fix NULL pointer dereference for set_scratch_backing_va() drm/amdkfd: Sync gfx10 kfd2kgd_calls function pointers drm/amdkfd: Delete useless SDMA register setting on non HWS path drm/amdkfd: Use better name for sdma queue non HWS path drm/amdkfd: Move the control stack on GFX10 to userspace buffer drm/amdkfd: Delete unused defines drm/amdkfd: Use hex print format for pasid drm/amdkfd: Record vmid pasid mapping in the driver for non HWS mode drm/amdkfd: Query vmid pasid mapping through stored info for non HWS drm/amdkfd: Eliminate get_atc_vmid_pasid_mapping_valid drm/amdgpu: Export setup_vm_pt_regs() logic for gfxhub 2.0 drm/amdkfd: Use setup_vm_pt_regs function from base driver in KFD drm/amdgpu: Delete useless header file reference drm/amdkfd: Delete unnecessary function declarations drm/amdkfd: Use array to probe kfd2kgd_calls drm/amdgpu: Add the HDP flush support for Navi drm/amdgpu: Export setup_vm_pt_regs() logic for mmhub 2.0 drm/amdkfd: Improve KFD IOCTL printing
YueHaibing (2): drm/amd/display: remove set but not used variable 'core_freesync' drm/amdgpu: remove duplicated include from mmhub_v1_0.c
Zhan Liu (1): drm/amd/display: Add missing HBM support and raise Vega20's uclk.
chen gong (3): drm/amd/powerplay: Add mode2 mode for GPU RESET in SMU drm/amd/powerplay: A workaround to GPU RESET on APU drm/amdgpu: Use mode2 mode to perform GPU RESET for Renoir
shaoyunl (3): drm/amdkfd: Add NAVI12 support from kfd side drm/amdkfd: use navi12 specific family id for navi12 code path drm/amdgpu : enable msix for amdgpu driver
yu kuai (2): drm/amdgpu: remove excess function parameter description drm/amdgpu: remove set but not used variable 'pipe'
zhengbin (6): drm/amd/display: Make some functions static drm/amd/display: Make function wait_for_alt_mode static drm/amd/display: Remove set but not used variable 'source_bpp' drm/amd/display: Remove set but not used variables 'h_ratio_chroma', 'v_ratio_chroma' drm/amd/display: Remove set but not used variable 'pixel_width' drm/amd/display: Remove set but not used variables 'pp_smu', 'old_pipe'
zhong jiang (1): drm/amdgpu: remove the redundant null checks
Documentation/gpu/amdgpu.rst | 30 +- drivers/gpu/drm/Kconfig | 4 +- drivers/gpu/drm/amd/amdgpu/Makefile | 9 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 84 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c | 34 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 69 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 19 +- .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c | 143 ++--- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c | 286 ++++------ drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 214 +++----- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 214 +++----- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c | 173 +++--- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 74 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c | 138 +++-- drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 77 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 209 ++++++-- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c | 1 - drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 148 ++---- drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c | 40 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 34 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 104 +++- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h | 35 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 28 + drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h | 18 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 39 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 38 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_job.h | 3 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 40 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 70 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h | 8 + drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 84 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h | 99 ++++ drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 66 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 17 +- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 407 +++++++++++++-- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 32 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 532 +++++++++++++------ drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h | 43 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c | 200 +++---- drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 99 ++++ drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h | 9 + drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 23 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 94 +--- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h | 6 + drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 158 ++++++ drivers/gpu/drm/amd/amdgpu/amdgpu_umc.h | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 282 ++++++---- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 19 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.c | 18 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c | 28 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 52 +- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 50 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.h | 2 + drivers/gpu/drm/amd/amdgpu/arct_reg_init.c | 3 +- drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 44 +- drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/df_v1_7.c | 5 + drivers/gpu/drm/amd/amdgpu/df_v3_6.c | 24 +- drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 52 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 365 +------------ drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c | 2 + drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.c | 22 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.h | 2 + drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 94 ++-- drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c | 25 +- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 27 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 30 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 346 +++--------- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c | 3 + drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.c | 21 +- drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.h | 2 + drivers/gpu/drm/amd/amdgpu/mmhub_v9_4.c | 2 + drivers/gpu/drm/amd/amdgpu/mxgpu_nv.c | 380 ++++++++++++++ drivers/gpu/drm/amd/amdgpu/mxgpu_nv.h | 41 ++ drivers/gpu/drm/amd/amdgpu/navi10_ih.c | 4 +- drivers/gpu/drm/amd/amdgpu/navi10_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/navi12_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/navi14_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/nbio_v2_3.c | 17 +- drivers/gpu/drm/amd/amdgpu/nbio_v2_3.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c | 3 +- drivers/gpu/drm/amd/amdgpu/nbio_v6_1.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v7_0.c | 1 - drivers/gpu/drm/amd/amdgpu/nbio_v7_0.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c | 206 +++++++- drivers/gpu/drm/amd/amdgpu/nbio_v7_4.h | 1 + drivers/gpu/drm/amd/amdgpu/nv.c | 76 ++- drivers/gpu/drm/amd/amdgpu/psp_v10_0.c | 41 +- drivers/gpu/drm/amd/amdgpu/psp_v11_0.c | 65 ++- drivers/gpu/drm/amd/amdgpu/psp_v12_0.c | 1 + drivers/gpu/drm/amd/amdgpu/psp_v3_1.c | 1 + drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 169 +----- drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c | 8 +- drivers/gpu/drm/amd/amdgpu/smu_v11_0_i2c.c | 10 +- drivers/gpu/drm/amd/amdgpu/soc15.c | 122 +++-- drivers/gpu/drm/amd/amdgpu/umc_v6_0.c | 37 ++ drivers/gpu/drm/amd/amdgpu/umc_v6_0.h | 31 ++ drivers/gpu/drm/amd/amdgpu/umc_v6_1.c | 48 +- drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c | 1 - drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c | 23 +- drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c | 23 +- drivers/gpu/drm/amd/amdgpu/vega10_ih.c | 41 +- drivers/gpu/drm/amd/amdgpu/vega10_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/vega20_reg_init.c | 1 - drivers/gpu/drm/amd/amdkfd/cik_event_interrupt.c | 8 +- drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h | 145 +++--- .../gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx10.asm | 11 +- drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 19 +- drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 7 + drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c | 18 +- drivers/gpu/drm/amd/amdkfd/kfd_dbgmgr.c | 8 +- drivers/gpu/drm/amd/amdkfd/kfd_device.c | 267 +++++----- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 65 ++- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 5 +- drivers/gpu/drm/amd/amdkfd/kfd_events.c | 15 +- drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 12 +- drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c | 3 +- drivers/gpu/drm/amd/amdkfd/kfd_interrupt.c | 5 + drivers/gpu/drm/amd/amdkfd/kfd_iommu.c | 6 +- drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 3 + drivers/gpu/drm/amd/amdkfd/kfd_module.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v10.c | 37 +- drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 3 + drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 26 +- drivers/gpu/drm/amd/amdkfd/kfd_process.c | 32 +- .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c | 6 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 25 + drivers/gpu/drm/amd/amdkfd/kfd_topology.h | 3 + drivers/gpu/drm/amd/display/Kconfig | 28 +- drivers/gpu/drm/amd/display/Makefile | 7 + drivers/gpu/drm/amd/display/amdgpu_dm/Makefile | 4 + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 216 +++++++- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 14 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 31 ++ .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 346 ++++++++++++ .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h | 66 +++ .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 17 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 10 +- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 20 +- drivers/gpu/drm/amd/display/dc/Makefile | 4 + drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c | 4 + .../amd/display/dc/clk_mgr/dce110/dce110_clk_mgr.c | 27 +- .../drm/amd/display/dc/clk_mgr/dcn10/rv1_clk_mgr.c | 3 + .../amd/display/dc/clk_mgr/dcn20/dcn20_clk_mgr.c | 132 ++--- drivers/gpu/drm/amd/display/dc/core/dc.c | 173 +++--- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 114 ++-- drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c | 87 +++- drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 11 + drivers/gpu/drm/amd/display/dc/core/dc_link_hwss.c | 3 +- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 26 +- drivers/gpu/drm/amd/display/dc/dc.h | 24 +- drivers/gpu/drm/amd/display/dc/dc_dsc.h | 14 +- drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 86 ++- drivers/gpu/drm/amd/display/dc/dc_link.h | 1 + drivers/gpu/drm/amd/display/dc/dc_stream.h | 20 + drivers/gpu/drm/amd/display/dc/dc_types.h | 22 + drivers/gpu/drm/amd/display/dc/dce/dce_abm.c | 3 - drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c | 3 - drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c | 12 +- .../drm/amd/display/dc/dce100/dce100_resource.c | 2 + .../amd/display/dc/dce110/dce110_hw_sequencer.c | 12 - .../drm/amd/display/dc/dce110/dce110_resource.c | 2 + .../drm/amd/display/dc/dce112/dce112_resource.c | 18 +- .../drm/amd/display/dc/dce120/dce120_resource.c | 13 +- .../gpu/drm/amd/display/dc/dce80/dce80_resource.c | 1 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.c | 8 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.h | 28 + .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 3 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c | 5 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.h | 2 + .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.c | 2 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dccg.c | 57 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dccg.h | 2 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c | 7 - drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.h | 84 +-- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dsc.c | 2 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c | 4 - .../gpu/drm/amd/display/dc/dcn20/dcn20_hubbub.c | 12 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_hubbub.h | 1 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 577 +++++++++++++++------ drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.h | 14 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_optc.c | 4 + .../gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 37 +- .../gpu/drm/amd/display/dc/dcn21/dcn21_resource.c | 2 + drivers/gpu/drm/amd/display/dc/dm_cp_psp.h | 49 ++ drivers/gpu/drm/amd/display/dc/dm_helpers.h | 2 +- .../display/dc/dml/dcn20/display_mode_vba_20v2.c | 9 +- .../display/dc/dml/dcn20/display_rq_dlg_calc_20.c | 8 +- .../dc/dml/dcn20/display_rq_dlg_calc_20v2.c | 8 +- .../amd/display/dc/dml/dcn21/display_mode_vba_21.c | 13 +- .../amd/display/dc/dml/dml1_display_rq_dlg_calc.c | 10 +- drivers/gpu/drm/amd/display/dc/dsc/dc_dsc.c | 85 ++- drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c | 3 - .../amd/display/dc/gpio/dcn21/hw_factory_dcn21.c | 38 +- .../amd/display/dc/gpio/dcn21/hw_translate_dcn21.c | 3 +- drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c | 2 - drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 2 - drivers/gpu/drm/amd/display/dc/hdcp/Makefile | 28 + drivers/gpu/drm/amd/display/dc/hdcp/hdcp_msg.c | 326 ++++++++++++ drivers/gpu/drm/amd/display/dc/inc/core_types.h | 5 +- drivers/gpu/drm/amd/display/dc/inc/dc_link_ddc.h | 3 + .../drm/amd/display/dc/inc/hw/clk_mgr_internal.h | 10 +- drivers/gpu/drm/amd/display/dc/inc/hw/dccg.h | 3 +- drivers/gpu/drm/amd/display/dc/inc/hw/dsc.h | 12 +- drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 3 + drivers/gpu/drm/amd/display/dc/inc/resource.h | 2 + drivers/gpu/drm/amd/display/include/dal_asic_id.h | 7 +- drivers/gpu/drm/amd/display/include/hdcp_types.h | 96 ++++ .../drm/amd/display/modules/freesync/freesync.c | 36 +- drivers/gpu/drm/amd/display/modules/hdcp/Makefile | 32 ++ drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c | 426 +++++++++++++++ drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h | 442 ++++++++++++++++ .../drm/amd/display/modules/hdcp/hdcp1_execution.c | 531 +++++++++++++++++++ .../amd/display/modules/hdcp/hdcp1_transition.c | 307 +++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_ddc.c | 305 +++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_log.c | 163 ++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_log.h | 139 +++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_psp.c | 328 ++++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_psp.h | 272 ++++++++++ .../gpu/drm/amd/display/modules/inc/mod_freesync.h | 1 + drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h | 289 +++++++++++ .../drm/amd/display/modules/power/power_helpers.c | 93 ++-- .../drm/amd/display/modules/power/power_helpers.h | 1 + .../drm/amd/include/asic_reg/nbio/nbio_7_4_0_smn.h | 12 + .../amd/include/asic_reg/nbio/nbio_7_4_offset.h | 4 +- .../amd/include/asic_reg/nbio/nbio_7_4_sh_mask.h | 49 +- .../amd/include/asic_reg/oss/osssys_4_0_sh_mask.h | 4 + .../include/asic_reg/smuio/smuio_11_0_0_offset.h | 92 ++++ .../include/asic_reg/smuio/smuio_11_0_0_sh_mask.h | 176 +++++++ .../amd/include/ivsrcid/nbio/irqsrcs_nbif_7_4.h | 42 ++ drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 13 +- drivers/gpu/drm/amd/include/renoir_ip_offset.h | 2 +- drivers/gpu/drm/amd/include/vega10_enum.h | 1 + drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 7 +- drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 271 ++++++---- drivers/gpu/drm/amd/powerplay/arcturus_ppt.c | 22 +- drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h | 42 +- drivers/gpu/drm/amd/powerplay/inc/arcturus_ppsmc.h | 3 +- .../amd/powerplay/inc/smu11_driver_if_arcturus.h | 21 +- drivers/gpu/drm/amd/powerplay/inc/smu_types.h | 2 + drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h | 2 +- drivers/gpu/drm/amd/powerplay/navi10_ppt.c | 8 +- drivers/gpu/drm/amd/powerplay/renoir_ppt.c | 399 +++++++++++++- drivers/gpu/drm/amd/powerplay/renoir_ppt.h | 25 + drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 45 +- drivers/gpu/drm/amd/powerplay/smu_v12_0.c | 92 +++- .../gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c | 2 +- drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c | 2 - .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c | 4 +- drivers/gpu/drm/amd/powerplay/vega20_ppt.c | 13 +- drivers/gpu/drm/radeon/radeon_audio.c | 4 +- drivers/gpu/drm/radeon/radeon_drv.c | 31 ++ drivers/gpu/drm/radeon/radeon_kms.c | 25 - drivers/gpu/drm/ttm/ttm_bo.c | 44 +- include/drm/amd_asic_type.h | 56 +- include/linux/device_cgroup.h | 19 +- include/uapi/drm/amdgpu_drm.h | 4 + security/device_cgroup.c | 15 +- 276 files changed, 11831 insertions(+), 4303 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c create mode 100644 drivers/gpu/drm/amd/amdgpu/mxgpu_nv.c create mode 100644 drivers/gpu/drm/amd/amdgpu/mxgpu_nv.h create mode 100644 drivers/gpu/drm/amd/amdgpu/umc_v6_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/umc_v6_0.h create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dm_cp_psp.h create mode 100644 drivers/gpu/drm/amd/display/dc/hdcp/Makefile create mode 100644 drivers/gpu/drm/amd/display/dc/hdcp/hdcp_msg.c create mode 100644 drivers/gpu/drm/amd/display/include/hdcp_types.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/Makefile create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_execution.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_ddc.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.h create mode 100644 drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h create mode 100644 drivers/gpu/drm/amd/include/ivsrcid/nbio/irqsrcs_nbif_7_4.h
On Thu, Oct 10, 2019 at 6:17 AM Alex Deucher alexdeucher@gmail.com wrote:
Hi Dave, Daniel,
New stuff for 5.5. There's an export of a cgroup function that Tejun acked for merging through the drm tree. kfd uses it to handle permissions in containers since there is only one /dev/kfd.
The following changes since commit 9a60b2990d6c2b7ab935fe0a5cc274de67d98bed:
Merge branch 'etnaviv/next' of https://git.pengutronix.de/git/lst/linux into drm-next (2019-09-06 16:58:10 +1000)
are available in the Git repository at:
git://people.freedesktop.org/~agd5f/linux tags/drm-next-5.5-2019-10-09
for you to fetch changes up to 1cd4d9eead73c004d08a58536dc726bd172eaaec:
drm/amdkfd: update for drmP.h removal (2019-10-09 12:04:48 -0500)
drm-next-5.5-2019-10-09:
amdgpu:
- Additional RAS enablement for vega20
- RAS page retirement and bad page storage in EEPROM
- No GPU reset with unrecoverable RAS errors
- Reserve vram for page tables rather than trying to evict
- Fix issues with GPU reset and xgmi hives
- DC i2c over aux fixes
- Direct submission for clears, PTE/PDE updates
- Improvements to help support recoverable GPU page faults
- Silence harmless SAD block messages
- Clean up code for creating a bo at a fixed location
- Initial DC HDCP support
- Lots of documentation fixes
- GPU reset for renoir
- Add IH clockgating support for soc15 asics
- Powerplay improvements
- DC MST cleanups
- Add support for MSI-X
- Misc cleanups and bug fixes
amdkfd:
- Query KFD device info by asic type rather than pci ids
- Add navi14 support
- Add renoir support
- Add navi12 support
- gfx10 trap handler improvements
- pasid cleanups
- Check against device cgroup
ttm:
- Return -EBUSY with pipelining with no_gpu_wait
radeon:
- Silence harmless SAD block messages
device_cgroup:
- Export devcgroup_check_permission
Aaron Liu (4): drm/amd/display: update renoir_ip_offset.h drm/amdgpu: disable stutter mode for renoir drm/amdgpu: remove program of lbpw for renoir Revert "drm/amdgpu: disable stutter mode for renoir"
Adam Zerella (1): docs: drm/amdgpu: Resolve build warnings
Alex Deucher (20): drm/amdgpu/irq: check if nbio funcs exist drm/amdgpu/vm: fix documentation for amdgpu_vm_bo_param drm/amdgpu/ras: use GPU PAGE_SIZE/SHIFT for reserving pages drm/amdgpu/psp: flush HDP write fifo after submitting cmds to the psp drm/amdgpu/psp: invalidate the hdp read cache before reading the psp response drm/amdgpu: flag navi12 and 14 as experimental for 5.4 drm/amdgpu: fix documentation for amdgpu_gem_prime_export drm/amdgpu/mn: fix documentation for amdgpu_mn_read_lock drm/amdgpu/vm: fix up documentation in amdgpu_vm.c drm/amdgpu/ih: fix documentation in amdgpu_irq_dispatch drm/amdgpu: fix documentation for amdgpu_pm.c drm/amdgpu/ras: fix and update the documentation for RAS drm/amdgpu/display: fix 64 bit divide drm/amdgpu/display: include slab.h in dcn21_resource.c drm/amdgpu/atomfirmware: use proper index for querying vram type (v3) drm/amdgpu/atomfirmware: simplify the interface to get vram info drm/amdgpu: don't increment vram lost if we are in hibernation drm/amdgpu: improve MSI-X handling (v3) drm/amdgpu: move amdgpu_device_get_job_timeout_settings drm/amdkfd: fix the build when CIK support is disabled
Allen Pais (1): drm/amdkfd: fix a potential NULL pointer dereference (v2)
Alvin Lee (1): drm/amd/display: Don't allocate payloads if link lost
Andrey Grodzovsky (11): drm/amdgpu: Fix bugs in amdgpu_device_gpu_recover in XGMI case. drm/amdgpu: Avoid HW GPU reset for RAS. dmr/amdgpu: Add system auto reboot to RAS. drm/amdgpu: Add smu lock around in pp_smu_i2c_bus_access drm/amdgpu: Remove clock gating restore. drm/madgpu: Fix EEPROM Checksum calculation. drm/amdgpu: Avoid RAS recovery init when no RAS support. drm/amdgpu: Add amdgpu_ras_eeprom_reset_table drm/amdgpu: Allow to reset to EERPOM table. drm/amdgpu: Fix mutex lock from atomic context. drm/amdgpu:Fix EEPROM checksum calculation.
Anthony Koo (2): drm/amd/display: 3.2.49 drm/amd/display: set minimum abm backlight level
Aric Cyr (4): drm/amd/display: 3.2.50 drm/amd/display: 3.2.51 drm/amd/display: 3.2.51.1 drm/amd/display: Improve LFC behaviour
Arnd Bergmann (4): drm/amd/display: hide an unused variable drm/amdgpu: make pmu support optional, again drm/amdgpu: hide another #warning drm/amdgpu: display_mode_vba_21: remove uint typedef
Austin Kim (1): drm/amdgpu: Drop unused variable and statement
Bayan Zabihiyan (1): drm/amd/display: Isolate DSC module from driver dependencies
Bhawanpreet Lakha (15): drm/amd/display: add Asic ID for Dali drm/amd/display: Implement voltage limitation for dali drm/amdgpu: psp HDCP init drm/amdgpu: psp DTM init drm/amd/display: Add HDCP module drm/amd/display: add PSP block to verify hdcp steps drm/amd/display: Update hdcp display config drm/amd/display: Create amdgpu_dm_hdcp drm/amd/display: Create dpcd and i2c packing functions drm/amd/display: Initialize HDCP work queue drm/amd/display: Handle Content protection property changes drm/amd/display: handle DP cpirq drm/amd/display: Update CP property based on HW query drm/amd/display: only enable HDCP for DCN+ drm/amd/display: Add hdcp to Kconfig
Charlene Liu (1): drm/amd/display: dce11.x /dce12 update formula input
Christian König (22): drm/amdgpu: use moving fence instead of exclusive for VM updates drm/amdgpu: reserve at least 4MB of VRAM for page tables v2 drm/amdgpu: remove amdgpu_cs_try_evict
Patch no handy for a direct reply, so asking here (but this is totally unrelated to the pull):
Do you have other stuff than scanout and pagetables that need to be in vram? I was kinda assume this is needed for big vram-only objects to fit, making space by throwing stuff out that could also be put into system memory. But sounds like it was only for making pagetables fit. -Daniel
drm/amdgpu: cleanup mtype mapping drm/amdgpu: cleanup PTE flag generation v3 drm/amdgpu: grab the id mgr lock while accessing passid_mapping drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2) drm/amdgpu: split the VM entity into direct and delayed drm/amdgpu: allow direct submission in the VM backends v2 drm/amdgpu: allow direct submission of PDE updates v2 drm/amdgpu: allow direct submission of PTE updates drm/amdgpu: allow direct submission of clears drm/amdgpu: allocate PDs/PTs with no_gpu_wait in a page fault drm/amdgpu: reserve the root PD while freeing PASIDs drm/amdgpu: add graceful VM fault handling v3 drm/amdgpu: revert "disable bulk moves for now" drm/amdgpu: cleanup coding style in the VM code a bit drm/amdgpu: drop double HDP flush in the VM code drm/amdgpu: trace if a PD/PT update is done directly drm/amdgpu: cleanup creating BOs at fixed location (v2) drm/amdgpu: once more fix amdgpu_bo_create_kernel_at drm/amdgpu: restrict hotplug error message
Christophe JAILLET (1): drm/amd/display: Fix typo in some comments
Colin Ian King (5): drm/amd/display: rename variable eanble -> enable drm/amd/display: fix spelling mistake AUTHENICATED -> AUTHENTICATED drm/amdgpu: fix uninitialized variable pasid_mapping_needed drm/amdgpu: remove redundant variable r and redundant return statement drm/amdkfd: add missing void argument to function kgd2kfd_init
Dan Carpenter (3): drm/amd/powerplay: unlock on error in smu_resume() drm/amd/powerplay: Fix error handling in smu_init_fb_allocations() drm/amdkfd: Fix a && vs || typo
Dmytro Laktyushkin (7): drm/amd/display: update navi to use new surface programming behaviour drm/amd/display: remove temporary transition code drm/amd/display: add additional flag consideration for surface update drm/amd/display: add vtg update after global sync update drm/amd/display: fix global sync param extraction indexing drm/amd/display: update odm mode validation to be in line with policy drm/amd/display: Add detile buffer size for DCN20
Evan Quan (8): drm/amd/powerplay: guard manual mode prerequisite for clock level force drm/amd/powerplay: update cached feature enablement status V3 drm/amd/powerplay: do proper cleanups on hw_fini drm/amd/powerplay: issue DC-BTC for arcturus on SMU init drm/amd/powerplay: update smu11_driver_if_arcturus.h drm/amd/powerplay: properly set mp1 state for SW SMU suspend/reset routine drm/amd/powerplay: check SMU engine readiness before proceeding on S3 resume drm/amd/powerplay: update arcturus smu-driver interaction header
Felix Kuehling (7): drm/amdgpu: Determing PTE flags separately for each mapping (v3) drm/amdgpu: Use optimal mtypes and PTE bits for Arcturus drm/amdgpu: Remove unnecessary TLB workaround (v2) drm/amdgpu: Disable page faults while reading user wptrs drm/amdgpu: Disable retry faults in VMID0 drm/amdgpu: Fix KFD-related kernel oops on Hawaii drm/amdgpu: Fix error handling in amdgpu_ras_recovery_init
Guchun Chen (9): drm/amdgpu: remove duplicated header file include drm/amdgpu: add ras error query count interface for nbio drm/amdgpu: support pcie bif ras query and inject drm/amdgpu: add pcie bif ras related registers drm/amdgpu: implement ras query function for pcie bif drm/amdgpu: fix ras ctrl debugfs node leak drm/amdgpu: avoid null pointer dereference drm/amdgpu: remove redundant variable definition drm/amdgpu: enable full ras by default
Hans de Goede (1): drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed
Harish Kasiviswanathan (4): drm/amdkfd: Store kfd_dev in iolink and cache properties drm/amd: Pass drm_device to kfd device_cgroup: Export devcgroup_check_permission drm/amdkfd: Check against device cgroup
Harry Wentland (1): drm/amd/display; Fix kernel doc warnings
Hawking Zhang (29): drm/amdgpu: add new amdgpu nbio header file drm/amdgpu: switch to new amdgpu_nbio structure drm/amdgpu/nbio: add functions to query ras specific interrupt status drm/amdgpu: add nbif v7_4 irq source header for vega20 drm/amdgpu: update nbio v7_4 ip header files drm/amdgpu: add ras_controller and err_event_athub interrupt support drm/amdgpu: poll ras_controller_irq and err_event_athub_irq status drm/amdgpu: add helper function to do common ras_late_init/fini (v3) drm/amdgpu: switch to amdgpu_ras_late_init for gfx v9 block (v2) drm/amdgpu: switch to amdgpu_ras_late_init for sdma v4 block (v2) drm/amdgpu: switch to amdgpu_ras_late_init for gmc v9 block (v2) drm/amdgpu: add mmhub ras_late_init callback function (v2) drm/amdgpu: add ras_late_init callback function for nbio v7_4 (v3) drm/amdgpu: switch to amdgpu_ras_late_init for nbio v7_4 (v2) drm/amdgpu: check mmhub_funcs pointer before refering to it drm/amdgpu: fix memory leak when ras is not supported on specific ip block drm/amdgpu: only apply gds clearing workaround when ras is supported drm/amdgpu: set ip specific ras interface pointer to NULL after free it drm/amdgpu/gmc: switch to amdgpu_gmc_ras_late_init helper function drm/amdgpu/gfx: switch to amdgpu_gfx_ras_late_init helper function drm/amdgpu/sdma: switch to amdgpu_sdma_ras_late_init helper function drm/amdgpu/mmhub: switch to amdgpu_mmhub_ras_late_init helper function drm/amdgpu/nbio: switch to amdgpu_nbio_ras_late_init helper function drm/amdgpu: init UMC & RSMU register base address drm/amdgpu: initialize ras structures for xgmi block (v2) drm/amdgpu: enable error injection to XGMI block via debugfs drm/amdgpu: add psp ip block for arct drm/amdgpu: do not init mec2 jt for renoir drm/amdgpu: add command id in psp response failure message
Huang Rui (11): drm/amdkfd: add renoir cache info for CRAT (v2) drm/amdkfd: add renoir kfd device info (v2) drm/amdkfd: enable kfd device queue manager v9 for renoir drm/amdkfd: add renoir type for the workaround of iommu v2 (v2) drm/amdkfd: init kfd apertures v9 for renoir drm/amdkfd: init kernel queue for renoir drm/amdkfd: add package manager for renoir drm/amdkfd: add renoir kfd topology drm/amdgpu: disable gfxoff while use no H/W scheduling policy drm/amdkfd: enable renoir while device probes drm/amdkfd: fix the missed asic name while inited renoir_device_info
Ilya Bakoulin (3): drm/amd/display: Fix DML tests drm/amd/display: Add missing surface address registers drm/amd/display: Fix HUBP secondary viewport programming
Jack Zhang (3): drm/amd/amdgpu: add sw_fini interface for df_funcs drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code drm/amd/amdgpu/sriov ip block setting of Arcturus
Jaehyun Chung (1): drm/amd/display: OTC underflow fix
Jay Cornwall (2): drm/amdkfd: Swap trap temporary registers in gfx10 trap handler drm/amdkfd: Fix race in gfx10 context restore handler
Jean Delvare (2): drm/amd: be quiet when no SAD block is found drm/radeon: be quiet when no SAD block is found
Jesse Zhang (1): drm/amd/amdgpu:Fix compute ring unable to detect hang.
Jiange Zhao (6): drm/amdgpu: Add SRIOV mailbox backend for Navi1x drm/amdgpu: For Navi12 SRIOV VF, register mailbox functions drm/amdgpu/SRIOV: Navi10/12 VF doesn't support SMU drm/amdgpu/SRIOV: Navi12 SRIOV VF doesn't load TOC drm/amdgpu/SRIOV: Navi12 SRIOV VF gets GTT base drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2)
Jing Zhou (1): drm/amd/display: verify stream link before link test
John Clements (2): drm/amdgpu: enable TA load support in Arcturus drm/amdgpu: clean up load TMR sequence
Josip Pavic (1): drm/amd/display: define parameters for abm 2.3
Julian Parkin (1): drm/amd/display: Separate hardware initialization from creation
Jun Lei (1): drm/amd/display: remove hw access from dc_destroy
Kai-Heng Feng (1): drm/amd/display: Restore backlight brightness after system resume
Kenneth Feng (1): drm/amd/amdgpu: add IH cg support on soc15 project
Kent Russell (2): Revert "drm/amdgpu/nbio7.4: add hw bug workaround for vega20" drm/amdgpu: Add SMUIO values for other I2C controller v2
Kevin Wang (5): drm/amd/powerplay: replace smu->table_count with SMU_TABLE_COUNT in smu (v2) drm/amd/powerplay: remove duplicate macro of smu_get_uclk_dpm_states drm/amd/powerplay: change metrics update period from 1ms to 100ms drm/amd/powerplay: add sensor lock support for smu drm/amd/powerplay: initlialize smu->is_apu is false by default
Krunoslav Kovac (1): drm/amd/display: Subsample mode suboptimal for YCbCr4:2:2
Krzysztof Kozlowski (1): drm/amd: Fix Kconfig indentation
Le Ma (3): drm/amdgpu: disable vcn ip block for front door loading on Arcturus drm/amdgpu: enable psp front door loading by default on Arcturus drm/amdgpu: correct condition check for psp rlc autoload
Leo Liu (2): drm/amdgpu/vcn: use amdgpu_ring_test_helper drm/amdgpu: add code comment in vcn_v2_5_hw_init
Lewis Huang (2): drm/amd/display: refine i2c over aux drm/amd/display: fix i2c wtire mot incorrect issue
Lyude Paul (5): drm/amdgpu/dm: Resume short HPD IRQs before resuming MST topology drm/amdgpu: Iterate through DRM connectors correctly drm/amdgpu/dm/mst: Remove unnecessary NULL check drm/amdgpu/dm/mst: Don't create MST topology managers for eDP ports drm/amdgpu/dm/mst: Use ->atomic_best_encoder
Marek Olšák (2): drm/amdgpu: remove gfx9 NGG drm/amdgpu: return tcc_disabled_mask to userspace
Martin Leung (2): drm/amd/display: enable single dp seamless boot drm/amd/display: fix use of uninitialized variable
Martin Tsai (1): drm/amd/display: Handle virtual signal type in disable_link()
Mikita Lipski (1): drm/amd/display: Rebuild mapped resources after pipe split
Monk Liu (1): drm/amdgpu: fix an UMC hw arbitrator bug(v3)
Navid Emamdoost (3): drm/amd/display: prevent memory leak drm/amdgpu: fix multiple memory leaks in acp_hw_init drm/amd/display: memory leak
Nikola Cornij (3): drm/amd/display: Add back support for DSC 4:2:2 Simple drm/amd/display: config to override DSC start slice height drm/amd/display: Set number of pipes to 1 if the second pipe was disabled
Oak Zeng (4): drm/amdgpu: Extends amdgpu vm definitions (v2) drm/amdgpu: Support new arcturus mtype drm/amdkfd: Fix MQD size calculation drm/amdkfd: Print more sdma engine hqds in debug fs
Ori Messinger (1): drm/amdgpu: Report vram vendor with sysfs (v3)
Philip Yang (1): drm/amdgpu: check if nbio->ras_if exist
Prike Liang (13): drm/amd/powerplay: implement sysfs for getting dpm clock drm/amd/powerplay: Add the interface for geting dpm current power state drm/amd/amdgpu: power up sdma engine when S3 resume back drm/amd/powerplay: implement VCN power gating control interface drm/amd/powerplay: bypass dpm_context null pointer check guard for some smu series drm/amd/powerplay: implement the interface for setting soft freq range drm/amd/powerplay: add interface for forcing and unforcing dpm limit value drm/amd/powerplay: add interface for getting workload type drm/amd/powerplay: add the interfaces for getting and setting profiling dpm clock level drm/amd/powerplay: implement interface set_power_profile_mode() (v2) drm/amd/powerplay: implement the interface for setting sclk/uclk profile_peak level drm/amd/powerplay: update the interface for getting dpm full scale clock frequency drm/amdkfd: fix kgd2kfd_device_init() definition conflict error
Qingqing Zhuo (1): drm/amd/display: replace FIXME with TODO
Raul E Rangel (1): drm/amd/display: fix struct init in update_bounding_box
Roman Li (1): drm/amd/display: Add stereo mux and dig programming calls for dcn21
Shirish S (3): drm/amdgpu: fix build error without CONFIG_HSA_AMD drm/amdgpu: remove needless usage of #ifdef drm/amdgpu/psp: silence response status warning
Stephen Rothwell (1): drm/amdkfd: update for drmP.h removal
Stylon Wang (1): drm/amd/display: Add debugfs entry to force YUV420 output
Tao Zhou (32): drm/amdgpu: change r type to int in gmc_v9_0_late_init drm/amdgpu: change ras bps type to eeprom table record structure drm/amdgpu: Hook EEPROM table to RAS drm/amdgpu: save umc error records drm/amdgpu: move the call of ras recovery_init and bad page reserve to proper place drm/amdgpu: move umc late init from gmc to umc block drm/amdgpu: move umc ras init to umc block drm/amdgpu: rename umc ras_init to err_cnt_init drm/amdgpu: replace DRM_ERROR with DRM_WARN in ras_reserve_bad_pages drm/amdgpu: use GPU PAGE SHIFT for umc retired page drm/amdgpu: update parameter of ras_ih_cb drm/amdgpu: move umc ras irq functions to umc block drm/amdgpu: move gfx ecc functions to generic gfx file drm/amdgpu: move sdma ecc functions to generic sdma file drm/amdgpu: refine sdma4 ras_data_cb drm/amdgpu: move umc_ras_if from gmc to umc block drm/amdgpu: add common mmhub member for adev drm/amdgpu: replace mmhub_funcs with mmhub.funcs drm/amdgpu: move mmhub_ras_if from gmc to mmhub block drm/amdgpu: add common gmc_ras_fini function drm/amdgpu: add common gfx_ras_fini function drm/amdgpu: add common sdma_ras_fini function drm/amdgpu: remove ih_info parameter of umc_ras_late_init drm/amdgpu: remove ih_info parameter of gfx_ras_late_init drm/amdgpu: simplify the access to eeprom_control struct drm/amdgpu: add ras fini for nbio drm/amdgpu: add ras fini for xgmi drm/amdgpu: move umc ras fini to umc block drm/amdgpu: move mmhub ras fini to mmhub block drm/amdgpu: move xgmi ras fini to xgmi block drm/amdgpu: implement common gmc_ras_late_init drm/amdgpu: add comments in ras interrupt callback
Tianci.Yin (6): drm/amdgpu: add navi14 PCI ID for work station SKU drm/amdgpu: fix CPDMA hang in PRT mode for VEGA10 drm/amdgpu: add navi12 pci id drm/amdgpu/gfx10: update gfx golden settings drm/amdgpu/gfx10: update gfx golden settings for navi14 drm/amdgpu/gfx10: add support for wks firmware loading
Trek (1): drm/amdgpu: Check for valid number of registers to read
Vitaly Prosyak (1): drm/amd/display: Reuse dcn2 registers
Wesley Chalmers (4): drm/amd/display: Replace for loop w/ function call drm/amd/display: Do not double-buffer DTO adjustments drm/amd/display: Revert fixup DPP programming sequence drm/amd/display: Optimize clocks on clock change
Xiaojie Yuan (3): drm/amdgpu: fix null pointer deref in firmware header printing drm/amdgpu/discovery: get gpu info from ip discovery table drm/amdgpu/powerplay: add new mapping for APCC_DFLL feature
Yong Zhao (26): drm/amdkfd: Query kfd device info by CHIP id instead of pci device id drm/amdkfd: Fix a building error when KFD_SUPPORT_IOMMU_V2 is turned off drm/amdgpu: Add a kernel parameter for specifying the asic type drm/amdkfd: Support Navi14 in KFD drm/amdkfd: Delete unused KFD_IS_* macro drm/amdkfd: Add an error print if SDMA RLC is not idle drm/amdkfd: Remove excessive print when reserving doorbells drm/amdkfd: Remove unnecessary pm_init() for non HWS mode drm/amdkfd: Fix NULL pointer dereference for set_scratch_backing_va() drm/amdkfd: Sync gfx10 kfd2kgd_calls function pointers drm/amdkfd: Delete useless SDMA register setting on non HWS path drm/amdkfd: Use better name for sdma queue non HWS path drm/amdkfd: Move the control stack on GFX10 to userspace buffer drm/amdkfd: Delete unused defines drm/amdkfd: Use hex print format for pasid drm/amdkfd: Record vmid pasid mapping in the driver for non HWS mode drm/amdkfd: Query vmid pasid mapping through stored info for non HWS drm/amdkfd: Eliminate get_atc_vmid_pasid_mapping_valid drm/amdgpu: Export setup_vm_pt_regs() logic for gfxhub 2.0 drm/amdkfd: Use setup_vm_pt_regs function from base driver in KFD drm/amdgpu: Delete useless header file reference drm/amdkfd: Delete unnecessary function declarations drm/amdkfd: Use array to probe kfd2kgd_calls drm/amdgpu: Add the HDP flush support for Navi drm/amdgpu: Export setup_vm_pt_regs() logic for mmhub 2.0 drm/amdkfd: Improve KFD IOCTL printing
YueHaibing (2): drm/amd/display: remove set but not used variable 'core_freesync' drm/amdgpu: remove duplicated include from mmhub_v1_0.c
Zhan Liu (1): drm/amd/display: Add missing HBM support and raise Vega20's uclk.
chen gong (3): drm/amd/powerplay: Add mode2 mode for GPU RESET in SMU drm/amd/powerplay: A workaround to GPU RESET on APU drm/amdgpu: Use mode2 mode to perform GPU RESET for Renoir
shaoyunl (3): drm/amdkfd: Add NAVI12 support from kfd side drm/amdkfd: use navi12 specific family id for navi12 code path drm/amdgpu : enable msix for amdgpu driver
yu kuai (2): drm/amdgpu: remove excess function parameter description drm/amdgpu: remove set but not used variable 'pipe'
zhengbin (6): drm/amd/display: Make some functions static drm/amd/display: Make function wait_for_alt_mode static drm/amd/display: Remove set but not used variable 'source_bpp' drm/amd/display: Remove set but not used variables 'h_ratio_chroma', 'v_ratio_chroma' drm/amd/display: Remove set but not used variable 'pixel_width' drm/amd/display: Remove set but not used variables 'pp_smu', 'old_pipe'
zhong jiang (1): drm/amdgpu: remove the redundant null checks
Documentation/gpu/amdgpu.rst | 30 +- drivers/gpu/drm/Kconfig | 4 +- drivers/gpu/drm/amd/amdgpu/Makefile | 9 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 84 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c | 34 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 69 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 19 +- .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c | 143 ++--- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c | 286 ++++------ drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 214 +++----- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 214 +++----- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c | 173 +++--- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 74 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c | 138 +++-- drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 77 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 209 ++++++-- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c | 1 - drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 148 ++---- drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c | 40 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 34 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 104 +++- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h | 35 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 28 + drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h | 18 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 39 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 38 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_job.h | 3 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 40 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 70 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h | 8 + drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 84 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h | 99 ++++ drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 66 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 17 +- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 407 +++++++++++++-- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 32 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 532 +++++++++++++------ drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h | 43 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c | 200 +++---- drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 99 ++++ drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h | 9 + drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 23 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 94 +--- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h | 6 + drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 158 ++++++ drivers/gpu/drm/amd/amdgpu/amdgpu_umc.h | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 282 ++++++---- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 19 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.c | 18 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c | 28 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 52 +- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 50 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.h | 2 + drivers/gpu/drm/amd/amdgpu/arct_reg_init.c | 3 +- drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 44 +- drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/df_v1_7.c | 5 + drivers/gpu/drm/amd/amdgpu/df_v3_6.c | 24 +- drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 52 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 365 +------------ drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c | 2 + drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.c | 22 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.h | 2 + drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 94 ++-- drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c | 25 +- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 27 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 30 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 346 +++--------- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c | 3 + drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.c | 21 +- drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.h | 2 + drivers/gpu/drm/amd/amdgpu/mmhub_v9_4.c | 2 + drivers/gpu/drm/amd/amdgpu/mxgpu_nv.c | 380 ++++++++++++++ drivers/gpu/drm/amd/amdgpu/mxgpu_nv.h | 41 ++ drivers/gpu/drm/amd/amdgpu/navi10_ih.c | 4 +- drivers/gpu/drm/amd/amdgpu/navi10_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/navi12_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/navi14_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/nbio_v2_3.c | 17 +- drivers/gpu/drm/amd/amdgpu/nbio_v2_3.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c | 3 +- drivers/gpu/drm/amd/amdgpu/nbio_v6_1.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v7_0.c | 1 - drivers/gpu/drm/amd/amdgpu/nbio_v7_0.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c | 206 +++++++- drivers/gpu/drm/amd/amdgpu/nbio_v7_4.h | 1 + drivers/gpu/drm/amd/amdgpu/nv.c | 76 ++- drivers/gpu/drm/amd/amdgpu/psp_v10_0.c | 41 +- drivers/gpu/drm/amd/amdgpu/psp_v11_0.c | 65 ++- drivers/gpu/drm/amd/amdgpu/psp_v12_0.c | 1 + drivers/gpu/drm/amd/amdgpu/psp_v3_1.c | 1 + drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 169 +----- drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c | 8 +- drivers/gpu/drm/amd/amdgpu/smu_v11_0_i2c.c | 10 +- drivers/gpu/drm/amd/amdgpu/soc15.c | 122 +++-- drivers/gpu/drm/amd/amdgpu/umc_v6_0.c | 37 ++ drivers/gpu/drm/amd/amdgpu/umc_v6_0.h | 31 ++ drivers/gpu/drm/amd/amdgpu/umc_v6_1.c | 48 +- drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c | 1 - drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c | 23 +- drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c | 23 +- drivers/gpu/drm/amd/amdgpu/vega10_ih.c | 41 +- drivers/gpu/drm/amd/amdgpu/vega10_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/vega20_reg_init.c | 1 - drivers/gpu/drm/amd/amdkfd/cik_event_interrupt.c | 8 +- drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h | 145 +++--- .../gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx10.asm | 11 +- drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 19 +- drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 7 + drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c | 18 +- drivers/gpu/drm/amd/amdkfd/kfd_dbgmgr.c | 8 +- drivers/gpu/drm/amd/amdkfd/kfd_device.c | 267 +++++----- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 65 ++- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 5 +- drivers/gpu/drm/amd/amdkfd/kfd_events.c | 15 +- drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 12 +- drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c | 3 +- drivers/gpu/drm/amd/amdkfd/kfd_interrupt.c | 5 + drivers/gpu/drm/amd/amdkfd/kfd_iommu.c | 6 +- drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 3 + drivers/gpu/drm/amd/amdkfd/kfd_module.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v10.c | 37 +- drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 3 + drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 26 +- drivers/gpu/drm/amd/amdkfd/kfd_process.c | 32 +- .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c | 6 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 25 + drivers/gpu/drm/amd/amdkfd/kfd_topology.h | 3 + drivers/gpu/drm/amd/display/Kconfig | 28 +- drivers/gpu/drm/amd/display/Makefile | 7 + drivers/gpu/drm/amd/display/amdgpu_dm/Makefile | 4 + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 216 +++++++- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 14 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 31 ++ .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 346 ++++++++++++ .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h | 66 +++ .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 17 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 10 +- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 20 +- drivers/gpu/drm/amd/display/dc/Makefile | 4 + drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c | 4 + .../amd/display/dc/clk_mgr/dce110/dce110_clk_mgr.c | 27 +- .../drm/amd/display/dc/clk_mgr/dcn10/rv1_clk_mgr.c | 3 + .../amd/display/dc/clk_mgr/dcn20/dcn20_clk_mgr.c | 132 ++--- drivers/gpu/drm/amd/display/dc/core/dc.c | 173 +++--- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 114 ++-- drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c | 87 +++- drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 11 + drivers/gpu/drm/amd/display/dc/core/dc_link_hwss.c | 3 +- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 26 +- drivers/gpu/drm/amd/display/dc/dc.h | 24 +- drivers/gpu/drm/amd/display/dc/dc_dsc.h | 14 +- drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 86 ++- drivers/gpu/drm/amd/display/dc/dc_link.h | 1 + drivers/gpu/drm/amd/display/dc/dc_stream.h | 20 + drivers/gpu/drm/amd/display/dc/dc_types.h | 22 + drivers/gpu/drm/amd/display/dc/dce/dce_abm.c | 3 - drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c | 3 - drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c | 12 +- .../drm/amd/display/dc/dce100/dce100_resource.c | 2 + .../amd/display/dc/dce110/dce110_hw_sequencer.c | 12 - .../drm/amd/display/dc/dce110/dce110_resource.c | 2 + .../drm/amd/display/dc/dce112/dce112_resource.c | 18 +- .../drm/amd/display/dc/dce120/dce120_resource.c | 13 +- .../gpu/drm/amd/display/dc/dce80/dce80_resource.c | 1 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.c | 8 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.h | 28 + .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 3 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c | 5 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.h | 2 + .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.c | 2 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dccg.c | 57 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dccg.h | 2 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c | 7 - drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.h | 84 +-- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dsc.c | 2 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c | 4 - .../gpu/drm/amd/display/dc/dcn20/dcn20_hubbub.c | 12 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_hubbub.h | 1 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 577 +++++++++++++++------ drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.h | 14 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_optc.c | 4 + .../gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 37 +- .../gpu/drm/amd/display/dc/dcn21/dcn21_resource.c | 2 + drivers/gpu/drm/amd/display/dc/dm_cp_psp.h | 49 ++ drivers/gpu/drm/amd/display/dc/dm_helpers.h | 2 +- .../display/dc/dml/dcn20/display_mode_vba_20v2.c | 9 +- .../display/dc/dml/dcn20/display_rq_dlg_calc_20.c | 8 +- .../dc/dml/dcn20/display_rq_dlg_calc_20v2.c | 8 +- .../amd/display/dc/dml/dcn21/display_mode_vba_21.c | 13 +- .../amd/display/dc/dml/dml1_display_rq_dlg_calc.c | 10 +- drivers/gpu/drm/amd/display/dc/dsc/dc_dsc.c | 85 ++- drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c | 3 - .../amd/display/dc/gpio/dcn21/hw_factory_dcn21.c | 38 +- .../amd/display/dc/gpio/dcn21/hw_translate_dcn21.c | 3 +- drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c | 2 - drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 2 - drivers/gpu/drm/amd/display/dc/hdcp/Makefile | 28 + drivers/gpu/drm/amd/display/dc/hdcp/hdcp_msg.c | 326 ++++++++++++ drivers/gpu/drm/amd/display/dc/inc/core_types.h | 5 +- drivers/gpu/drm/amd/display/dc/inc/dc_link_ddc.h | 3 + .../drm/amd/display/dc/inc/hw/clk_mgr_internal.h | 10 +- drivers/gpu/drm/amd/display/dc/inc/hw/dccg.h | 3 +- drivers/gpu/drm/amd/display/dc/inc/hw/dsc.h | 12 +- drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 3 + drivers/gpu/drm/amd/display/dc/inc/resource.h | 2 + drivers/gpu/drm/amd/display/include/dal_asic_id.h | 7 +- drivers/gpu/drm/amd/display/include/hdcp_types.h | 96 ++++ .../drm/amd/display/modules/freesync/freesync.c | 36 +- drivers/gpu/drm/amd/display/modules/hdcp/Makefile | 32 ++ drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c | 426 +++++++++++++++ drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h | 442 ++++++++++++++++ .../drm/amd/display/modules/hdcp/hdcp1_execution.c | 531 +++++++++++++++++++ .../amd/display/modules/hdcp/hdcp1_transition.c | 307 +++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_ddc.c | 305 +++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_log.c | 163 ++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_log.h | 139 +++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_psp.c | 328 ++++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_psp.h | 272 ++++++++++ .../gpu/drm/amd/display/modules/inc/mod_freesync.h | 1 + drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h | 289 +++++++++++ .../drm/amd/display/modules/power/power_helpers.c | 93 ++-- .../drm/amd/display/modules/power/power_helpers.h | 1 + .../drm/amd/include/asic_reg/nbio/nbio_7_4_0_smn.h | 12 + .../amd/include/asic_reg/nbio/nbio_7_4_offset.h | 4 +- .../amd/include/asic_reg/nbio/nbio_7_4_sh_mask.h | 49 +- .../amd/include/asic_reg/oss/osssys_4_0_sh_mask.h | 4 + .../include/asic_reg/smuio/smuio_11_0_0_offset.h | 92 ++++ .../include/asic_reg/smuio/smuio_11_0_0_sh_mask.h | 176 +++++++ .../amd/include/ivsrcid/nbio/irqsrcs_nbif_7_4.h | 42 ++ drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 13 +- drivers/gpu/drm/amd/include/renoir_ip_offset.h | 2 +- drivers/gpu/drm/amd/include/vega10_enum.h | 1 + drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 7 +- drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 271 ++++++---- drivers/gpu/drm/amd/powerplay/arcturus_ppt.c | 22 +- drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h | 42 +- drivers/gpu/drm/amd/powerplay/inc/arcturus_ppsmc.h | 3 +- .../amd/powerplay/inc/smu11_driver_if_arcturus.h | 21 +- drivers/gpu/drm/amd/powerplay/inc/smu_types.h | 2 + drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h | 2 +- drivers/gpu/drm/amd/powerplay/navi10_ppt.c | 8 +- drivers/gpu/drm/amd/powerplay/renoir_ppt.c | 399 +++++++++++++- drivers/gpu/drm/amd/powerplay/renoir_ppt.h | 25 + drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 45 +- drivers/gpu/drm/amd/powerplay/smu_v12_0.c | 92 +++- .../gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c | 2 +- drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c | 2 - .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c | 4 +- drivers/gpu/drm/amd/powerplay/vega20_ppt.c | 13 +- drivers/gpu/drm/radeon/radeon_audio.c | 4 +- drivers/gpu/drm/radeon/radeon_drv.c | 31 ++ drivers/gpu/drm/radeon/radeon_kms.c | 25 - drivers/gpu/drm/ttm/ttm_bo.c | 44 +- include/drm/amd_asic_type.h | 56 +- include/linux/device_cgroup.h | 19 +- include/uapi/drm/amdgpu_drm.h | 4 + security/device_cgroup.c | 15 +- 276 files changed, 11831 insertions(+), 4303 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c create mode 100644 drivers/gpu/drm/amd/amdgpu/mxgpu_nv.c create mode 100644 drivers/gpu/drm/amd/amdgpu/mxgpu_nv.h create mode 100644 drivers/gpu/drm/amd/amdgpu/umc_v6_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/umc_v6_0.h create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dm_cp_psp.h create mode 100644 drivers/gpu/drm/amd/display/dc/hdcp/Makefile create mode 100644 drivers/gpu/drm/amd/display/dc/hdcp/hdcp_msg.c create mode 100644 drivers/gpu/drm/amd/display/include/hdcp_types.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/Makefile create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_execution.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_ddc.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.h create mode 100644 drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h create mode 100644 drivers/gpu/drm/amd/include/ivsrcid/nbio/irqsrcs_nbif_7_4.h
AOn Thu, Oct 10, 2019 at 5:54 AM Daniel Vetter daniel.vetter@ffwll.ch wrote:
On Thu, Oct 10, 2019 at 6:17 AM Alex Deucher alexdeucher@gmail.com wrote:
Hi Dave, Daniel,
New stuff for 5.5. There's an export of a cgroup function that Tejun acked for merging through the drm tree. kfd uses it to handle permissions in containers since there is only one /dev/kfd.
The following changes since commit 9a60b2990d6c2b7ab935fe0a5cc274de67d98bed:
Merge branch 'etnaviv/next' of https://git.pengutronix.de/git/lst/linux into drm-next (2019-09-06 16:58:10 +1000)
are available in the Git repository at:
git://people.freedesktop.org/~agd5f/linux tags/drm-next-5.5-2019-10-09
for you to fetch changes up to 1cd4d9eead73c004d08a58536dc726bd172eaaec:
drm/amdkfd: update for drmP.h removal (2019-10-09 12:04:48 -0500)
drm-next-5.5-2019-10-09:
amdgpu:
- Additional RAS enablement for vega20
- RAS page retirement and bad page storage in EEPROM
- No GPU reset with unrecoverable RAS errors
- Reserve vram for page tables rather than trying to evict
- Fix issues with GPU reset and xgmi hives
- DC i2c over aux fixes
- Direct submission for clears, PTE/PDE updates
- Improvements to help support recoverable GPU page faults
- Silence harmless SAD block messages
- Clean up code for creating a bo at a fixed location
- Initial DC HDCP support
- Lots of documentation fixes
- GPU reset for renoir
- Add IH clockgating support for soc15 asics
- Powerplay improvements
- DC MST cleanups
- Add support for MSI-X
- Misc cleanups and bug fixes
amdkfd:
- Query KFD device info by asic type rather than pci ids
- Add navi14 support
- Add renoir support
- Add navi12 support
- gfx10 trap handler improvements
- pasid cleanups
- Check against device cgroup
ttm:
- Return -EBUSY with pipelining with no_gpu_wait
radeon:
- Silence harmless SAD block messages
device_cgroup:
- Export devcgroup_check_permission
Aaron Liu (4): drm/amd/display: update renoir_ip_offset.h drm/amdgpu: disable stutter mode for renoir drm/amdgpu: remove program of lbpw for renoir Revert "drm/amdgpu: disable stutter mode for renoir"
Adam Zerella (1): docs: drm/amdgpu: Resolve build warnings
Alex Deucher (20): drm/amdgpu/irq: check if nbio funcs exist drm/amdgpu/vm: fix documentation for amdgpu_vm_bo_param drm/amdgpu/ras: use GPU PAGE_SIZE/SHIFT for reserving pages drm/amdgpu/psp: flush HDP write fifo after submitting cmds to the psp drm/amdgpu/psp: invalidate the hdp read cache before reading the psp response drm/amdgpu: flag navi12 and 14 as experimental for 5.4 drm/amdgpu: fix documentation for amdgpu_gem_prime_export drm/amdgpu/mn: fix documentation for amdgpu_mn_read_lock drm/amdgpu/vm: fix up documentation in amdgpu_vm.c drm/amdgpu/ih: fix documentation in amdgpu_irq_dispatch drm/amdgpu: fix documentation for amdgpu_pm.c drm/amdgpu/ras: fix and update the documentation for RAS drm/amdgpu/display: fix 64 bit divide drm/amdgpu/display: include slab.h in dcn21_resource.c drm/amdgpu/atomfirmware: use proper index for querying vram type (v3) drm/amdgpu/atomfirmware: simplify the interface to get vram info drm/amdgpu: don't increment vram lost if we are in hibernation drm/amdgpu: improve MSI-X handling (v3) drm/amdgpu: move amdgpu_device_get_job_timeout_settings drm/amdkfd: fix the build when CIK support is disabled
Allen Pais (1): drm/amdkfd: fix a potential NULL pointer dereference (v2)
Alvin Lee (1): drm/amd/display: Don't allocate payloads if link lost
Andrey Grodzovsky (11): drm/amdgpu: Fix bugs in amdgpu_device_gpu_recover in XGMI case. drm/amdgpu: Avoid HW GPU reset for RAS. dmr/amdgpu: Add system auto reboot to RAS. drm/amdgpu: Add smu lock around in pp_smu_i2c_bus_access drm/amdgpu: Remove clock gating restore. drm/madgpu: Fix EEPROM Checksum calculation. drm/amdgpu: Avoid RAS recovery init when no RAS support. drm/amdgpu: Add amdgpu_ras_eeprom_reset_table drm/amdgpu: Allow to reset to EERPOM table. drm/amdgpu: Fix mutex lock from atomic context. drm/amdgpu:Fix EEPROM checksum calculation.
Anthony Koo (2): drm/amd/display: 3.2.49 drm/amd/display: set minimum abm backlight level
Aric Cyr (4): drm/amd/display: 3.2.50 drm/amd/display: 3.2.51 drm/amd/display: 3.2.51.1 drm/amd/display: Improve LFC behaviour
Arnd Bergmann (4): drm/amd/display: hide an unused variable drm/amdgpu: make pmu support optional, again drm/amdgpu: hide another #warning drm/amdgpu: display_mode_vba_21: remove uint typedef
Austin Kim (1): drm/amdgpu: Drop unused variable and statement
Bayan Zabihiyan (1): drm/amd/display: Isolate DSC module from driver dependencies
Bhawanpreet Lakha (15): drm/amd/display: add Asic ID for Dali drm/amd/display: Implement voltage limitation for dali drm/amdgpu: psp HDCP init drm/amdgpu: psp DTM init drm/amd/display: Add HDCP module drm/amd/display: add PSP block to verify hdcp steps drm/amd/display: Update hdcp display config drm/amd/display: Create amdgpu_dm_hdcp drm/amd/display: Create dpcd and i2c packing functions drm/amd/display: Initialize HDCP work queue drm/amd/display: Handle Content protection property changes drm/amd/display: handle DP cpirq drm/amd/display: Update CP property based on HW query drm/amd/display: only enable HDCP for DCN+ drm/amd/display: Add hdcp to Kconfig
Charlene Liu (1): drm/amd/display: dce11.x /dce12 update formula input
Christian König (22): drm/amdgpu: use moving fence instead of exclusive for VM updates drm/amdgpu: reserve at least 4MB of VRAM for page tables v2 drm/amdgpu: remove amdgpu_cs_try_evict
Patch no handy for a direct reply, so asking here (but this is totally unrelated to the pull):
Do you have other stuff than scanout and pagetables that need to be in vram? I was kinda assume this is needed for big vram-only objects to fit, making space by throwing stuff out that could also be put into system memory. But sounds like it was only for making pagetables fit.
Yes, basically making page tables fit. If you push a bunch of stuff to system ram, your page table requirements go up too. See the discussion here: https://www.spinics.net/lists/amd-gfx/msg38640.html
Alex
-Daniel
drm/amdgpu: cleanup mtype mapping drm/amdgpu: cleanup PTE flag generation v3 drm/amdgpu: grab the id mgr lock while accessing passid_mapping drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2) drm/amdgpu: split the VM entity into direct and delayed drm/amdgpu: allow direct submission in the VM backends v2 drm/amdgpu: allow direct submission of PDE updates v2 drm/amdgpu: allow direct submission of PTE updates drm/amdgpu: allow direct submission of clears drm/amdgpu: allocate PDs/PTs with no_gpu_wait in a page fault drm/amdgpu: reserve the root PD while freeing PASIDs drm/amdgpu: add graceful VM fault handling v3 drm/amdgpu: revert "disable bulk moves for now" drm/amdgpu: cleanup coding style in the VM code a bit drm/amdgpu: drop double HDP flush in the VM code drm/amdgpu: trace if a PD/PT update is done directly drm/amdgpu: cleanup creating BOs at fixed location (v2) drm/amdgpu: once more fix amdgpu_bo_create_kernel_at drm/amdgpu: restrict hotplug error message
Christophe JAILLET (1): drm/amd/display: Fix typo in some comments
Colin Ian King (5): drm/amd/display: rename variable eanble -> enable drm/amd/display: fix spelling mistake AUTHENICATED -> AUTHENTICATED drm/amdgpu: fix uninitialized variable pasid_mapping_needed drm/amdgpu: remove redundant variable r and redundant return statement drm/amdkfd: add missing void argument to function kgd2kfd_init
Dan Carpenter (3): drm/amd/powerplay: unlock on error in smu_resume() drm/amd/powerplay: Fix error handling in smu_init_fb_allocations() drm/amdkfd: Fix a && vs || typo
Dmytro Laktyushkin (7): drm/amd/display: update navi to use new surface programming behaviour drm/amd/display: remove temporary transition code drm/amd/display: add additional flag consideration for surface update drm/amd/display: add vtg update after global sync update drm/amd/display: fix global sync param extraction indexing drm/amd/display: update odm mode validation to be in line with policy drm/amd/display: Add detile buffer size for DCN20
Evan Quan (8): drm/amd/powerplay: guard manual mode prerequisite for clock level force drm/amd/powerplay: update cached feature enablement status V3 drm/amd/powerplay: do proper cleanups on hw_fini drm/amd/powerplay: issue DC-BTC for arcturus on SMU init drm/amd/powerplay: update smu11_driver_if_arcturus.h drm/amd/powerplay: properly set mp1 state for SW SMU suspend/reset routine drm/amd/powerplay: check SMU engine readiness before proceeding on S3 resume drm/amd/powerplay: update arcturus smu-driver interaction header
Felix Kuehling (7): drm/amdgpu: Determing PTE flags separately for each mapping (v3) drm/amdgpu: Use optimal mtypes and PTE bits for Arcturus drm/amdgpu: Remove unnecessary TLB workaround (v2) drm/amdgpu: Disable page faults while reading user wptrs drm/amdgpu: Disable retry faults in VMID0 drm/amdgpu: Fix KFD-related kernel oops on Hawaii drm/amdgpu: Fix error handling in amdgpu_ras_recovery_init
Guchun Chen (9): drm/amdgpu: remove duplicated header file include drm/amdgpu: add ras error query count interface for nbio drm/amdgpu: support pcie bif ras query and inject drm/amdgpu: add pcie bif ras related registers drm/amdgpu: implement ras query function for pcie bif drm/amdgpu: fix ras ctrl debugfs node leak drm/amdgpu: avoid null pointer dereference drm/amdgpu: remove redundant variable definition drm/amdgpu: enable full ras by default
Hans de Goede (1): drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed
Harish Kasiviswanathan (4): drm/amdkfd: Store kfd_dev in iolink and cache properties drm/amd: Pass drm_device to kfd device_cgroup: Export devcgroup_check_permission drm/amdkfd: Check against device cgroup
Harry Wentland (1): drm/amd/display; Fix kernel doc warnings
Hawking Zhang (29): drm/amdgpu: add new amdgpu nbio header file drm/amdgpu: switch to new amdgpu_nbio structure drm/amdgpu/nbio: add functions to query ras specific interrupt status drm/amdgpu: add nbif v7_4 irq source header for vega20 drm/amdgpu: update nbio v7_4 ip header files drm/amdgpu: add ras_controller and err_event_athub interrupt support drm/amdgpu: poll ras_controller_irq and err_event_athub_irq status drm/amdgpu: add helper function to do common ras_late_init/fini (v3) drm/amdgpu: switch to amdgpu_ras_late_init for gfx v9 block (v2) drm/amdgpu: switch to amdgpu_ras_late_init for sdma v4 block (v2) drm/amdgpu: switch to amdgpu_ras_late_init for gmc v9 block (v2) drm/amdgpu: add mmhub ras_late_init callback function (v2) drm/amdgpu: add ras_late_init callback function for nbio v7_4 (v3) drm/amdgpu: switch to amdgpu_ras_late_init for nbio v7_4 (v2) drm/amdgpu: check mmhub_funcs pointer before refering to it drm/amdgpu: fix memory leak when ras is not supported on specific ip block drm/amdgpu: only apply gds clearing workaround when ras is supported drm/amdgpu: set ip specific ras interface pointer to NULL after free it drm/amdgpu/gmc: switch to amdgpu_gmc_ras_late_init helper function drm/amdgpu/gfx: switch to amdgpu_gfx_ras_late_init helper function drm/amdgpu/sdma: switch to amdgpu_sdma_ras_late_init helper function drm/amdgpu/mmhub: switch to amdgpu_mmhub_ras_late_init helper function drm/amdgpu/nbio: switch to amdgpu_nbio_ras_late_init helper function drm/amdgpu: init UMC & RSMU register base address drm/amdgpu: initialize ras structures for xgmi block (v2) drm/amdgpu: enable error injection to XGMI block via debugfs drm/amdgpu: add psp ip block for arct drm/amdgpu: do not init mec2 jt for renoir drm/amdgpu: add command id in psp response failure message
Huang Rui (11): drm/amdkfd: add renoir cache info for CRAT (v2) drm/amdkfd: add renoir kfd device info (v2) drm/amdkfd: enable kfd device queue manager v9 for renoir drm/amdkfd: add renoir type for the workaround of iommu v2 (v2) drm/amdkfd: init kfd apertures v9 for renoir drm/amdkfd: init kernel queue for renoir drm/amdkfd: add package manager for renoir drm/amdkfd: add renoir kfd topology drm/amdgpu: disable gfxoff while use no H/W scheduling policy drm/amdkfd: enable renoir while device probes drm/amdkfd: fix the missed asic name while inited renoir_device_info
Ilya Bakoulin (3): drm/amd/display: Fix DML tests drm/amd/display: Add missing surface address registers drm/amd/display: Fix HUBP secondary viewport programming
Jack Zhang (3): drm/amd/amdgpu: add sw_fini interface for df_funcs drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code drm/amd/amdgpu/sriov ip block setting of Arcturus
Jaehyun Chung (1): drm/amd/display: OTC underflow fix
Jay Cornwall (2): drm/amdkfd: Swap trap temporary registers in gfx10 trap handler drm/amdkfd: Fix race in gfx10 context restore handler
Jean Delvare (2): drm/amd: be quiet when no SAD block is found drm/radeon: be quiet when no SAD block is found
Jesse Zhang (1): drm/amd/amdgpu:Fix compute ring unable to detect hang.
Jiange Zhao (6): drm/amdgpu: Add SRIOV mailbox backend for Navi1x drm/amdgpu: For Navi12 SRIOV VF, register mailbox functions drm/amdgpu/SRIOV: Navi10/12 VF doesn't support SMU drm/amdgpu/SRIOV: Navi12 SRIOV VF doesn't load TOC drm/amdgpu/SRIOV: Navi12 SRIOV VF gets GTT base drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2)
Jing Zhou (1): drm/amd/display: verify stream link before link test
John Clements (2): drm/amdgpu: enable TA load support in Arcturus drm/amdgpu: clean up load TMR sequence
Josip Pavic (1): drm/amd/display: define parameters for abm 2.3
Julian Parkin (1): drm/amd/display: Separate hardware initialization from creation
Jun Lei (1): drm/amd/display: remove hw access from dc_destroy
Kai-Heng Feng (1): drm/amd/display: Restore backlight brightness after system resume
Kenneth Feng (1): drm/amd/amdgpu: add IH cg support on soc15 project
Kent Russell (2): Revert "drm/amdgpu/nbio7.4: add hw bug workaround for vega20" drm/amdgpu: Add SMUIO values for other I2C controller v2
Kevin Wang (5): drm/amd/powerplay: replace smu->table_count with SMU_TABLE_COUNT in smu (v2) drm/amd/powerplay: remove duplicate macro of smu_get_uclk_dpm_states drm/amd/powerplay: change metrics update period from 1ms to 100ms drm/amd/powerplay: add sensor lock support for smu drm/amd/powerplay: initlialize smu->is_apu is false by default
Krunoslav Kovac (1): drm/amd/display: Subsample mode suboptimal for YCbCr4:2:2
Krzysztof Kozlowski (1): drm/amd: Fix Kconfig indentation
Le Ma (3): drm/amdgpu: disable vcn ip block for front door loading on Arcturus drm/amdgpu: enable psp front door loading by default on Arcturus drm/amdgpu: correct condition check for psp rlc autoload
Leo Liu (2): drm/amdgpu/vcn: use amdgpu_ring_test_helper drm/amdgpu: add code comment in vcn_v2_5_hw_init
Lewis Huang (2): drm/amd/display: refine i2c over aux drm/amd/display: fix i2c wtire mot incorrect issue
Lyude Paul (5): drm/amdgpu/dm: Resume short HPD IRQs before resuming MST topology drm/amdgpu: Iterate through DRM connectors correctly drm/amdgpu/dm/mst: Remove unnecessary NULL check drm/amdgpu/dm/mst: Don't create MST topology managers for eDP ports drm/amdgpu/dm/mst: Use ->atomic_best_encoder
Marek Olšák (2): drm/amdgpu: remove gfx9 NGG drm/amdgpu: return tcc_disabled_mask to userspace
Martin Leung (2): drm/amd/display: enable single dp seamless boot drm/amd/display: fix use of uninitialized variable
Martin Tsai (1): drm/amd/display: Handle virtual signal type in disable_link()
Mikita Lipski (1): drm/amd/display: Rebuild mapped resources after pipe split
Monk Liu (1): drm/amdgpu: fix an UMC hw arbitrator bug(v3)
Navid Emamdoost (3): drm/amd/display: prevent memory leak drm/amdgpu: fix multiple memory leaks in acp_hw_init drm/amd/display: memory leak
Nikola Cornij (3): drm/amd/display: Add back support for DSC 4:2:2 Simple drm/amd/display: config to override DSC start slice height drm/amd/display: Set number of pipes to 1 if the second pipe was disabled
Oak Zeng (4): drm/amdgpu: Extends amdgpu vm definitions (v2) drm/amdgpu: Support new arcturus mtype drm/amdkfd: Fix MQD size calculation drm/amdkfd: Print more sdma engine hqds in debug fs
Ori Messinger (1): drm/amdgpu: Report vram vendor with sysfs (v3)
Philip Yang (1): drm/amdgpu: check if nbio->ras_if exist
Prike Liang (13): drm/amd/powerplay: implement sysfs for getting dpm clock drm/amd/powerplay: Add the interface for geting dpm current power state drm/amd/amdgpu: power up sdma engine when S3 resume back drm/amd/powerplay: implement VCN power gating control interface drm/amd/powerplay: bypass dpm_context null pointer check guard for some smu series drm/amd/powerplay: implement the interface for setting soft freq range drm/amd/powerplay: add interface for forcing and unforcing dpm limit value drm/amd/powerplay: add interface for getting workload type drm/amd/powerplay: add the interfaces for getting and setting profiling dpm clock level drm/amd/powerplay: implement interface set_power_profile_mode() (v2) drm/amd/powerplay: implement the interface for setting sclk/uclk profile_peak level drm/amd/powerplay: update the interface for getting dpm full scale clock frequency drm/amdkfd: fix kgd2kfd_device_init() definition conflict error
Qingqing Zhuo (1): drm/amd/display: replace FIXME with TODO
Raul E Rangel (1): drm/amd/display: fix struct init in update_bounding_box
Roman Li (1): drm/amd/display: Add stereo mux and dig programming calls for dcn21
Shirish S (3): drm/amdgpu: fix build error without CONFIG_HSA_AMD drm/amdgpu: remove needless usage of #ifdef drm/amdgpu/psp: silence response status warning
Stephen Rothwell (1): drm/amdkfd: update for drmP.h removal
Stylon Wang (1): drm/amd/display: Add debugfs entry to force YUV420 output
Tao Zhou (32): drm/amdgpu: change r type to int in gmc_v9_0_late_init drm/amdgpu: change ras bps type to eeprom table record structure drm/amdgpu: Hook EEPROM table to RAS drm/amdgpu: save umc error records drm/amdgpu: move the call of ras recovery_init and bad page reserve to proper place drm/amdgpu: move umc late init from gmc to umc block drm/amdgpu: move umc ras init to umc block drm/amdgpu: rename umc ras_init to err_cnt_init drm/amdgpu: replace DRM_ERROR with DRM_WARN in ras_reserve_bad_pages drm/amdgpu: use GPU PAGE SHIFT for umc retired page drm/amdgpu: update parameter of ras_ih_cb drm/amdgpu: move umc ras irq functions to umc block drm/amdgpu: move gfx ecc functions to generic gfx file drm/amdgpu: move sdma ecc functions to generic sdma file drm/amdgpu: refine sdma4 ras_data_cb drm/amdgpu: move umc_ras_if from gmc to umc block drm/amdgpu: add common mmhub member for adev drm/amdgpu: replace mmhub_funcs with mmhub.funcs drm/amdgpu: move mmhub_ras_if from gmc to mmhub block drm/amdgpu: add common gmc_ras_fini function drm/amdgpu: add common gfx_ras_fini function drm/amdgpu: add common sdma_ras_fini function drm/amdgpu: remove ih_info parameter of umc_ras_late_init drm/amdgpu: remove ih_info parameter of gfx_ras_late_init drm/amdgpu: simplify the access to eeprom_control struct drm/amdgpu: add ras fini for nbio drm/amdgpu: add ras fini for xgmi drm/amdgpu: move umc ras fini to umc block drm/amdgpu: move mmhub ras fini to mmhub block drm/amdgpu: move xgmi ras fini to xgmi block drm/amdgpu: implement common gmc_ras_late_init drm/amdgpu: add comments in ras interrupt callback
Tianci.Yin (6): drm/amdgpu: add navi14 PCI ID for work station SKU drm/amdgpu: fix CPDMA hang in PRT mode for VEGA10 drm/amdgpu: add navi12 pci id drm/amdgpu/gfx10: update gfx golden settings drm/amdgpu/gfx10: update gfx golden settings for navi14 drm/amdgpu/gfx10: add support for wks firmware loading
Trek (1): drm/amdgpu: Check for valid number of registers to read
Vitaly Prosyak (1): drm/amd/display: Reuse dcn2 registers
Wesley Chalmers (4): drm/amd/display: Replace for loop w/ function call drm/amd/display: Do not double-buffer DTO adjustments drm/amd/display: Revert fixup DPP programming sequence drm/amd/display: Optimize clocks on clock change
Xiaojie Yuan (3): drm/amdgpu: fix null pointer deref in firmware header printing drm/amdgpu/discovery: get gpu info from ip discovery table drm/amdgpu/powerplay: add new mapping for APCC_DFLL feature
Yong Zhao (26): drm/amdkfd: Query kfd device info by CHIP id instead of pci device id drm/amdkfd: Fix a building error when KFD_SUPPORT_IOMMU_V2 is turned off drm/amdgpu: Add a kernel parameter for specifying the asic type drm/amdkfd: Support Navi14 in KFD drm/amdkfd: Delete unused KFD_IS_* macro drm/amdkfd: Add an error print if SDMA RLC is not idle drm/amdkfd: Remove excessive print when reserving doorbells drm/amdkfd: Remove unnecessary pm_init() for non HWS mode drm/amdkfd: Fix NULL pointer dereference for set_scratch_backing_va() drm/amdkfd: Sync gfx10 kfd2kgd_calls function pointers drm/amdkfd: Delete useless SDMA register setting on non HWS path drm/amdkfd: Use better name for sdma queue non HWS path drm/amdkfd: Move the control stack on GFX10 to userspace buffer drm/amdkfd: Delete unused defines drm/amdkfd: Use hex print format for pasid drm/amdkfd: Record vmid pasid mapping in the driver for non HWS mode drm/amdkfd: Query vmid pasid mapping through stored info for non HWS drm/amdkfd: Eliminate get_atc_vmid_pasid_mapping_valid drm/amdgpu: Export setup_vm_pt_regs() logic for gfxhub 2.0 drm/amdkfd: Use setup_vm_pt_regs function from base driver in KFD drm/amdgpu: Delete useless header file reference drm/amdkfd: Delete unnecessary function declarations drm/amdkfd: Use array to probe kfd2kgd_calls drm/amdgpu: Add the HDP flush support for Navi drm/amdgpu: Export setup_vm_pt_regs() logic for mmhub 2.0 drm/amdkfd: Improve KFD IOCTL printing
YueHaibing (2): drm/amd/display: remove set but not used variable 'core_freesync' drm/amdgpu: remove duplicated include from mmhub_v1_0.c
Zhan Liu (1): drm/amd/display: Add missing HBM support and raise Vega20's uclk.
chen gong (3): drm/amd/powerplay: Add mode2 mode for GPU RESET in SMU drm/amd/powerplay: A workaround to GPU RESET on APU drm/amdgpu: Use mode2 mode to perform GPU RESET for Renoir
shaoyunl (3): drm/amdkfd: Add NAVI12 support from kfd side drm/amdkfd: use navi12 specific family id for navi12 code path drm/amdgpu : enable msix for amdgpu driver
yu kuai (2): drm/amdgpu: remove excess function parameter description drm/amdgpu: remove set but not used variable 'pipe'
zhengbin (6): drm/amd/display: Make some functions static drm/amd/display: Make function wait_for_alt_mode static drm/amd/display: Remove set but not used variable 'source_bpp' drm/amd/display: Remove set but not used variables 'h_ratio_chroma', 'v_ratio_chroma' drm/amd/display: Remove set but not used variable 'pixel_width' drm/amd/display: Remove set but not used variables 'pp_smu', 'old_pipe'
zhong jiang (1): drm/amdgpu: remove the redundant null checks
Documentation/gpu/amdgpu.rst | 30 +- drivers/gpu/drm/Kconfig | 4 +- drivers/gpu/drm/amd/amdgpu/Makefile | 9 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 84 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c | 34 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 69 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 19 +- .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c | 143 ++--- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c | 286 ++++------ drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 214 +++----- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 214 +++----- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c | 173 +++--- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 74 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c | 138 +++-- drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 77 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 209 ++++++-- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c | 1 - drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 148 ++---- drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c | 40 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 34 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 104 +++- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h | 35 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 28 + drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h | 18 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 39 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 38 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_job.h | 3 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 40 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 70 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h | 8 + drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 84 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h | 99 ++++ drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 66 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 17 +- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 407 +++++++++++++-- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 32 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 532 +++++++++++++------ drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h | 43 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c | 200 +++---- drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 99 ++++ drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h | 9 + drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 23 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 94 +--- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h | 6 + drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 158 ++++++ drivers/gpu/drm/amd/amdgpu/amdgpu_umc.h | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 282 ++++++---- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 19 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.c | 18 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c | 28 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 52 +- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 50 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.h | 2 + drivers/gpu/drm/amd/amdgpu/arct_reg_init.c | 3 +- drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 44 +- drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 38 +- drivers/gpu/drm/amd/amdgpu/df_v1_7.c | 5 + drivers/gpu/drm/amd/amdgpu/df_v3_6.c | 24 +- drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 52 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 365 +------------ drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c | 2 + drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.c | 22 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.h | 2 + drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 94 ++-- drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c | 25 +- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 27 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 30 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 346 +++--------- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c | 3 + drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.c | 21 +- drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.h | 2 + drivers/gpu/drm/amd/amdgpu/mmhub_v9_4.c | 2 + drivers/gpu/drm/amd/amdgpu/mxgpu_nv.c | 380 ++++++++++++++ drivers/gpu/drm/amd/amdgpu/mxgpu_nv.h | 41 ++ drivers/gpu/drm/amd/amdgpu/navi10_ih.c | 4 +- drivers/gpu/drm/amd/amdgpu/navi10_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/navi12_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/navi14_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/nbio_v2_3.c | 17 +- drivers/gpu/drm/amd/amdgpu/nbio_v2_3.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c | 3 +- drivers/gpu/drm/amd/amdgpu/nbio_v6_1.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v7_0.c | 1 - drivers/gpu/drm/amd/amdgpu/nbio_v7_0.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c | 206 +++++++- drivers/gpu/drm/amd/amdgpu/nbio_v7_4.h | 1 + drivers/gpu/drm/amd/amdgpu/nv.c | 76 ++- drivers/gpu/drm/amd/amdgpu/psp_v10_0.c | 41 +- drivers/gpu/drm/amd/amdgpu/psp_v11_0.c | 65 ++- drivers/gpu/drm/amd/amdgpu/psp_v12_0.c | 1 + drivers/gpu/drm/amd/amdgpu/psp_v3_1.c | 1 + drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 169 +----- drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c | 8 +- drivers/gpu/drm/amd/amdgpu/smu_v11_0_i2c.c | 10 +- drivers/gpu/drm/amd/amdgpu/soc15.c | 122 +++-- drivers/gpu/drm/amd/amdgpu/umc_v6_0.c | 37 ++ drivers/gpu/drm/amd/amdgpu/umc_v6_0.h | 31 ++ drivers/gpu/drm/amd/amdgpu/umc_v6_1.c | 48 +- drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c | 1 - drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c | 23 +- drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c | 23 +- drivers/gpu/drm/amd/amdgpu/vega10_ih.c | 41 +- drivers/gpu/drm/amd/amdgpu/vega10_reg_init.c | 1 - drivers/gpu/drm/amd/amdgpu/vega20_reg_init.c | 1 - drivers/gpu/drm/amd/amdkfd/cik_event_interrupt.c | 8 +- drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h | 145 +++--- .../gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx10.asm | 11 +- drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 19 +- drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 7 + drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c | 18 +- drivers/gpu/drm/amd/amdkfd/kfd_dbgmgr.c | 8 +- drivers/gpu/drm/amd/amdkfd/kfd_device.c | 267 +++++----- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 65 ++- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 5 +- drivers/gpu/drm/amd/amdkfd/kfd_events.c | 15 +- drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 12 +- drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c | 3 +- drivers/gpu/drm/amd/amdkfd/kfd_interrupt.c | 5 + drivers/gpu/drm/amd/amdkfd/kfd_iommu.c | 6 +- drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 3 + drivers/gpu/drm/amd/amdkfd/kfd_module.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v10.c | 37 +- drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 3 + drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 26 +- drivers/gpu/drm/amd/amdkfd/kfd_process.c | 32 +- .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c | 6 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 25 + drivers/gpu/drm/amd/amdkfd/kfd_topology.h | 3 + drivers/gpu/drm/amd/display/Kconfig | 28 +- drivers/gpu/drm/amd/display/Makefile | 7 + drivers/gpu/drm/amd/display/amdgpu_dm/Makefile | 4 + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 216 +++++++- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 14 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 31 ++ .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 346 ++++++++++++ .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h | 66 +++ .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 17 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 10 +- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 20 +- drivers/gpu/drm/amd/display/dc/Makefile | 4 + drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c | 4 + .../amd/display/dc/clk_mgr/dce110/dce110_clk_mgr.c | 27 +- .../drm/amd/display/dc/clk_mgr/dcn10/rv1_clk_mgr.c | 3 + .../amd/display/dc/clk_mgr/dcn20/dcn20_clk_mgr.c | 132 ++--- drivers/gpu/drm/amd/display/dc/core/dc.c | 173 +++--- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 114 ++-- drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c | 87 +++- drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 11 + drivers/gpu/drm/amd/display/dc/core/dc_link_hwss.c | 3 +- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 26 +- drivers/gpu/drm/amd/display/dc/dc.h | 24 +- drivers/gpu/drm/amd/display/dc/dc_dsc.h | 14 +- drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 86 ++- drivers/gpu/drm/amd/display/dc/dc_link.h | 1 + drivers/gpu/drm/amd/display/dc/dc_stream.h | 20 + drivers/gpu/drm/amd/display/dc/dc_types.h | 22 + drivers/gpu/drm/amd/display/dc/dce/dce_abm.c | 3 - drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c | 3 - drivers/gpu/drm/amd/display/dc/dce/dce_mem_input.c | 12 +- .../drm/amd/display/dc/dce100/dce100_resource.c | 2 + .../amd/display/dc/dce110/dce110_hw_sequencer.c | 12 - .../drm/amd/display/dc/dce110/dce110_resource.c | 2 + .../drm/amd/display/dc/dce112/dce112_resource.c | 18 +- .../drm/amd/display/dc/dce120/dce120_resource.c | 13 +- .../gpu/drm/amd/display/dc/dce80/dce80_resource.c | 1 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.c | 8 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.h | 28 + .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 3 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c | 5 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.h | 2 + .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.c | 2 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dccg.c | 57 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dccg.h | 2 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c | 7 - drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.h | 84 +-- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dsc.c | 2 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c | 4 - .../gpu/drm/amd/display/dc/dcn20/dcn20_hubbub.c | 12 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_hubbub.h | 1 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 577 +++++++++++++++------ drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.h | 14 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_optc.c | 4 + .../gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 37 +- .../gpu/drm/amd/display/dc/dcn21/dcn21_resource.c | 2 + drivers/gpu/drm/amd/display/dc/dm_cp_psp.h | 49 ++ drivers/gpu/drm/amd/display/dc/dm_helpers.h | 2 +- .../display/dc/dml/dcn20/display_mode_vba_20v2.c | 9 +- .../display/dc/dml/dcn20/display_rq_dlg_calc_20.c | 8 +- .../dc/dml/dcn20/display_rq_dlg_calc_20v2.c | 8 +- .../amd/display/dc/dml/dcn21/display_mode_vba_21.c | 13 +- .../amd/display/dc/dml/dml1_display_rq_dlg_calc.c | 10 +- drivers/gpu/drm/amd/display/dc/dsc/dc_dsc.c | 85 ++- drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c | 3 - .../amd/display/dc/gpio/dcn21/hw_factory_dcn21.c | 38 +- .../amd/display/dc/gpio/dcn21/hw_translate_dcn21.c | 3 +- drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c | 2 - drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 2 - drivers/gpu/drm/amd/display/dc/hdcp/Makefile | 28 + drivers/gpu/drm/amd/display/dc/hdcp/hdcp_msg.c | 326 ++++++++++++ drivers/gpu/drm/amd/display/dc/inc/core_types.h | 5 +- drivers/gpu/drm/amd/display/dc/inc/dc_link_ddc.h | 3 + .../drm/amd/display/dc/inc/hw/clk_mgr_internal.h | 10 +- drivers/gpu/drm/amd/display/dc/inc/hw/dccg.h | 3 +- drivers/gpu/drm/amd/display/dc/inc/hw/dsc.h | 12 +- drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 3 + drivers/gpu/drm/amd/display/dc/inc/resource.h | 2 + drivers/gpu/drm/amd/display/include/dal_asic_id.h | 7 +- drivers/gpu/drm/amd/display/include/hdcp_types.h | 96 ++++ .../drm/amd/display/modules/freesync/freesync.c | 36 +- drivers/gpu/drm/amd/display/modules/hdcp/Makefile | 32 ++ drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c | 426 +++++++++++++++ drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h | 442 ++++++++++++++++ .../drm/amd/display/modules/hdcp/hdcp1_execution.c | 531 +++++++++++++++++++ .../amd/display/modules/hdcp/hdcp1_transition.c | 307 +++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_ddc.c | 305 +++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_log.c | 163 ++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_log.h | 139 +++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_psp.c | 328 ++++++++++++ .../gpu/drm/amd/display/modules/hdcp/hdcp_psp.h | 272 ++++++++++ .../gpu/drm/amd/display/modules/inc/mod_freesync.h | 1 + drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h | 289 +++++++++++ .../drm/amd/display/modules/power/power_helpers.c | 93 ++-- .../drm/amd/display/modules/power/power_helpers.h | 1 + .../drm/amd/include/asic_reg/nbio/nbio_7_4_0_smn.h | 12 + .../amd/include/asic_reg/nbio/nbio_7_4_offset.h | 4 +- .../amd/include/asic_reg/nbio/nbio_7_4_sh_mask.h | 49 +- .../amd/include/asic_reg/oss/osssys_4_0_sh_mask.h | 4 + .../include/asic_reg/smuio/smuio_11_0_0_offset.h | 92 ++++ .../include/asic_reg/smuio/smuio_11_0_0_sh_mask.h | 176 +++++++ .../amd/include/ivsrcid/nbio/irqsrcs_nbif_7_4.h | 42 ++ drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 13 +- drivers/gpu/drm/amd/include/renoir_ip_offset.h | 2 +- drivers/gpu/drm/amd/include/vega10_enum.h | 1 + drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 7 +- drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 271 ++++++---- drivers/gpu/drm/amd/powerplay/arcturus_ppt.c | 22 +- drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h | 42 +- drivers/gpu/drm/amd/powerplay/inc/arcturus_ppsmc.h | 3 +- .../amd/powerplay/inc/smu11_driver_if_arcturus.h | 21 +- drivers/gpu/drm/amd/powerplay/inc/smu_types.h | 2 + drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h | 2 +- drivers/gpu/drm/amd/powerplay/navi10_ppt.c | 8 +- drivers/gpu/drm/amd/powerplay/renoir_ppt.c | 399 +++++++++++++- drivers/gpu/drm/amd/powerplay/renoir_ppt.h | 25 + drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 45 +- drivers/gpu/drm/amd/powerplay/smu_v12_0.c | 92 +++- .../gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c | 2 +- drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c | 2 - .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c | 4 +- drivers/gpu/drm/amd/powerplay/vega20_ppt.c | 13 +- drivers/gpu/drm/radeon/radeon_audio.c | 4 +- drivers/gpu/drm/radeon/radeon_drv.c | 31 ++ drivers/gpu/drm/radeon/radeon_kms.c | 25 - drivers/gpu/drm/ttm/ttm_bo.c | 44 +- include/drm/amd_asic_type.h | 56 +- include/linux/device_cgroup.h | 19 +- include/uapi/drm/amdgpu_drm.h | 4 + security/device_cgroup.c | 15 +- 276 files changed, 11831 insertions(+), 4303 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c create mode 100644 drivers/gpu/drm/amd/amdgpu/mxgpu_nv.c create mode 100644 drivers/gpu/drm/amd/amdgpu/mxgpu_nv.h create mode 100644 drivers/gpu/drm/amd/amdgpu/umc_v6_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/umc_v6_0.h create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dm_cp_psp.h create mode 100644 drivers/gpu/drm/amd/display/dc/hdcp/Makefile create mode 100644 drivers/gpu/drm/amd/display/dc/hdcp/hdcp_msg.c create mode 100644 drivers/gpu/drm/amd/display/include/hdcp_types.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/Makefile create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_execution.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_ddc.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.h create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c create mode 100644 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.h create mode 100644 drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h create mode 100644 drivers/gpu/drm/amd/include/ivsrcid/nbio/irqsrcs_nbif_7_4.h
-- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch
Am 10.10.19 um 16:34 schrieb Alex Deucher:
AOn Thu, Oct 10, 2019 at 5:54 AM Daniel Vetter daniel.vetter@ffwll.ch wrote:
On Thu, Oct 10, 2019 at 6:17 AM Alex Deucher alexdeucher@gmail.com wrote:
[SNIP] Christian König (22): drm/amdgpu: use moving fence instead of exclusive for VM updates drm/amdgpu: reserve at least 4MB of VRAM for page tables v2 drm/amdgpu: remove amdgpu_cs_try_evict
Patch no handy for a direct reply, so asking here (but this is totally unrelated to the pull):
Do you have other stuff than scanout and pagetables that need to be in vram? I was kinda assume this is needed for big vram-only objects to fit, making space by throwing stuff out that could also be put into system memory. But sounds like it was only for making pagetables fit.
Yes, basically making page tables fit. If you push a bunch of stuff to system ram, your page table requirements go up too. See the discussion here: https://www.spinics.net/lists/amd-gfx/msg38640.html
Yeah, typical chicken and egg problem.
When you evict things to system memory because you don't have enough VRAM you need more VRAM for page tables so you need to evict even more things to system memory....
Additional to that we have a few other cases where we really need VRAM for correct operation (firmware, old MM engines etc...), but nothing major like page tables.
Regards, Christian.
Alex
-Daniel
On Thu, Oct 10, 2019 at 4:37 PM Koenig, Christian Christian.Koenig@amd.com wrote:
Am 10.10.19 um 16:34 schrieb Alex Deucher:
AOn Thu, Oct 10, 2019 at 5:54 AM Daniel Vetter daniel.vetter@ffwll.ch wrote:
On Thu, Oct 10, 2019 at 6:17 AM Alex Deucher alexdeucher@gmail.com wrote:
[SNIP] Christian König (22): drm/amdgpu: use moving fence instead of exclusive for VM updates drm/amdgpu: reserve at least 4MB of VRAM for page tables v2 drm/amdgpu: remove amdgpu_cs_try_evict
Patch no handy for a direct reply, so asking here (but this is totally unrelated to the pull):
Do you have other stuff than scanout and pagetables that need to be in vram? I was kinda assume this is needed for big vram-only objects to fit, making space by throwing stuff out that could also be put into system memory. But sounds like it was only for making pagetables fit.
Yes, basically making page tables fit. If you push a bunch of stuff to system ram, your page table requirements go up too. See the discussion here: https://www.spinics.net/lists/amd-gfx/msg38640.html
Yeah read that, that's why I asked whether pagetables was the only big thing.
Yeah, typical chicken and egg problem.
When you evict things to system memory because you don't have enough VRAM you need more VRAM for page tables so you need to evict even more things to system memory....
Additional to that we have a few other cases where we really need VRAM for correct operation (firmware, old MM engines etc...), but nothing major like page tables.
Yeah makes sense. Afaiui we'll have a few more big things in vram only, so I think we'll steal this idea for i915. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch
dri-devel@lists.freedesktop.org