On Thu, 27 Jan 2022 11:46:44 +0100 Javier Martinez Canillas <javierm@xxxxxxxxxx> wrote: > Hello Pekka, > > Thanks a lot for your feedback. > > On 1/27/22 10:05, Pekka Paalanen wrote: > > On Thu, 27 Jan 2022 09:20:58 +0100 > > Javier Martinez Canillas <javierm@xxxxxxxxxx> wrote: > > > >> The Linux DRM subsystem supports complex graphics devices and it could be > >> quite overwhelming for newcomers to learn about the subsystem's internals. > >> > >> There are lots of useful talks, slides and articles available that can be > >> used to get familiar with the needed concepts and ease the learning curve. > >> > >> Add a section to the intro that contains these DRM introductory materials. > >> > >> Suggested-by: Daniel Vetter <daniel.vetter@xxxxxxxx> > >> Signed-off-by: Javier Martinez Canillas <javierm@xxxxxxxxxx> > >> --- > >> > >> Documentation/gpu/introduction.rst | 36 ++++++++++++++++++++++++++++++ > >> 1 file changed, 36 insertions(+) > >> > >> diff --git a/Documentation/gpu/introduction.rst b/Documentation/gpu/introduction.rst > >> index 25a56e9c0cfd..35986784f916 100644 > >> --- a/Documentation/gpu/introduction.rst > >> +++ b/Documentation/gpu/introduction.rst > >> @@ -112,3 +112,39 @@ Please conduct yourself in a respectful and civilised manner when > >> interacting with community members on mailing lists, IRC, or bug > >> trackers. The community represents the project as a whole, and abusive > >> or bullying behaviour is not tolerated by the project. > >> + > >> +Learning material > >> +================= > >> + > >> +Since the Linux DRM layer supports complex graphics devices, it can be quite > >> +overwhelming for newcomers to get familiar with all the needed concepts and > >> +learn the subsystem's internals. > > > > Hi, > > > > this seems to say that DRM is going to be complicated no matter what > > hardware one wants to drive, but is that true? > > > > Is there no way to say that if your display hardware is simple (no > > GPU), then the driver can be simple to write too? > > > > I do wonder how much one could abstract of the uAPI when writing a simpler driver. > > In other words, writing the driver should be simple but I believe that grasping > all the needed details about DRM may not be. > > >> + > >> +To shallow the learning curve, this section contains a list of presentations > >> +and documents that can be used to learn about DRM/KMS and graphics in general. > >> + > >> +The list is sorted in reverse chronological order, to keep the most up-to-date > >> +material at the top. But all of them contain useful information, and it can be > >> +valuable to go through older material to understand the rationale and context > >> +in which the recent changes to the DRM subsystem were made. > >> + > >> +Talks > >> +----- > >> + > >> +* `An Overview of the Linux and Userspace Graphics Stack <https://www.youtube.com/watch?v=wjAJmqwg47k>`_ - Paul Kocialkowski (2020) > >> +* `Getting pixels on screen on Linux: introduction to Kernel Mode Setting <https://www.youtube.com/watch?v=haes4_Xnc5Q>`_ - Simon Ser (2020) > >> +* `An introduction to the Linux DRM subsystem <https://www.youtube.com/watch?v=LbDOCJcDRoo>`_ - Maxime Ripard (2017) > >> +* `Embrace the Atomic (Display) Age <https://www.youtube.com/watch?v=LjiB_JeDn2M>`_ - Daniel Vetter (2016) > >> +* `Anatomy of an Atomic KMS Driver <https://www.youtube.com/watch?v=lihqR9sENpc>`_ - Laurent Pinchart (2015) > >> +* `Atomic Modesetting for Drivers <https://www.youtube.com/watch?v=kl9suFgbTc8>`_ - Daniel Vetter (2015) > >> +* `Anatomy of an Embedded KMS Driver <https://www.youtube.com/watch?v=Ja8fM7rTae4>`_ - Laurent Pinchart (2013 > >> + > >> +Slides and articles > >> +------------------- > >> + > >> +* `Understanding the Linux Graphics Stack <https://bootlin.com/doc/training/graphics/graphics-slides.pdf>`_ - Bootlin (2022) > >> +* `DRM KMS overview <https://wiki.st.com/stm32mpu/wiki/DRM_KMS_overview>`_ - STMicroelectronics (2021) > >> +* `Linux graphic stack <https://studiopixl.com/2017-05-13/linux-graphic-stack-an-overview>`_ - Nathan Gauër (2017) > >> +* `The DRM/KMS subsystem from a newbie’s point of view <https://bootlin.com/pub/conferences/2014/elce/brezillon-drm-kms/brezillon-drm-kms.pdf>`_ - Boris Brezillon (2014) > >> +* `A brief introduction to the Linux graphics stack <https://blogs.igalia.com/itoral/2014/07/29/a-brief-introduction-to-the-linux-graphics-stack/>`_ - Iago Toral (2014) > >> +* `The Linux Graphics Stack <https://blog.mecheye.net/2012/06/the-linux-graphics-stack/>`_ - Jasper St. Pierre (2012) > > > > That's an impressive list of links! > > > > However, given the discussions that prompted this doc, I think the gist > > is missing. The reader is just flooded with stuff to read and learn > > which can be discouraging. > > > > Your audience are developers who know nothing about DRM. They may have > > been writing fb drivers instead. The display hardware they want to > > drive has no GPU. Where should they get started? Which presentations to > > read/watch first? Which driver to look at for a simple example? > > > > Maybe add one more section targeting that specific audience? > > > > Yes, I did not ignore your suggestions made over IRC but it's just that I > didn't know to write such section. Maybe we can land this section and then > as a follow-up think how a "Getting started" one should look like ? I can't write such a section myself either, and reviewing one I wouldn't be able to say if it covers everything needed but no more. Fine by me! FW I'm W here Acked-by: Pekka Paalanen <pekka.paalanen@xxxxxxxxxxxxx> Thanks, pq
Attachment:
pgptNGY67IO9K.pgp
Description: OpenPGP digital signature