mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-19 21:21:09 +00:00
drm-misc-next for 5.5:
UAPI Changes: -syncobj: allow querying the last submitted timeline value (David) -fourcc: explicitly defineDRM_FORMAT_BIG_ENDIAN as unsigned (Adam) -omap: revert the OMAP_BO_* flags that were added -- no userspace (Sean) Cross-subsystem Changes: -MAINTAINERS: add Mihail as komeda co-maintainer (Mihail) Core Changes: -edid: a few cleanups, add AVI infoframe bar info (Ville) -todo: remove i915 device_link item and add difficulty levels (Daniel) -dp_helpers: add a few new helpers to parse dpcd (Thierry) Driver Changes: -gma500: fix a few memory disclosure leaks (Kangjie) -qxl: convert to use the new drm_gem_object_funcs.mmap (Gerd) -various: open code dp_link helpers in preparation for helper removal (Thierry) Cc: Chunming Zhou <david1.zhou@amd.com> Cc: Adam Jackson <ajax@redhat.com> Cc: Sean Paul <seanpaul@chromium.org> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Kangjie Lu <kjlu@umn.edu> Cc: Mihail Atanassov <mihail.atanassov@arm.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Thierry Reding <treding@nvidia.com> -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEHF6rntfJ3enn8gh8cywAJXLcr3kFAl2xxiYACgkQcywAJXLc r3mJowf/U9ANPuvF+lahI6IVKpE4KD8Pz+73uNhjmxq5TnmcA7eNJ2pb8HO38tU2 lkchhaQEGZR96nVL962DkegEDu8p08RpYYwKv8r+sDV+zw/aviN/ANLSmTVtZ//m wzgUI7zIqF1WxKdFEzNmQVuY0hYd4fWBn6kGvw1jS/6xL2/3KR6hKVigBZwkICSt /ZiCZyxA7HhAlqzasn+PqGkuLVYv6NvFu4Ug6YG4nBOh57IrKmGt1a6cEUjGsHFf 6Ets5wTPu2ydMRvY+v6rUDDRj6JJQph7Lv4hVKtg13FerJ1+OQ7xjhu4gIk1oNl/ 7zIgRWMVZj79ksMXyk6zgFD2rZAF3w== =Fm3U -----END PGP SIGNATURE----- Merge tag 'drm-misc-next-2019-10-24-2' of git://anongit.freedesktop.org/drm/drm-misc into drm-next drm-misc-next for 5.5: UAPI Changes: -syncobj: allow querying the last submitted timeline value (David) -fourcc: explicitly defineDRM_FORMAT_BIG_ENDIAN as unsigned (Adam) -omap: revert the OMAP_BO_* flags that were added -- no userspace (Sean) Cross-subsystem Changes: -MAINTAINERS: add Mihail as komeda co-maintainer (Mihail) Core Changes: -edid: a few cleanups, add AVI infoframe bar info (Ville) -todo: remove i915 device_link item and add difficulty levels (Daniel) -dp_helpers: add a few new helpers to parse dpcd (Thierry) Driver Changes: -gma500: fix a few memory disclosure leaks (Kangjie) -qxl: convert to use the new drm_gem_object_funcs.mmap (Gerd) -various: open code dp_link helpers in preparation for helper removal (Thierry) Cc: Chunming Zhou <david1.zhou@amd.com> Cc: Adam Jackson <ajax@redhat.com> Cc: Sean Paul <seanpaul@chromium.org> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Kangjie Lu <kjlu@umn.edu> Cc: Mihail Atanassov <mihail.atanassov@arm.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Thierry Reding <treding@nvidia.com> Signed-off-by: Dave Airlie <airlied@redhat.com> From: Sean Paul <sean@poorly.run> Link: https://patchwork.freedesktop.org/patch/msgid/20191024155535.GA10294@art_vandelay
This commit is contained in:
commit
a24e4b09dc
137 changed files with 1856 additions and 2016 deletions
|
@ -77,9 +77,6 @@ Atomic State Reset and Initialization
|
|||
Atomic State Helper Reference
|
||||
-----------------------------
|
||||
|
||||
.. kernel-doc:: include/drm/drm_atomic_state_helper.h
|
||||
:internal:
|
||||
|
||||
.. kernel-doc:: drivers/gpu/drm/drm_atomic_state_helper.c
|
||||
:export:
|
||||
|
||||
|
|
|
@ -7,6 +7,22 @@ TODO list
|
|||
This section contains a list of smaller janitorial tasks in the kernel DRM
|
||||
graphics subsystem useful as newbie projects. Or for slow rainy days.
|
||||
|
||||
Difficulty
|
||||
----------
|
||||
|
||||
To make it easier task are categorized into different levels:
|
||||
|
||||
Starter: Good tasks to get started with the DRM subsystem.
|
||||
|
||||
Intermediate: Tasks which need some experience with working in the DRM
|
||||
subsystem, or some specific GPU/display graphics knowledge. For debugging issue
|
||||
it's good to have the relevant hardware (or a virtual driver set up) available
|
||||
for testing.
|
||||
|
||||
Advanced: Tricky tasks that need fairly good understanding of the DRM subsystem
|
||||
and graphics topics. Generally need the relevant hardware for development and
|
||||
testing.
|
||||
|
||||
Subsystem-wide refactorings
|
||||
===========================
|
||||
|
||||
|
@ -20,6 +36,8 @@ implementations), and then remove it.
|
|||
|
||||
Contact: Daniel Vetter, respective driver maintainers
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Convert existing KMS drivers to atomic modesetting
|
||||
--------------------------------------------------
|
||||
|
||||
|
@ -38,6 +56,8 @@ do by directly using the new atomic helper driver callbacks.
|
|||
|
||||
Contact: Daniel Vetter, respective driver maintainers
|
||||
|
||||
Level: Advanced
|
||||
|
||||
Clean up the clipped coordination confusion around planes
|
||||
---------------------------------------------------------
|
||||
|
||||
|
@ -50,6 +70,8 @@ helpers.
|
|||
|
||||
Contact: Ville Syrjälä, Daniel Vetter, driver maintainers
|
||||
|
||||
Level: Advanced
|
||||
|
||||
Convert early atomic drivers to async commit helpers
|
||||
----------------------------------------------------
|
||||
|
||||
|
@ -63,6 +85,8 @@ events for atomic commits correctly. But fixing these bugs is good anyway.
|
|||
|
||||
Contact: Daniel Vetter, respective driver maintainers
|
||||
|
||||
Level: Advanced
|
||||
|
||||
Fallout from atomic KMS
|
||||
-----------------------
|
||||
|
||||
|
@ -91,6 +115,8 @@ interfaces to fix these issues:
|
|||
|
||||
Contact: Daniel Vetter
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Get rid of dev->struct_mutex from GEM drivers
|
||||
---------------------------------------------
|
||||
|
||||
|
@ -114,6 +140,8 @@ fine-grained per-buffer object and per-context lockings scheme. Currently only t
|
|||
|
||||
Contact: Daniel Vetter, respective driver maintainers
|
||||
|
||||
Level: Advanced
|
||||
|
||||
Convert instances of dev_info/dev_err/dev_warn to their DRM_DEV_* equivalent
|
||||
----------------------------------------------------------------------------
|
||||
|
||||
|
@ -129,6 +157,8 @@ are better.
|
|||
|
||||
Contact: Sean Paul, Maintainer of the driver you plan to convert
|
||||
|
||||
Level: Starter
|
||||
|
||||
Convert drivers to use simple modeset suspend/resume
|
||||
----------------------------------------------------
|
||||
|
||||
|
@ -139,6 +169,8 @@ of the atomic suspend/resume code in older atomic modeset drivers.
|
|||
|
||||
Contact: Maintainer of the driver you plan to convert
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Convert drivers to use drm_fb_helper_fbdev_setup/teardown()
|
||||
-----------------------------------------------------------
|
||||
|
||||
|
@ -157,6 +189,8 @@ probably use drm_fb_helper_fbdev_teardown().
|
|||
|
||||
Contact: Maintainer of the driver you plan to convert
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Clean up mmap forwarding
|
||||
------------------------
|
||||
|
||||
|
@ -166,6 +200,8 @@ There's drm_gem_prime_mmap() for this now, but still needs to be rolled out.
|
|||
|
||||
Contact: Daniel Vetter
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Generic fbdev defio support
|
||||
---------------------------
|
||||
|
||||
|
@ -196,6 +232,8 @@ Might be good to also have some igt testcases for this.
|
|||
|
||||
Contact: Daniel Vetter, Noralf Tronnes
|
||||
|
||||
Level: Advanced
|
||||
|
||||
idr_init_base()
|
||||
---------------
|
||||
|
||||
|
@ -206,6 +244,8 @@ efficient.
|
|||
|
||||
Contact: Daniel Vetter
|
||||
|
||||
Level: Starter
|
||||
|
||||
struct drm_gem_object_funcs
|
||||
---------------------------
|
||||
|
||||
|
@ -216,6 +256,8 @@ We also need a 2nd version of the CMA define that doesn't require the
|
|||
vmapping to be present (different hook for prime importing). Plus this needs to
|
||||
be rolled out to all drivers using their own implementations, too.
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Use DRM_MODESET_LOCK_ALL_* helpers instead of boilerplate
|
||||
---------------------------------------------------------
|
||||
|
||||
|
@ -231,6 +273,8 @@ As a reference, take a look at the conversions already completed in drm core.
|
|||
|
||||
Contact: Sean Paul, respective driver maintainers
|
||||
|
||||
Level: Starter
|
||||
|
||||
Rename CMA helpers to DMA helpers
|
||||
---------------------------------
|
||||
|
||||
|
@ -241,6 +285,9 @@ no one knows what that means) since underneath they just use dma_alloc_coherent.
|
|||
|
||||
Contact: Laurent Pinchart, Daniel Vetter
|
||||
|
||||
Level: Intermediate (mostly because it is a huge tasks without good partial
|
||||
milestones, not technically itself that challenging)
|
||||
|
||||
Convert direct mode.vrefresh accesses to use drm_mode_vrefresh()
|
||||
----------------------------------------------------------------
|
||||
|
||||
|
@ -259,6 +306,8 @@ drm_display_mode to avoid future use.
|
|||
|
||||
Contact: Sean Paul
|
||||
|
||||
Level: Starter
|
||||
|
||||
Remove drm_display_mode.hsync
|
||||
-----------------------------
|
||||
|
||||
|
@ -269,6 +318,8 @@ it to use drm_mode_hsync() instead.
|
|||
|
||||
Contact: Sean Paul
|
||||
|
||||
Level: Starter
|
||||
|
||||
drm_fb_helper tasks
|
||||
-------------------
|
||||
|
||||
|
@ -284,6 +335,8 @@ drm_fb_helper tasks
|
|||
removed: drm_fb_helper_single_add_all_connectors(),
|
||||
drm_fb_helper_add_one_connector() and drm_fb_helper_remove_one_connector().
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
connector register/unregister fixes
|
||||
-----------------------------------
|
||||
|
||||
|
@ -296,21 +349,11 @@ connector register/unregister fixes
|
|||
drm_dp_aux_init, and moving the actual registering into a late_register
|
||||
callback as recommended in the kerneldoc.
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Core refactorings
|
||||
=================
|
||||
|
||||
Clean up the DRM header mess
|
||||
----------------------------
|
||||
|
||||
The DRM subsystem originally had only one huge global header, ``drmP.h``. This
|
||||
is now split up, but many source files still include it. The remaining part of
|
||||
the cleanup work here is to replace any ``#include <drm/drmP.h>`` by only the
|
||||
headers needed (and fixing up any missing pre-declarations in the headers).
|
||||
|
||||
In the end no .c file should need to include ``drmP.h`` anymore.
|
||||
|
||||
Contact: Daniel Vetter
|
||||
|
||||
Make panic handling work
|
||||
------------------------
|
||||
|
||||
|
@ -350,6 +393,8 @@ This is a really varied tasks with lots of little bits and pieces:
|
|||
|
||||
Contact: Daniel Vetter
|
||||
|
||||
Level: Advanced
|
||||
|
||||
Clean up the debugfs support
|
||||
----------------------------
|
||||
|
||||
|
@ -379,6 +424,8 @@ There's a bunch of issues with it:
|
|||
|
||||
Contact: Daniel Vetter
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
KMS cleanups
|
||||
------------
|
||||
|
||||
|
@ -394,6 +441,8 @@ Some of these date from the very introduction of KMS in 2008 ...
|
|||
end, for which we could add drm_*_cleanup_kfree(). And then there's the (for
|
||||
historical reasons) misnamed drm_primary_helper_destroy() function.
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Better Testing
|
||||
==============
|
||||
|
||||
|
@ -402,6 +451,8 @@ Enable trinity for DRM
|
|||
|
||||
And fix up the fallout. Should be really interesting ...
|
||||
|
||||
Level: Advanced
|
||||
|
||||
Make KMS tests in i-g-t generic
|
||||
-------------------------------
|
||||
|
||||
|
@ -415,6 +466,8 @@ converting things over. For modeset tests we also first need a bit of
|
|||
infrastructure to use dumb buffers for untiled buffers, to be able to run all
|
||||
the non-i915 specific modeset tests.
|
||||
|
||||
Level: Advanced
|
||||
|
||||
Extend virtual test driver (VKMS)
|
||||
---------------------------------
|
||||
|
||||
|
@ -424,6 +477,8 @@ fit the available time.
|
|||
|
||||
Contact: Daniel Vetter
|
||||
|
||||
Level: See details
|
||||
|
||||
Backlight Refactoring
|
||||
---------------------
|
||||
|
||||
|
@ -437,6 +492,8 @@ Plan to fix this:
|
|||
|
||||
Contact: Daniel Vetter
|
||||
|
||||
Level: Intermediate
|
||||
|
||||
Driver Specific
|
||||
===============
|
||||
|
||||
|
@ -450,13 +507,6 @@ See drivers/gpu/drm/amd/display/TODO for tasks.
|
|||
|
||||
Contact: Harry Wentland, Alex Deucher
|
||||
|
||||
i915
|
||||
----
|
||||
|
||||
- Our early/late pm callbacks could be removed in favour of using
|
||||
device_link_add to model the dependency between i915 and snd_had. See
|
||||
https://dri.freedesktop.org/docs/drm/driver-api/device_link.html
|
||||
|
||||
Bootsplash
|
||||
==========
|
||||
|
||||
|
@ -472,5 +522,36 @@ for fbdev.
|
|||
|
||||
Contact: Sam Ravnborg
|
||||
|
||||
Level: Advanced
|
||||
|
||||
Outside DRM
|
||||
===========
|
||||
|
||||
Convert fbdev drivers to DRM
|
||||
----------------------------
|
||||
|
||||
There are plenty of fbdev drivers for older hardware. Some hwardware has
|
||||
become obsolete, but some still provides good(-enough) framebuffers. The
|
||||
drivers that are still useful should be converted to DRM and afterwards
|
||||
removed from fbdev.
|
||||
|
||||
Very simple fbdev drivers can best be converted by starting with a new
|
||||
DRM driver. Simple KMS helpers and SHMEM should be able to handle any
|
||||
existing hardware. The new driver's call-back functions are filled from
|
||||
existing fbdev code.
|
||||
|
||||
More complex fbdev drivers can be refactored step-by-step into a DRM
|
||||
driver with the help of the DRM fbconv helpers. [1] These helpers provide
|
||||
the transition layer between the DRM core infrastructure and the fbdev
|
||||
driver interface. Create a new DRM driver on top of the fbconv helpers,
|
||||
copy over the fbdev driver, and hook it up to the DRM code. Examples for
|
||||
several fbdev drivers are available at [1] and a tutorial of this process
|
||||
available at [2]. The result is a primitive DRM driver that can run X11
|
||||
and Weston.
|
||||
|
||||
- [1] https://gitlab.freedesktop.org/tzimmermann/linux/tree/fbconv
|
||||
- [2] https://gitlab.freedesktop.org/tzimmermann/linux/blob/fbconv/drivers/gpu/drm/drm_fbconv_helper.c
|
||||
|
||||
Contact: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
|
||||
Level: Advanced
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue