From: Andy Walls <awalls@md.metrocast.net>
To: linux-kernel@vger.kernel.org
Cc: "Rafał Miłecki" <zajec5@gmail.com>,
"Dave Airlie" <airlied@redhat.com>,
"Greg Kroah-Hartman" <greg@kroah.com>,
dri-devel@lists.freedesktop.org, "Jon Smirl" <jonsmirl@gmail.com>
Subject: [PATCH v2 2/2] Doc/ABI: sysfs-drm initial document; "polled" entry
Date: Tue, 21 Sep 2010 23:20:22 -0400 [thread overview]
Message-ID: <1285125622.2518.21.camel@morgan.silverblock.net> (raw)
In-Reply-To: <1285023750.30856.99.camel@morgan.silverblock.net>
This is the initial addition of documentation for the drm module's sysfs
entries. It provides a drm sysfs entries overview, and a detailed
description of the new drm per output connector "polled" entry in sysfs.
Signed-of-by: Andy Walls <awalls@md.metrocast.net>
diff --git a/Documentation/ABI/testing/sysfs-drm b/Documentation/ABI/testing/sysfs-drm
new file mode 100644
index 0000000..18a017a
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-drm
@@ -0,0 +1,208 @@
+Direct Rendering Infrastructure (DRI) Direct Rendering Manager (drm) module
+and Translation Table Manager (ttm) module sysfs entries
+
+Example class view showing a single graphics adapter with three output
+connectors, a special control device node for the graphics adapter, and the
+Translation Table Manager (ttm) graphics memory manager virtual device:
+
+ /sys/class/drm/
+ ├── card0 -> ../../devices/<...>/drm/card0
+ ├── card0-DVI-D-1 -> ../../devices/<...>/drm/card0/card0-DVI-D-1
+ ├── card0-HDMI Type A-1 -> ../../devices/<...>/drm/card0/card0-HDMI Type A-1
+ ├── card0-VGA-1 -> ../../devices/<...>/drm/card0/card0-VGA-1
+ ├── controlD64 -> ../../devices/<...>/drm/controlD64
+ ├── ttm -> ../../devices/virtual/drm/ttm
+ └── version
+
+ 6 directories, 1 file
+
+
+Corresponding DRI device nodes for the example graphics adapter, with
+additional ACL properties on card0 granting rw perms to the X/console user:
+
+ crw-rw----+ 1 root video 226, 0 2010-09-21 20:52 /dev/dri/card0
+ crw-rw-rw-. 1 root video 226, 64 2010-09-21 20:51 /dev/dri/controlD64
+
+
+Example physical device view for a single graphics adapter with three output
+connectors and a special control device node for the graphics adapter:
+
+ /sys/devices/<...>/drm
+ ├── card0
+ │ ├── card0-DVI-D-1
+ │ │ ├── device -> ../../card0
+ │ │ ├── dpms
+ │ │ ├── edid
+ │ │ ├── enabled
+ │ │ ├── modes
+ │ │ ├── polled
+ │ │ ├── power
+ │ │ │ ├── control
+ │ │ │ ├── runtime_active_time
+ │ │ │ ├── runtime_status
+ │ │ │ ├── runtime_suspended_time
+ │ │ │ ├── wakeup
+ │ │ │ └── wakeup_count
+ │ │ ├── status
+ │ │ ├── subsystem -> ../../../../../../../class/drm
+ │ │ └── uevent
+ │ ├── card0-HDMI Type A-1
+ │ │ ├── device -> ../../card0
+ │ │ ├── dpms
+ │ │ ├── edid
+ │ │ ├── enabled
+ │ │ ├── modes
+ │ │ ├── polled
+ │ │ ├── power
+ │ │ │ ├── control
+ │ │ │ ├── runtime_active_time
+ │ │ │ ├── runtime_status
+ │ │ │ ├── runtime_suspended_time
+ │ │ │ ├── wakeup
+ │ │ │ └── wakeup_count
+ │ │ ├── status
+ │ │ ├── subsystem -> ../../../../../../../class/drm
+ │ │ └── uevent
+ │ ├── card0-VGA-1
+ │ │ ├── device -> ../../card0
+ │ │ ├── dpms
+ │ │ ├── edid
+ │ │ ├── enabled
+ │ │ ├── modes
+ │ │ ├── polled
+ │ │ ├── power
+ │ │ │ ├── control
+ │ │ │ ├── runtime_active_time
+ │ │ │ ├── runtime_status
+ │ │ │ ├── runtime_suspended_time
+ │ │ │ ├── wakeup
+ │ │ │ └── wakeup_count
+ │ │ ├── status
+ │ │ ├── subsystem -> ../../../../../../../class/drm
+ │ │ └── uevent
+ │ ├── dev
+ │ ├── device -> ../../../0000:01:05.0
+ │ ├── power
+ │ │ ├── control
+ │ │ ├── runtime_active_time
+ │ │ ├── runtime_status
+ │ │ ├── runtime_suspended_time
+ │ │ ├── wakeup
+ │ │ └── wakeup_count
+ │ ├── subsystem -> ../../../../../../class/drm
+ │ └── uevent
+ └── controlD64
+ ├── dev
+ ├── device -> ../../../0000:01:05.0
+ ├── power
+ │ ├── control
+ │ ├── runtime_active_time
+ │ ├── runtime_status
+ │ ├── runtime_suspended_time
+ │ ├── wakeup
+ │ └── wakeup_count
+ ├── subsystem -> ../../../../../../class/drm
+ └── uevent
+
+ 20 directories, 55 files
+
+
+Example virtual device view view showing the Translation Table Manager (ttm)
+graphics memory manager virtual device:
+
+ /sys/devices/virtual/drm
+ └── ttm
+ ├── buffer_objects
+ │ └── bo_count
+ ├── memory_accounting
+ │ ├── kernel
+ │ │ ├── available_memory
+ │ │ ├── emergency_memory
+ │ │ ├── swap_limit
+ │ │ ├── used_memory
+ │ │ └── zone_memory
+ │ └── pool
+ │ ├── pool_allocation_size
+ │ ├── pool_max_size
+ │ └── pool_small_allocation
+ ├── power
+ │ ├── control
+ │ ├── runtime_active_time
+ │ ├── runtime_status
+ │ ├── runtime_suspended_time
+ │ ├── wakeup
+ │ └── wakeup_count
+ ├── subsystem -> ../../../../class/drm
+ └── uevent
+
+ 7 directories, 16 files
+
+
+
+Where: /sys/devices/<...>/drm/cardN/cardN-C-M/polled
+ For N a decimal system graphics adapter number: 0, 1, 2, ...
+ For C a connector type name (including spaces) from the set:
+ Unknown
+ VGA
+ DVI-I
+ DVI-D
+ DVI-A
+ Composite
+ SVIDEO
+ LVDS
+ Component
+ 9-pin DIN
+ DisplayPort
+ HDMI Type A
+ HDMI Type B
+ TV
+ Embedded DisplayPort
+ For M a decimal connector number for connectors of that type
+ over all the graphics adapters in the system: 1, 2, ...
+Date: 22 September 2010
+KernelVersion: 2.6.37
+Contact: Andy Walls <awalls@md.metrocast.net>
+Description:
+ Manual control over DRM Kernel Mode Set (KMS) output connector
+ hotplug/connect/disconnect polling criteria. The graphics
+ adapter drm driver (e.g. radeon, i915, nouveau) will detect
+ the available connectors on a graphics adapter and set polling
+ criteria flags for the connector to specify for what events the
+ 0.1 Hz DRM KMS poll of the connector should look.
+
+ A read of the contents of this entry will show what flags are
+ available, with the names of flags that are set for the
+ connector enclosed in brackets:
+
+ # cat /sys/devices/.../drm/card0/card0-DVI-D-1/polled
+ [hotplug_detectable] connect disconnect
+
+ A write of flags names to this entry, will clear the current
+ flag settings and set the poll criteria flags for that
+ connector to those specified names:
+
+ # echo " disconnect connect " > \
+ /sys/devices/.../drm/card0/card0-DVI-D-1/polled
+ # cat /sys/devices/.../drm/card0/card0-DVI-D-1/polled
+ hotplug_detectable [connect] [disconnect]
+
+ # echo > /sys/devices/.../drm/card0/card0-DVI-D-1/polled
+ # cat /sys/devices/.../drm/card0/card0-DVI-D-1/polled
+ hotplug_detectable connect disconnect
+
+ The flags have the following meanings in drm_crtc_helper.c:
+
+ hotplug_detectable:
+ always attempt to detect connection status upon poll
+ don't automatically set up another poll of connector
+
+ connect:
+ attempt to detect "connect" events
+ automatically set up another poll of connector
+
+ disconnect:
+ attempt to detect "disconnect" events
+ automatically set up another poll of connector
+
+ Clearing all three flags will disable any detection actions
+ being taken for that connector during the 0.1 Hz poll.
next prev parent reply other threads:[~2010-09-22 3:20 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-20 12:59 [PATCH] drm/sysfs: Provide per connector control of DRM KMS polling Andy Walls
2010-09-20 18:29 ` Rafał Miłecki
2010-09-20 18:29 ` Rafał Miłecki
2010-09-20 23:02 ` Andy Walls
2010-09-21 4:26 ` Alex Deucher
2010-09-21 17:30 ` Andy Walls
2010-09-22 5:30 ` Alex Deucher
2010-09-22 12:31 ` Andy Walls
2010-09-22 12:31 ` Andy Walls
2010-09-22 20:16 ` Andy Walls
2010-09-22 20:16 ` Andy Walls
2010-09-22 13:33 ` Jon Smirl
2010-09-22 21:07 ` Andy Walls
2010-09-22 22:05 ` Jon Smirl
2010-09-24 19:12 ` Alex Deucher
2010-09-26 18:12 ` Andy Walls
2010-09-26 18:12 ` Andy Walls
2010-09-27 15:45 ` Alex Deucher
2010-09-27 15:45 ` Alex Deucher
2010-09-22 3:20 ` [PATCH v2 0/2] " Andy Walls
2010-09-22 3:20 ` Andy Walls
2010-09-22 3:20 ` [PATCH v2 1/2] " Andy Walls
2010-09-22 3:20 ` Andy Walls [this message]
2010-09-22 15:06 ` [PATCH v2 2/2] Doc/ABI: sysfs-drm initial document; "polled" entry Greg KH
2010-09-22 15:06 ` Greg KH
2010-09-22 16:36 ` Andy Walls
2010-09-22 16:36 ` Andy Walls
2010-09-22 19:23 ` Greg KH
2010-09-22 19:23 ` Greg KH
2010-09-20 18:52 ` [PATCH] drm/sysfs: Provide per connector control of DRM KMS polling Greg KH
2010-09-20 21:11 ` Andy Walls
2010-09-22 9:44 ` Florian Mickler
2010-09-22 12:49 ` Andy Walls
2010-09-22 12:49 ` Andy Walls
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1285125622.2518.21.camel@morgan.silverblock.net \
--to=awalls@md.metrocast.net \
--cc=airlied@redhat.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=greg@kroah.com \
--cc=jonsmirl@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=zajec5@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.