From mboxrd@z Thu Jan 1 00:00:00 1970 From: Francisco Jerez Subject: Re: [PATCHv9] drm/i915: Added Programming of the MOCS Date: Tue, 14 Jul 2015 17:47:37 +0300 Message-ID: <87io9mpzhy.fsf@riseup.net> References: <1436367082-24434-1-git-send-email-currojerez@riseup.net> <1436548391-26718-1-git-send-email-currojerez@riseup.net> <20150714144016.GD30492@strange.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1418164598==" Return-path: Received: from mx1.riseup.net (mx1.riseup.net [198.252.153.129]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7B0C86E2AB for ; Tue, 14 Jul 2015 07:48:05 -0700 (PDT) In-Reply-To: <20150714144016.GD30492@strange.ger.corp.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Damien Lespiau Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org --===============1418164598== Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Damien Lespiau writes: > On Fri, Jul 10, 2015 at 08:13:11PM +0300, Francisco Jerez wrote: >> From: Peter Antoine >>=20 >> This change adds the programming of the MOCS registers to the gen 9+ >> platforms. The set of MOCS configuration entries introduced by this >> patch is intended to be minimal but sufficient to cover the needs of >> current userspace - i.e. a good set of defaults. It is expected to be >> extended in the future to provide further default values or to allow >> userspace to redefine its private MOCS tables based on its demand for >> additional caching configurations. In this setup, userspace should >> only utilize the first N entries, higher entries are reserved for >> future use. >>=20 >> It creates a fixed register set that is programmed across the different >> engines so that all engines have the same table. This is done as the >> main RCS context only holds the registers for itself and the shared >> L3 values. By trying to keep the registers consistent across the >> different engines it should make the programming for the registers >> consistent. >>=20 >> v2: >> -'static const' for private data structures and style changes.(Matt Turn= er) >> v3: >> - Make the tables "slightly" more readable. (Damien Lespiau) >> - Updated tables fix performance regression. >> v4: >> - Code formatting. (Chris Wilson) >> - re-privatised mocs code. (Daniel Vetter) >> v5: >> - Changed the name of a function. (Chris Wilson) >> v6: >> - re-based >> - Added Mesa table entry (skylake & broxton) (Francisco Jerez) >> - Tidied up the readability defines (Francisco Jerez) >> - NUMBER of entries defines wrong. (Jim Bish) >> - Added comments to clear up the meaning of the tables (Jim Bish) >>=20 >> Signed-off-by: Peter Antoine >>=20 >> v7 (Francisco Jerez): >> - Don't write L3-specific MOCS_ESC/SCC values into the e/LLC control >> tables. Prefix L3-specific defines consistently with L3_ and >> e/LLC-specific defines with LE_ to avoid this kind of confusion in >> the future. >> - Change L3CC WT define back to RESERVED (matches my hardware >> documentation and the original patch, probably a misunderstanding >> of my own previous comment). >> - Drop Android tables, define new minimal tables more suitable for the >> open source stack. >> - Add comment that the MOCS tables are part of the kernel ABI. >> - Move intel_logical_ring_begin() and _advance() calls one level down >> (Chris Wilson). >> - Minor formatting and style fixes. >> v8 (Francisco Jerez): >> - Add table size sanity check to emit_mocs_control/l3cc_table() (Chris >> Wilson). >> - Add comment about undefined entries being implicitly set to uncached >> for forwards compatibility. >> v9 (Francisco Jerez): >> - Minor style fixes. > > What's happening here? are we ready to commit to this ABI? I'm for it. I also sent a patch for userspace to switch to the new tables [1] and already have an R-b on it. [1] http://lists.freedesktop.org/archives/mesa-dev/2015-July/088310.html > > --=20 > Damien --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iF4EAREIAAYFAlWlIQkACgkQg5k4nX1Sv1teTgD/YUTeN755aJBYbtpbUBZLrgHV uV+GhGM8z84ekr/SGRQBAJJY8gwZ9/SheJGw3L2hmEQcFA9DnnShgZ39XqAlh0u7 =lviJ -----END PGP SIGNATURE----- --==-=-=-- --===============1418164598== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4 IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK --===============1418164598==--