From owner-svn-src-head@FreeBSD.ORG Sun Nov 17 17:46:08 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 28DCD780; Sun, 17 Nov 2013 17:46:08 +0000 (UTC) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4835C29E6; Sun, 17 Nov 2013 17:46:07 +0000 (UTC) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.14.7/8.14.7) with ESMTP id rAHHk0Q3048088; Sun, 17 Nov 2013 19:46:00 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.8.3 kib.kiev.ua rAHHk0Q3048088 Received: (from kostik@localhost) by tom.home (8.14.7/8.14.7/Submit) id rAHHk0Q1048087; Sun, 17 Nov 2013 19:46:00 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 17 Nov 2013 19:46:00 +0200 From: Konstantin Belousov To: Jean-Sebastien Pedron Subject: Re: svn commit: r258262 - head/sys/dev/drm2 Message-ID: <20131117174600.GN59496@kib.kiev.ua> References: <201311171607.rAHG7rY7057352@svn.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Zh8cApnN4lZdodaB" Content-Disposition: inline In-Reply-To: <201311171607.rAHG7rY7057352@svn.freebsd.org> User-Agent: Mutt/1.5.22 (2013-10-16) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on tom.home Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 17 Nov 2013 17:46:08 -0000 --Zh8cApnN4lZdodaB Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Nov 17, 2013 at 04:07:53PM +0000, Jean-Sebastien Pedron wrote: > Author: dumbbell > Date: Sun Nov 17 16:07:52 2013 > New Revision: 258262 > URL: http://svnweb.freebsd.org/changeset/base/258262 >=20 > Log: > drm: Support DRM_CAP_TIMESTAMP_MONOTONIC capability > =20 > This fixes DPMS with KDE and radeonkms. Without this, the display would > freeze when the monitor is put into sleep state, and only resumes after > several dozens of minutes once the monitor is powered on again. > =20 > Tested by: Mathias Picker >=20 > Modified: > head/sys/dev/drm2/drm.h > head/sys/dev/drm2/drmP.h > head/sys/dev/drm2/drm_drv.c > head/sys/dev/drm2/drm_ioctl.c >=20 > Modified: head/sys/dev/drm2/drm.h > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/sys/dev/drm2/drm.h Sun Nov 17 15:58:13 2013 (r258261) > +++ head/sys/dev/drm2/drm.h Sun Nov 17 16:07:52 2013 (r258262) > @@ -1015,6 +1015,8 @@ struct drm_event_vblank { > #define DRM_CAP_VBLANK_HIGH_CRTC 0x2 > #define DRM_CAP_DUMB_PREFERRED_DEPTH 0x3 > #define DRM_CAP_DUMB_PREFER_SHADOW 0x4 > +#define DRM_CAP_PRIME 0x5 > +#define DRM_CAP_TIMESTAMP_MONOTONIC 0x6 > =20 > #include "drm_mode.h" > =20 >=20 > Modified: head/sys/dev/drm2/drmP.h > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/sys/dev/drm2/drmP.h Sun Nov 17 15:58:13 2013 (r258261) > +++ head/sys/dev/drm2/drmP.h Sun Nov 17 16:07:52 2013 (r258262) > @@ -1067,6 +1067,7 @@ extern int drm_debug_flag; > extern int drm_notyet_flag; > extern unsigned int drm_vblank_offdelay; > extern unsigned int drm_timestamp_precision; > +extern unsigned int drm_timestamp_monotonic; > =20 > /* Device setup support (drm_drv.c) */ > int drm_probe(device_t kdev, drm_pci_id_list_t *idlist); >=20 > Modified: head/sys/dev/drm2/drm_drv.c > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/sys/dev/drm2/drm_drv.c Sun Nov 17 15:58:13 2013 (r258261) > +++ head/sys/dev/drm2/drm_drv.c Sun Nov 17 16:07:52 2013 (r258262) > @@ -56,6 +56,12 @@ int drm_notyet_flag =3D 0; > unsigned int drm_vblank_offdelay =3D 5000; /* Default to 5000 msecs. = */ > unsigned int drm_timestamp_precision =3D 20; /* Default to 20 usecs. */ > =20 > +/* > + * Default to use monotonic timestamps for wait-for-vblank and page-flip > + * complete events. > + */ > +unsigned int drm_timestamp_monotonic =3D 1; > + Why do you need a variable there, instead of simply returning true =66rom the drm_getcap ? I do not see any way to change the value of the drm_timestamp_monotonic. > static int drm_load(struct drm_device *dev); > static void drm_unload(struct drm_device *dev); > static drm_pci_id_list_t *drm_find_description(int vendor, int device, >=20 > Modified: head/sys/dev/drm2/drm_ioctl.c > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/sys/dev/drm2/drm_ioctl.c Sun Nov 17 15:58:13 2013 (r258261) > +++ head/sys/dev/drm2/drm_ioctl.c Sun Nov 17 16:07:52 2013 (r258262) > @@ -250,6 +250,9 @@ int drm_getcap(struct drm_device *dev, v > case DRM_CAP_DUMB_PREFER_SHADOW: > req->value =3D dev->mode_config.prefer_shadow; > break; > + case DRM_CAP_TIMESTAMP_MONOTONIC: > + req->value =3D drm_timestamp_monotonic; > + break; > default: > return EINVAL; > } --Zh8cApnN4lZdodaB Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iQIcBAEBAgAGBQJSiQDXAAoJEJDCuSvBvK1BSGEQAIkumrRLhZaYfCV/gCoO3Tie dNPHFdNq/wNHQf5HqxIkovIviorz7gUF+mEwlulJe1mvMhPIrM1QHAgtRIo783Ia Q0Hyya1dz935Ejg/k7ENmmWaxTEsmV2OhpZD7TaqCH6zI0C2h5NcmfnLUglE01O9 IlY7zMYMvFMFfkl/aZlOOwsfquqVKYp7edB8N/N0LyLWFBIFtLNgZ1Zlt+03LAen YTt2quSMrMES1gPT7I2mg2PaOsAZ3p09yNrdJz7C5avmenEX2e3a0+CQgJ+Yvv0M xUOhzOeM/xCqM1lhYKx4kKZHHrK32FR67PqRG3hk+r0P4L3ZFTNx1uyAdnVHKSX8 mPNVliEOnzOWpT0QCou0cHTFb93KBOnTocgH7haZCauVXrnThfuZTz/gbT8Q/bkY c9ZmGXzo8acUj9Z4l9bQ6xv1M0TyWPg0Y3Mob0OkXuyllEKjKyEu0cGmToyq1aE3 zkD9eR1zGCsma9wSM0zAIFWTyXkGYn4v47A0kb/A8ApyQzoBa1qx4J8QK6Db0bb9 0agcy4qTLHlpg3Vo56KoMYbVpZxRNa6xWetRNjDWynLbLFAa2yE7hSFtSyRiykq7 5nHWTN1UO6gBbV14nx+R2j+La3dQJGYnaO4INONqL0SWssgxzbc8VYZj1sFFqH5P fbj1Et6j0DPttwKv6pBI =jV7/ -----END PGP SIGNATURE----- --Zh8cApnN4lZdodaB--