drm-misc-next for 5.5: UAPI Changes: -Colorspace: Expose different prop values for DP vs. HDMI (Gwan-gyeong Mun) -fourcc: Add DRM_FORMAT_MOD_ARM_16X16_BLOCK_U_INTERLEAVED (Raymond) -not_actually: s/ENOTSUPP/EOPNOTSUPP/ in drm_edid and drm_mipi_dbi. This should not reach userspace, but adding here to specifically call that out (Daniel) -i810: Prevent underflow in dispatch ioctls (Dan) -komeda: Add ACLK sysfs attribute (Mihail) -v3d: Allow userspace to clean up after render jobs (Iago) Cross-subsystem Changes: -MAINTAINERS: -Add Alyssa & Steven as panfrost reviewers (Rob) -Add Jernej as DE2 reviewer (Maxime) -Add Chen-Yu as Allwinner maintainer (Maxime) -staging: Make some stack arrays static const (Colin) Core Changes: -ttm: Allow drivers to specify their vma manager (to use gem mgr) (Gerd) -docs: Various fixes in connector/encoder/bridge docs (Daniel, Lyude, Laurent) -connector: Allow more than 3 possible encoders for a connector (José) -dp_cec: Allow a connector to be associated with a cec device (Dariusz) -various: Fix some compile/sparse warnings (Ville) -mm: Ensure mm node removals are properly serialised (Chris) -panel: Specify the type of panel for drm_panels for later use (Laurent) -panel: Use drm_panel_init to init device and funcs (Laurent) -mst: Refactors and cleanups in anticipation of suspend/resume support (Lyude) -vram: -Add lazy unmapping for gem bo's (Thomas) -Unify and rationalize vram mm and gem vram (Thomas) -Expose vmap and vunmap for gem vram objects (Thomas) -Allow objects to be pinned at the top of vram to avoid fragmentation (Thomas) Driver Changes: -various: Include drm_bridge.h instead of relying on drm_crtc.h (Boris) -ast/mgag200: Refactor show_cursor(), move cursor to top of video mem (Thomas) -komeda: -Add error event printing (behind CONFIG) and reg dump support (Lowry) -Add suspend/resume support (Lowry) -Workaround D71 shadow registers not flushing on disable (Lowry) -meson: Add suspend/resume support (Neil) -omap: Miscellaneous refactors and improvements (Tomi/Jyri) -panfrost/shmem: Silence lockdep by using mutex_trylock (Rob) -panfrost: Miscellaneous small fixes (Rob/Steven) -sti: Fix warnings (Benjamin/Linus) -sun4i: -Add vcc-dsi regulator to sun6i_mipi_dsi (Jagan) -A few patches to figure out the DRQ/start delay calc on dsi (Jagan/Icenowy) -virtio: -Add module param to switch resource reuse workaround on/off (Gerd) -Avoid calling vmexit while holding spinlock (Gerd) -Use gem shmem helpers instead of ttm (Gerd) -Accommodate command buffer allocations too big for cma (David) Cc: Rob Herring <robh@kernel.org> Cc: Maxime Ripard <mripard@kernel.org> Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Cc: Lyude Paul <lyude@redhat.com> Cc: José Roberto de Souza <jose.souza@intel.com> Cc: Dariusz Marcinkiewicz <darekm@google.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Raymond Smith <raymond.smith@arm.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Colin Ian King <colin.king@canonical.com> Cc: Thomas Zimmermann <tzimmermann@suse.de> Cc: Dan Carpenter <dan.carpenter@oracle.com> Cc: Mihail Atanassov <Mihail.Atanassov@arm.com> Cc: Lowry Li <Lowry.Li@arm.com> Cc: Neil Armstrong <narmstrong@baylibre.com> Cc: Jyri Sarha <jsarha@ti.com> Cc: Tomi Valkeinen <tomi.valkeinen@ti.com> Cc: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Cc: Steven Price <steven.price@arm.com> Cc: Benjamin Gaignard <benjamin.gaignard@st.com> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Jagan Teki <jagan@amarulasolutions.com> Cc: Icenowy Zheng <icenowy@aosc.io> Cc: Iago Toral Quiroga <itoral@igalia.com> Cc: David Riley <davidriley@chromium.org> Signed-off-by: Dave Airlie <airlied@redhat.com> # gpg: Signature made Thu 10 Oct 2019 01:00:47 AM AEST # gpg: using RSA key 732C002572DCAF79 # gpg: Can't check signature: public key not found # Conflicts: # drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c # drivers/gpu/drm/i915/i915_drv.c # drivers/gpu/drm/i915/i915_gem.c # drivers/gpu/drm/i915/i915_gem_gtt.c # drivers/gpu/drm/i915/i915_vma.c From: Sean Paul <sean@poorly.run> Link: https://patchwork.freedesktop.org/patch/msgid/20191009150825.GA227673@art_vandelay
Showing the changes to include/uapi (2 of 299 files). Show all
Unified · Split
| @@ -648,7 +648,21 @@ extern "C" { · 647 unmodified lines | ||
| 648 | 648 | * Further information on the use of AFBC modifiers can be found in |
| 649 | 649 | * Documentation/gpu/afbc.rst |
| 650 | 650 | */ |
| 651 | −#define DRM_FORMAT_MOD_ARM_AFBC(__afbc_mode) fourcc_mod_code(ARM, __afbc_mode) | |
| 651 | + | |
| 652 | +/* | |
| 653 | + * The top 4 bits (out of the 56 bits alloted for specifying vendor specific | |
| 654 | + * modifiers) denote the category for modifiers. Currently we have only two | |
| 655 | + * categories of modifiers ie AFBC and MISC. We can have a maximum of sixteen | |
| 656 | + * different categories. | |
| 657 | + */ | |
| 658 | +#define DRM_FORMAT_MOD_ARM_CODE(__type, __val) \ | |
| 659 | + fourcc_mod_code(ARM, ((__u64)(__type) << 52) | ((__val) & 0x000fffffffffffffULL)) | |
| 660 | + | |
| 661 | +#define DRM_FORMAT_MOD_ARM_TYPE_AFBC 0x00 | |
| 662 | +#define DRM_FORMAT_MOD_ARM_TYPE_MISC 0x01 | |
| 663 | + | |
| 664 | +#define DRM_FORMAT_MOD_ARM_AFBC(__afbc_mode) \ | |
| 665 | + DRM_FORMAT_MOD_ARM_CODE(DRM_FORMAT_MOD_ARM_TYPE_AFBC, __afbc_mode) | |
| 652 | 666 | |
| 653 | 667 | /* |
| 654 | 668 | * AFBC superblock size |
| @@ -742,6 +756,16 @@ extern "C" { · 87 unmodified lines | ||
| 742 | 756 | */ |
| 743 | 757 | #define AFBC_FORMAT_MOD_BCH (1ULL << 11) |
| 744 | 758 | |
| 759 | +/* | |
| 760 | + * Arm 16x16 Block U-Interleaved modifier | |
| 761 | + * | |
| 762 | + * This is used by Arm Mali Utgard and Midgard GPUs. It divides the image | |
| 763 | + * into 16x16 pixel blocks. Blocks are stored linearly in order, but pixels | |
| 764 | + * in the block are reordered. | |
| 765 | + */ | |
| 766 | +#define DRM_FORMAT_MOD_ARM_16X16_BLOCK_U_INTERLEAVED \ | |
| 767 | + DRM_FORMAT_MOD_ARM_CODE(DRM_FORMAT_MOD_ARM_TYPE_MISC, 1ULL) | |
| 768 | + | |
| 745 | 769 | /* |
| 746 | 770 | * Allwinner tiled modifier |
| 747 | 771 | * |
| @@ -48,6 +48,8 @@ extern "C" { · 47 unmodified lines | ||
| 48 | 48 | #define DRM_IOCTL_V3D_SUBMIT_TFU DRM_IOW(DRM_COMMAND_BASE + DRM_V3D_SUBMIT_TFU, struct drm_v3d_submit_tfu) |
| 49 | 49 | #define DRM_IOCTL_V3D_SUBMIT_CSD DRM_IOW(DRM_COMMAND_BASE + DRM_V3D_SUBMIT_CSD, struct drm_v3d_submit_csd) |
| 50 | 50 | |
| 51 | +#define DRM_V3D_SUBMIT_CL_FLUSH_CACHE 0x01 | |
| 52 | + | |
| 51 | 53 | /** |
| 52 | 54 | * struct drm_v3d_submit_cl - ioctl argument for submitting commands to the 3D |
| 53 | 55 | * engine. |
| @@ -61,7 +63,7 @@ extern "C" { · 7 unmodified lines | ||
| 61 | 63 | * flushed by the time the render done IRQ happens, which is the |
| 62 | 64 | * trigger for out_sync. Any dirtying of cachelines by the job (only |
| 63 | 65 | * possible using TMU writes) must be flushed by the caller using the |
| 64 | − * CL's cache flush commands. | |
| 66 | + * DRM_V3D_SUBMIT_CL_FLUSH_CACHE_FLAG flag. | |
| 65 | 67 | */ |
| 66 | 68 | struct drm_v3d_submit_cl { |
| 67 | 69 | /* Pointer to the binner command list. |
| @@ -124,8 +126,7 @@ struct drm_v3d_submit_cl { · 56 unmodified lines | ||
| 124 | 126 | /* Number of BO handles passed in (size is that times 4). */ |
| 125 | 127 | __u32 bo_handle_count; |
| 126 | 128 | |
| 127 | − /* Pad, must be zero-filled. */ | |
| 128 | − __u32 pad; | |
| 129 | + __u32 flags; | |
| 129 | 130 | }; |
| 130 | 131 | |
| 131 | 132 | /** |
| @@ -193,6 +194,7 @@ enum drm_v3d_param { · 61 unmodified lines | ||
| 193 | 194 | DRM_V3D_PARAM_V3D_CORE0_IDENT2, |
| 194 | 195 | DRM_V3D_PARAM_SUPPORTS_TFU, |
| 195 | 196 | DRM_V3D_PARAM_SUPPORTS_CSD, |
| 197 | + DRM_V3D_PARAM_SUPPORTS_CACHE_FLUSH, | |
| 196 | 198 | }; |
| 197 | 199 | |
| 198 | 200 | struct drm_v3d_get_param { |