Assuming I merged it right, 32-bit builds adds warning In file included from /home/airlied/devel/kernel/dim/src/include/linux/bitops.h:5, from /home/airlied/devel/kernel/dim/src/include/linux/kernel.h:12, from /home/airlied/devel/kernel/dim/src/include/linux/ascii85.h:11, from /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/msm/adreno/adreno_gpu.c:9: /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/msm/adreno/adreno_gpu.c: In function ‘adreno_iommu_create_address_space’: /home/airlied/devel/kernel/dim/src/include/linux/bits.h:36:11: warning: right shift count is negative [-Wshift-count-negative] (~UL(0) >> (BITS_PER_LONG - 1 - (h)))) ^~ /home/airlied/devel/kernel/dim/src/include/linux/bits.h:38:31: note: in expansion of macro ‘__GENMASK’ (GENMASK_INPUT_CHECK(h, l) + __GENMASK(h, l)) ^~~~~~~~~ /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/msm/adreno/adreno_gpu.c:212:11: note: in expansion of macro ‘GENMASK’ start & GENMASK(48, 0), size); ^~~~~~~ CC [M] drivers/gpu/drm/msm/dsi/pll/dsi_pll_7nm.o /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/msm/dsi/pll/dsi_pll_7nm.c: In function ‘msm_dsi_pll_7nm_init’: /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/msm/dsi/pll/dsi_pll_7nm.c:882:19: warning: conversion from ‘long long unsigned int’ to ‘long unsigned int’ changes value from ‘5000000000’ to ‘705032704’ [-Woverflow] pll->max_rate = 5000000000UL; ^~~~~~~~~~~~ LD [M] drivers/gpu/drm/msm/msm.o Dave. On Mon, 28 Sep 2020 at 03:14, Rob Clark <robdclark@xxxxxxxxx> wrote: > > Hi Dave, > > A bit bigger this time around, with the addition of DP support > which has been baking for a while now. Overall: > > * DSI support for sm8150/sm8250 > * Support for per-process GPU pagetables (finally!) for a6xx. > There are still some iommu/arm-smmu changes required to > enable, without which it will fallback to the current single > pgtable state. The first part (ie. what doesn't depend on > drm side patches) is queued up for v5.10[1]. > * DisplayPort support. Userspace DP compliance tool support > is already merged in IGT[2] > * The usual assortment of smaller fixes/cleanups > > > [1] https://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git/log/?h=for-joerg/arm-smmu/updates > [2] https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/commit/222051026b978ebbc0dc58db62d7a1f29728f95f > > The following changes since commit f6828e0c4045f03f9cf2df6c2a768102641183f4: > > drm/msm: Disable the RPTR shadow (2020-09-04 12:14:15 -0700) > > are available in the Git repository at: > > https://gitlab.freedesktop.org/drm/msm.git tags/drm-msm-next-2020-09-27 > > for you to fetch changes up to d1ea914925856d397b0b3241428f20b945e31434: > > drm/msm/dp: fix incorrect function prototype of dp_debug_get() > (2020-09-25 20:31:06 -0700) > > ---------------------------------------------------------------- > Abhinav Kumar (10): > drm/msm/dp: store dp_display in the driver data > drm/msm/dp: add audio support for Display Port on MSM > drm/msm/dp: add hook_plugged_cb hdmi-codec op for MSM DP driver > drm/msm/dp: signal the hotplug disconnect in the event handler > drm/msm/dp: wait for audio notification before disabling clocks > drm/msm/dp: add debugfs support to DP driver > drm/msm/dp: move debugfs node to /sys/kernel/debug/dri/*/ > drm/msm/dp: add debugfs nodes for video pattern tests > drm/msm/dp: remove mode hard-coding in case of DP CTS > drm/msm/dp: fix incorrect function prototype of dp_debug_get() > > Akhil P Oommen (2): > drm/msm: Fix premature purging of BO > drm/msm: Leave inuse count intact on map failure > > Bernard Zhao (1): > drm/msm/adreno: remove return value of function XX_print > > Chandan Uddaraju (3): > drm: add constant N value in helper file > drm/msm/dp: add displayPort driver support > drm/msm/dp: add support for DP PLL driver > > Georgi Djakov (1): > drm/msm: Remove depends on interconnect > > Jeykumar Sankaran (1): > drm/msm/dpu: add display port support in DPU > > Jonathan Marek (3): > drm/msm/dsi: remove unused clk_pre/clk_post in msm_dsi_dphy_timing > drm/msm/dsi: add DSI config for sm8150 and sm8250 > drm/msm/dsi: add support for 7nm DSI PHY/PLL > > Jordan Crouse (10): > drm/msm: Add a context pointer to the submitqueue > drm/msm: Drop context arg to gpu->submit() > drm/msm: Set the global virtual address range from the IOMMU domain > drm/msm: Add support to create a local pagetable > drm/msm: Add support for private address space instances > drm/msm/a6xx: Add support for per-instance pagetables > drm/msm: Allow a5xx to mark the RPTR shadow as privileged > drm/msm: a6xx: Use WHERE_AM_I for eligible targets > drm/msm: Get rid of the REG_ADRENO offsets > drm/msm: Fix the a650 hw_apriv check > > Kalyan Thota (1): > drm/msm/dpu: add support for clk and bw scaling for display > > Kuogee Hsieh (1): > drm/msm/dp: Add DP compliance tests on Snapdragon Chipsets > > Luca Weiss (1): > drm/msm/adreno: fix probe without iommu > > Luo Jiaxing (1): > drm/msm/dpu: remove unused variables new_cnt and old_cnt in > dpu_encoder_phys_vid_vblank_irq() > > Qinglang Miao (1): > drm/msm/dpu: Convert to DEFINE_SHOW_ATTRIBUTE > > Rob Clark (12): > drm/msm: drop cache sync hack > drm/msm/dpu: move vblank events to complete_commit() > drm/msm/dpu: clean up some impossibilities > drm/msm/gpu: Add GPU freq_change traces > drm/msm: Convert shrinker msgs to tracepoints > drm/msm/gpu: Add suspend/resume tracepoints > drm/msm: Remove dangling submitqueue references > drm/msm: Add private interface for adreno-smmu > drm/msm/gpu: Add dev_to_gpu() helper > drm/msm: Set adreno_smmu as gpu's drvdata > drm/msm: Show process names in gem_describe > drm/msm/dp: Fix crash if no DP device > > Robin Murphy (1): > drm/msm: Drop local dma_parms > > Sai Prakash Ranjan (2): > drm/msm/mdp4: Remove unused downstream bus scaling apis > drm/msm/mdp5: Remove unused downstream bus scaling apis > > Stephen Boyd (4): > drm/msm: Avoid div-by-zero in dpu_crtc_atomic_check() > drm/msm: Drop debug print in _dpu_crtc_setup_lm_bounds() > drm/msm/dp: Use qmp phy for DP PLL and PHY > drm/msm/dp: Sleep properly in dp_hpd_handler kthread > > Tanmay Shah (1): > drm/msm/dp: Add Display Port HPD feature > > Zhenzhong Duan (1): > drm/msm/a6xx: fix a potential overflow issue > > .../devicetree/bindings/display/msm/dsi.txt | 6 +- > drivers/gpu/drm/i915/display/intel_display.c | 2 +- > drivers/gpu/drm/msm/Kconfig | 19 +- > drivers/gpu/drm/msm/Makefile | 18 +- > drivers/gpu/drm/msm/adreno/a2xx_gpu.c | 65 +- > drivers/gpu/drm/msm/adreno/a3xx_gpu.c | 77 +- > drivers/gpu/drm/msm/adreno/a4xx_gpu.c | 82 +- > drivers/gpu/drm/msm/adreno/a5xx_debugfs.c | 21 +- > drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 120 +- > drivers/gpu/drm/msm/adreno/a5xx_gpu.h | 12 + > drivers/gpu/drm/msm/adreno/a5xx_power.c | 2 +- > drivers/gpu/drm/msm/adreno/a5xx_preempt.c | 5 +- > drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 3 + > drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 182 +- > drivers/gpu/drm/msm/adreno/a6xx_gpu.h | 10 + > drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c | 2 +- > drivers/gpu/drm/msm/adreno/adreno_device.c | 12 +- > drivers/gpu/drm/msm/adreno/adreno_gpu.c | 105 +- > drivers/gpu/drm/msm/adreno/adreno_gpu.h | 82 +- > drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h | 1 + > drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c | 15 +- > drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c | 109 +- > drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 132 +- > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 55 +- > .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 14 +- > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 5 +- > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h | 4 + > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 145 +- > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | 4 + > drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c | 9 +- > drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 84 + > drivers/gpu/drm/msm/disp/dpu1/dpu_plane.h | 4 + > drivers/gpu/drm/msm/disp/mdp4/mdp4_dtv_encoder.c | 51 - > drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h | 13 - > drivers/gpu/drm/msm/disp/mdp4/mdp4_lcdc_encoder.c | 47 - > drivers/gpu/drm/msm/disp/mdp5/mdp5_cmd_encoder.c | 24 - > drivers/gpu/drm/msm/disp/mdp5/mdp5_encoder.c | 68 - > drivers/gpu/drm/msm/dp/dp_audio.c | 638 +++++++ > drivers/gpu/drm/msm/dp/dp_audio.h | 72 + > drivers/gpu/drm/msm/dp/dp_aux.c | 535 ++++++ > drivers/gpu/drm/msm/dp/dp_aux.h | 30 + > drivers/gpu/drm/msm/dp/dp_catalog.c | 1019 +++++++++++ > drivers/gpu/drm/msm/dp/dp_catalog.h | 131 ++ > drivers/gpu/drm/msm/dp/dp_ctrl.c | 1869 ++++++++++++++++++++ > drivers/gpu/drm/msm/dp/dp_ctrl.h | 36 + > drivers/gpu/drm/msm/dp/dp_debug.c | 485 +++++ > drivers/gpu/drm/msm/dp/dp_debug.h | 74 + > drivers/gpu/drm/msm/dp/dp_display.c | 1463 +++++++++++++++ > drivers/gpu/drm/msm/dp/dp_display.h | 39 + > drivers/gpu/drm/msm/dp/dp_drm.c | 164 ++ > drivers/gpu/drm/msm/dp/dp_drm.h | 18 + > drivers/gpu/drm/msm/dp/dp_hpd.c | 69 + > drivers/gpu/drm/msm/dp/dp_hpd.h | 80 + > drivers/gpu/drm/msm/dp/dp_link.c | 1210 +++++++++++++ > drivers/gpu/drm/msm/dp/dp_link.h | 155 ++ > drivers/gpu/drm/msm/dp/dp_panel.c | 463 +++++ > drivers/gpu/drm/msm/dp/dp_panel.h | 100 ++ > drivers/gpu/drm/msm/dp/dp_parser.c | 293 +++ > drivers/gpu/drm/msm/dp/dp_parser.h | 136 ++ > drivers/gpu/drm/msm/dp/dp_power.c | 372 ++++ > drivers/gpu/drm/msm/dp/dp_power.h | 107 ++ > drivers/gpu/drm/msm/dp/dp_reg.h | 306 ++++ > drivers/gpu/drm/msm/dsi/dsi.h | 2 + > drivers/gpu/drm/msm/dsi/dsi.xml.h | 423 +++++ > drivers/gpu/drm/msm/dsi/dsi_cfg.c | 5 +- > drivers/gpu/drm/msm/dsi/dsi_cfg.h | 2 + > drivers/gpu/drm/msm/dsi/phy/dsi_phy.c | 102 ++ > drivers/gpu/drm/msm/dsi/phy/dsi_phy.h | 6 +- > drivers/gpu/drm/msm/dsi/phy/dsi_phy_7nm.c | 255 +++ > drivers/gpu/drm/msm/dsi/pll/dsi_pll.c | 4 + > drivers/gpu/drm/msm/dsi/pll/dsi_pll.h | 10 + > drivers/gpu/drm/msm/dsi/pll/dsi_pll_7nm.c | 904 ++++++++++ > drivers/gpu/drm/msm/msm_drv.c | 28 +- > drivers/gpu/drm/msm/msm_drv.h | 97 +- > drivers/gpu/drm/msm/msm_gem.c | 75 +- > drivers/gpu/drm/msm/msm_gem.h | 10 +- > drivers/gpu/drm/msm/msm_gem_shrinker.c | 5 +- > drivers/gpu/drm/msm/msm_gem_submit.c | 8 +- > drivers/gpu/drm/msm/msm_gem_vma.c | 14 +- > drivers/gpu/drm/msm/msm_gpu.c | 56 +- > drivers/gpu/drm/msm/msm_gpu.h | 22 +- > drivers/gpu/drm/msm/msm_gpu_trace.h | 83 + > drivers/gpu/drm/msm/msm_gpummu.c | 2 +- > drivers/gpu/drm/msm/msm_iommu.c | 206 ++- > drivers/gpu/drm/msm/msm_mmu.h | 16 +- > drivers/gpu/drm/msm/msm_ringbuffer.h | 1 + > drivers/gpu/drm/msm/msm_submitqueue.c | 7 +- > include/drm/drm_dp_helper.h | 1 + > include/linux/adreno-smmu-priv.h | 36 + > 89 files changed, 13076 insertions(+), 777 deletions(-) > create mode 100644 drivers/gpu/drm/msm/dp/dp_audio.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_audio.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_aux.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_aux.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_catalog.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_catalog.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_ctrl.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_ctrl.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_debug.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_debug.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_display.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_display.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_drm.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_drm.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_hpd.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_hpd.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_link.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_link.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_panel.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_panel.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_parser.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_parser.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_power.c > create mode 100644 drivers/gpu/drm/msm/dp/dp_power.h > create mode 100644 drivers/gpu/drm/msm/dp/dp_reg.h > create mode 100644 drivers/gpu/drm/msm/dsi/phy/dsi_phy_7nm.c > create mode 100644 drivers/gpu/drm/msm/dsi/pll/dsi_pll_7nm.c > create mode 100644 include/linux/adreno-smmu-priv.h