From patchwork Thu Mar 2 15:16:37 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 9600389 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 15E8360414 for ; Thu, 2 Mar 2017 15:17:05 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 078E827F07 for ; Thu, 2 Mar 2017 15:17:05 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EE1B628555; Thu, 2 Mar 2017 15:17:04 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 44A4627F07 for ; Thu, 2 Mar 2017 15:16:57 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 8FA996EB8C; Thu, 2 Mar 2017 15:16:53 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9D97F6EB89 for ; Thu, 2 Mar 2017 15:16:51 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id m70so12983364wma.1 for ; Thu, 02 Mar 2017 07:16:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=NmQ+WqVSRqO6nGF9dL2HJjY/ml0OhUW0GhdxPJ8IT9I=; b=N/weoM0x5hv18EDoxA8pOTSMdHUHyMKxrRHrfy8hj8AYT+ZefjRBlFgVeWFI/LVycs m4GNUUqRUjFoOMqReqGRGRpLjwHK3GKCAMMOZX74kXMd+z3HTC8zveib6c+tOQkc/Cy6 mnpBiQwNp2RvQBqh+BJVS44PKG3gdUJoaoJ+Y= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=NmQ+WqVSRqO6nGF9dL2HJjY/ml0OhUW0GhdxPJ8IT9I=; b=OPYIZBKkmszUS/vc2Nm650W9+FLc+8g7y2+w3LytHBGU40HzflesVI5ZFf827rsmV0 fxIc6ekMLe6w7e3/r5sqv7VCDvQwk3kYGbtrmTDp6IiCLb+zVb+InJwWtxaHZigRdK8c l1e1IgJC7/rrv5cUz77whbcQra1roEnVlZpHOjaD0F9VOI/eYRF6ENR4SpkGasCpnVce 40BHymh2QNQm6/jb0HwFatFxnmAr/PNpxiYnq+vla5t56LVksvE71wQswg1UOqQXbp8J 5Wv/J47DuqDGnvUKAk1kIdzFKOFiRi3J4DGlnsVoDzuMD8rAGLvuuMqskefjeOusHVRu U88w== X-Gm-Message-State: AMke39nlOIYNCU8qV0LDCAeSf7y91UUQO0f9Snt9hW82Sv5K5rwDqyCJEsfSJm/bvLTDRQ== X-Received: by 10.28.203.204 with SMTP id b195mr8808206wmg.51.1488467810146; Thu, 02 Mar 2017 07:16:50 -0800 (PST) Received: from phenom.ffwll.local ([2a02:168:56c9:0:decc:6e78:7e96:b452]) by smtp.gmail.com with ESMTPSA id i82sm2485208wmf.1.2017.03.02.07.16.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 02 Mar 2017 07:16:49 -0800 (PST) From: Daniel Vetter To: linux-doc@vger.kernel.org Subject: [PATCH 5/6] drm/doc: diagram for mode objects and properties Date: Thu, 2 Mar 2017 16:16:37 +0100 Message-Id: <20170302151638.1882-5-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170302151638.1882-1-daniel.vetter@ffwll.ch> References: <20170302151638.1882-1-daniel.vetter@ffwll.ch> Cc: Manasi Navare , Daniel Vetter , Laurent Pinchart , DRI Development X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP Resulted in confusion a few times in the past. v2: Spelling fix (Eric). Cc: Eric Anholt Acked-by: Eric Anholt Cc: Laurent Pinchart Cc: Manasi Navare Reviewed-by: Gabriel Krisman Bertazi Reviewed-by: Laurent Pinchart Signed-off-by: Daniel Vetter --- Documentation/gpu/drm-kms.rst | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/Documentation/gpu/drm-kms.rst b/Documentation/gpu/drm-kms.rst index b11c537c73f4..1c42448c7aae 100644 --- a/Documentation/gpu/drm-kms.rst +++ b/Documentation/gpu/drm-kms.rst @@ -161,6 +161,28 @@ KMS Core Structures and Functions Modeset Base Object Abstraction =============================== +.. kernel-render:: DOT + :alt: Mode Objects and Properties + :caption: Mode Objects and Properties + + digraph { + node [shape=box] + + "drm_property A" -> "drm_mode_object A" + "drm_property A" -> "drm_mode_object B" + "drm_property B" -> "drm_mode_object A" + } + +The base structure for all KMS objects is :c:type:`struct drm_mode_object +`. One of the base services it provides is tracking properties, +which are especially important for the atomic IOCTL (see `Atomic Mode +Setting`_). The somewhat surprising part here is that properties are not +directly instantiated on each object, but free-standing mode objects themselves, +represented by :c:type:`struct drm_property `, which only specify +the type and value range of a property. Any given property can be attached +multiple times to different objects using :c:func:`drm_object_attach_property() +`. + .. kernel-doc:: include/drm/drm_mode_object.h :internal: