Hi Dave and Daniel, here's this week's PR for drm-misc-next for what will become Linux 5.17. Every single patchset in this PR is awesome: vmwgfx now supports GL 4.3 userspace and GEM (yeah!), simpledrm added support for Apple M1 firmware framebuffers, the SPRD drivers finally got merged, vc4 added support for 10-bit YUV output. And of course, we have the usual round of bug fixes. Besides the DRM updates, there's a backmerge from drm-next that brings drm-misc-next up to v5.16-rc5. Best regards Thomas drm-misc-next-2021-12-16: drm-misc-next for 5.17: UAPI Changes: * vmwgfx: Version bump to 2.20 Cross-subsystem Changes: * of: Create simple-framebuffer devices in of_platform_default_init() Core Changes: * Replace include <linux/kernel.h> with more fine-grained includes * Document DRM_IOCTL_MODE_GETFB2 * format-helper: Support XRGB2101010 source buffers Driver Changes: * amdgpu: Fix runtime PM on some configs * ast: Fix I2C initialization * bridge: ti-sn65dsi86: Set regmap max_register * panel: Add Team Source Display TST043015CMHX plus DT bindings * simpledrm: Add support for Apple M1 * sprd: Add various drivers plus DT bindings * vc4: Support 10-bit YUV 4:2:0 output; Fix clock-rate updates * vmwgfx: Implement GEM support; Implement GL 4.3 support The following changes since commit 244a36e50da05c33b860d20638ee4628017a5334: drm/vc4: kms: Wait for the commit before increasing our clock rate (2021-12-15 12:10:50 +0100) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-next-2021-12-16 for you to fetch changes up to 9758ff2fa240173e9a45613b07774b7a78b7653e: Merge drm/drm-next into drm-misc-next (2021-12-16 14:48:27 +0100) ---------------------------------------------------------------- drm-misc-next for 5.17: UAPI Changes: * vmwgfx: Version bump to 2.20 Cross-subsystem Changes: * of: Create simple-framebuffer devices in of_platform_default_init() Core Changes: * Replace include <linux/kernel.h> with more fine-grained includes * Document DRM_IOCTL_MODE_GETFB2 * format-helper: Support XRGB2101010 source buffers Driver Changes: * amdgpu: Fix runtime PM on some configs * ast: Fix I2C initialization * bridge: ti-sn65dsi86: Set regmap max_register * panel: Add Team Source Display TST043015CMHX plus DT bindings * simpledrm: Add support for Apple M1 * sprd: Add various drivers plus DT bindings * vc4: Support 10-bit YUV 4:2:0 output; Fix clock-rate updates * vmwgfx: Implement GEM support; Implement GL 4.3 support ---------------------------------------------------------------- Andy Shevchenko (1): drm: Replace kernel.h with the necessary inclusions Christian König (1): drm/amdgpu: don't skip runtime pm get on A+A config Dave Stevenson (3): drm/fourcc: Add packed 10bit YUV 4:2:0 format drm/vc4: plane: Add support for DRM_FORMAT_P030 drm/vc4: plane: Add support for YUV color encodings and ranges Hector Martin (3): of: Move simple-framebuffer device handling from simplefb to of drm/format-helper: Add drm_fb_xrgb8888_to_xrgb2101010_toio() drm/simpledrm: Add [AX]RGB2101010 formats Kevin Tang (6): dt-bindings: display: add Unisoc's drm master bindings drm/sprd: add Unisoc's drm kms master dt-bindings: display: add Unisoc's dpu bindings drm/sprd: add Unisoc's drm display controller driver dt-bindings: display: add Unisoc's mipi dsi controller bindings drm/sprd: add Unisoc's drm mipi dsi&dphy driver Marek Vasut (5): dt-bindings: display: bridge: lvds-codec: Document pixel data sampling edge select drm/bridge: lvds-codec: Add support for pixel data sampling edge select dt-bindings: Add Team Source Display Technology vendor prefix dt-bindings: display: simple: Add Team Source Display TST043015CMHX panel drm/panel: simple: Add Team Source Display TST043015CMHX panel Roland Scheidegger (2): drm/vmwgfx: support SVGA_3D_CMD_DX_DEFINE_RASTERIZER_STATE_V2 command drm/vmwgfx: add support for updating only offsets of constant buffers Simon Ser (1): drm: document DRM_IOCTL_MODE_GETFB2 Stephen Boyd (1): drm/bridge: ti-sn65dsi86: Set max register for regmap Thomas Zimmermann (4): drm/ast: Handle failed I2C initialization gracefully drm/ast: Convert I2C code to managed cleanup drm/ast: Move I2C code into separate source file Merge drm/drm-next into drm-misc-next Zack Rusin (10): drm/vmwgfx: Remove the dedicated memory accounting drm/vmwgfx: Add a debug callback to mobid resource manager drm/vmwgfx: Stop hardcoding the PCI ID drm/vmwgfx: Implement DRIVER_GEM drm/vmwgfx: Implement create_handle on drm_framebuffer_funcs drm/vmwgfx: Update device headers for GL43 drm/vmwgfx: support 64 UAVs drm/vmwgfx: Allow checking for gl43 contexts drm/vmwgfx: Remove usage of MOBFMT_RANGE drm/vmwgfx: Bump the minor version .../bindings/display/bridge/lvds-codec.yaml | 18 + .../bindings/display/panel/panel-simple.yaml | 2 + .../display/sprd/sprd,display-subsystem.yaml | 64 ++ .../bindings/display/sprd/sprd,sharkl3-dpu.yaml | 77 ++ .../display/sprd/sprd,sharkl3-dsi-host.yaml | 88 ++ .../devicetree/bindings/vendor-prefixes.yaml | 2 + drivers/gpu/drm/Kconfig | 2 + drivers/gpu/drm/Makefile | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c | 3 - drivers/gpu/drm/ast/Makefile | 2 +- drivers/gpu/drm/ast/ast_drv.h | 3 + drivers/gpu/drm/ast/ast_i2c.c | 152 +++ drivers/gpu/drm/ast/ast_mode.c | 151 +-- drivers/gpu/drm/bridge/lvds-codec.c | 15 + drivers/gpu/drm/bridge/ti-sn65dsi86.c | 1 + drivers/gpu/drm/drm_format_helper.c | 64 ++ drivers/gpu/drm/drm_fourcc.c | 3 + drivers/gpu/drm/panel/panel-simple.c | 30 + drivers/gpu/drm/sprd/Kconfig | 13 + drivers/gpu/drm/sprd/Makefile | 8 + drivers/gpu/drm/sprd/megacores_pll.c | 305 ++++++ drivers/gpu/drm/sprd/sprd_dpu.c | 880 ++++++++++++++++ drivers/gpu/drm/sprd/sprd_dpu.h | 109 ++ drivers/gpu/drm/sprd/sprd_drm.c | 205 ++++ drivers/gpu/drm/sprd/sprd_drm.h | 19 + drivers/gpu/drm/sprd/sprd_dsi.c | 1073 ++++++++++++++++++++ drivers/gpu/drm/sprd/sprd_dsi.h | 126 +++ drivers/gpu/drm/tiny/simpledrm.c | 4 +- drivers/gpu/drm/vc4/vc4_bo.c | 2 +- drivers/gpu/drm/vc4/vc4_plane.c | 198 +++- drivers/gpu/drm/vc4/vc4_regs.h | 19 +- drivers/gpu/drm/vmwgfx/Kconfig | 1 + drivers/gpu/drm/vmwgfx/Makefile | 3 +- drivers/gpu/drm/vmwgfx/device_include/svga3d_cmd.h | 6 +- .../gpu/drm/vmwgfx/device_include/svga3d_devcaps.h | 10 +- drivers/gpu/drm/vmwgfx/device_include/svga3d_dx.h | 12 +- .../gpu/drm/vmwgfx/device_include/svga3d_limits.h | 8 +- drivers/gpu/drm/vmwgfx/device_include/svga3d_reg.h | 6 +- .../gpu/drm/vmwgfx/device_include/svga3d_types.h | 7 +- .../gpu/drm/vmwgfx/device_include/svga_escape.h | 6 +- .../gpu/drm/vmwgfx/device_include/svga_overlay.h | 6 +- drivers/gpu/drm/vmwgfx/device_include/svga_reg.h | 14 +- drivers/gpu/drm/vmwgfx/ttm_memory.c | 586 ----------- drivers/gpu/drm/vmwgfx/ttm_memory.h | 92 -- drivers/gpu/drm/vmwgfx/ttm_object.c | 150 +-- drivers/gpu/drm/vmwgfx/ttm_object.h | 56 +- drivers/gpu/drm/vmwgfx/vmwgfx_binding.c | 45 +- drivers/gpu/drm/vmwgfx/vmwgfx_binding.h | 4 +- drivers/gpu/drm/vmwgfx/vmwgfx_bo.c | 580 +++-------- drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c | 19 - drivers/gpu/drm/vmwgfx/vmwgfx_context.c | 30 +- drivers/gpu/drm/vmwgfx/vmwgfx_cotable.c | 26 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 47 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 128 +-- drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 82 +- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 13 +- drivers/gpu/drm/vmwgfx/vmwgfx_fence.c | 43 +- drivers/gpu/drm/vmwgfx/vmwgfx_gem.c | 294 ++++++ drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c | 16 +- drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c | 3 + drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 45 +- drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 1 - drivers/gpu/drm/vmwgfx/vmwgfx_mob.c | 13 +- drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_page_dirty.c | 20 +- drivers/gpu/drm/vmwgfx/vmwgfx_prime.c | 1 - drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 17 +- drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 10 +- drivers/gpu/drm/vmwgfx/vmwgfx_shader.c | 91 +- drivers/gpu/drm/vmwgfx/vmwgfx_simple_resource.c | 29 +- drivers/gpu/drm/vmwgfx/vmwgfx_so.c | 21 +- drivers/gpu/drm/vmwgfx/vmwgfx_so.h | 6 +- drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_streamoutput.c | 21 - drivers/gpu/drm/vmwgfx/vmwgfx_surface.c | 158 +-- drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 77 +- drivers/gpu/drm/vmwgfx/vmwgfx_ttm_glue.c | 74 +- drivers/gpu/drm/vmwgfx/vmwgfx_va.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_validation.c | 13 +- drivers/gpu/drm/vmwgfx/vmwgfx_validation.h | 46 - drivers/of/platform.c | 4 + drivers/video/fbdev/simplefb.c | 21 +- include/drm/drm_format_helper.h | 3 + include/drm/drm_gem_ttm_helper.h | 2 +- include/drm/drm_gem_vram_helper.h | 2 +- include/drm/drm_mm.h | 4 +- include/uapi/drm/drm.h | 18 + include/uapi/drm/drm_fourcc.h | 11 + include/uapi/drm/vmwgfx_drm.h | 1 + 89 files changed, 4314 insertions(+), 2333 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/sprd/sprd,display-subsystem.yaml create mode 100644 Documentation/devicetree/bindings/display/sprd/sprd,sharkl3-dpu.yaml create mode 100644 Documentation/devicetree/bindings/display/sprd/sprd,sharkl3-dsi-host.yaml create mode 100644 drivers/gpu/drm/ast/ast_i2c.c create mode 100644 drivers/gpu/drm/sprd/Kconfig create mode 100644 drivers/gpu/drm/sprd/Makefile create mode 100644 drivers/gpu/drm/sprd/megacores_pll.c create mode 100644 drivers/gpu/drm/sprd/sprd_dpu.c create mode 100644 drivers/gpu/drm/sprd/sprd_dpu.h create mode 100644 drivers/gpu/drm/sprd/sprd_drm.c create mode 100644 drivers/gpu/drm/sprd/sprd_drm.h create mode 100644 drivers/gpu/drm/sprd/sprd_dsi.c create mode 100644 drivers/gpu/drm/sprd/sprd_dsi.h delete mode 100644 drivers/gpu/drm/vmwgfx/ttm_memory.c delete mode 100644 drivers/gpu/drm/vmwgfx/ttm_memory.h create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_gem.c -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Maxfeldstr. 5, 90409 Nürnberg, Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer