From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH v3 8/9] drm/nouveau: gp10b: Add custom L2 cache implementation Date: Mon, 9 Dec 2019 13:00:04 +0100 Message-ID: <20191209120005.2254786-9-thierry.reding@gmail.com> References: <20191209120005.2254786-1-thierry.reding@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20191209120005.2254786-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Ben Skeggs Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Joerg Roedel , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: linux-tegra@vger.kernel.org RnJvbTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KClRoZXJlIGFyZSBleHRy YSByZWdpc3RlcnMgdGhhdCBuZWVkIHRvIGJlIHByb2dyYW1tZWQgdG8gbWFrZSB0aGUgbGV2ZWwg MgpjYWNoZSB3b3JrIG9uIEdQMTBCLCBzdWNoIGFzIHRoZSBzdHJlYW0gSUQgcmVnaXN0ZXIgdGhh dCBpcyB1c2VkIHdoZW4gYW4KU01NVSBpcyB1c2VkIHRvIHRyYW5zbGF0ZSBtZW1vcnkgYWRkcmVz c2VzLgoKU2lnbmVkLW9mZi1ieTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4K LS0tCkNoYW5nZXMgaW4gdjI6Ci0gcmVtb3ZlIElPTU1VX0FQSSBwcm90ZWN0aW9uIHRvIGluY3Jl YXNlIGNvbXBpbGUgY292ZXJhZ2UKLSByZWxpZXMgb24gZHVtbXkgZGV2X2lvbW11X2Z3c3BlY19n ZXQoKSBoZWxwZXIKCiAuLi4vZ3B1L2RybS9ub3V2ZWF1L2luY2x1ZGUvbnZrbS9zdWJkZXYvbHRj LmggfCAgMSArCiAuLi4vZ3B1L2RybS9ub3V2ZWF1L252a20vZW5naW5lL2RldmljZS9iYXNlLmMg fCAgMiArLQogLi4uL2dwdS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9sdGMvS2J1aWxkICAgIHwg IDEgKwogLi4uL2dwdS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9sdGMvZ3AxMGIuYyAgIHwgNjUg KysrKysrKysrKysrKysrKysrKwogLi4uL2dwdS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9sdGMv cHJpdi5oICAgIHwgIDIgKwogNSBmaWxlcyBjaGFuZ2VkLCA3MCBpbnNlcnRpb25zKCspLCAxIGRl bGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZr bS9zdWJkZXYvbHRjL2dwMTBiLmMKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVh dS9pbmNsdWRlL252a20vc3ViZGV2L2x0Yy5oIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvaW5j bHVkZS9udmttL3N1YmRldi9sdGMuaAppbmRleCA2NDRkNTI3YzNiOTYuLmQ3NmY2MGQ3ZDI5YSAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvaW5jbHVkZS9udmttL3N1YmRldi9s dGMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9pbmNsdWRlL252a20vc3ViZGV2L2x0 Yy5oCkBAIC00MCw0ICs0MCw1IEBAIGludCBnbTEwN19sdGNfbmV3KHN0cnVjdCBudmttX2Rldmlj ZSAqLCBpbnQsIHN0cnVjdCBudmttX2x0YyAqKik7CiBpbnQgZ20yMDBfbHRjX25ldyhzdHJ1Y3Qg bnZrbV9kZXZpY2UgKiwgaW50LCBzdHJ1Y3QgbnZrbV9sdGMgKiopOwogaW50IGdwMTAwX2x0Y19u ZXcoc3RydWN0IG52a21fZGV2aWNlICosIGludCwgc3RydWN0IG52a21fbHRjICoqKTsKIGludCBn cDEwMl9sdGNfbmV3KHN0cnVjdCBudmttX2RldmljZSAqLCBpbnQsIHN0cnVjdCBudmttX2x0YyAq Kik7CitpbnQgZ3AxMGJfbHRjX25ldyhzdHJ1Y3QgbnZrbV9kZXZpY2UgKiwgaW50LCBzdHJ1Y3Qg bnZrbV9sdGMgKiopOwogI2VuZGlmCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVh dS9udmttL2VuZ2luZS9kZXZpY2UvYmFzZS5jIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZr bS9lbmdpbmUvZGV2aWNlL2Jhc2UuYwppbmRleCBiMDYxZGYxMzgxNDIuLjIzMWVjMDA3M2FmMyAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZrbS9lbmdpbmUvZGV2aWNlL2Jh c2UuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udmttL2VuZ2luZS9kZXZpY2UvYmFz ZS5jCkBAIC0yMzgwLDcgKzIzODAsNyBAQCBudjEzYl9jaGlwc2V0ID0gewogCS5mdXNlID0gZ20x MDdfZnVzZV9uZXcsCiAJLmlidXMgPSBncDEwYl9pYnVzX25ldywKIAkuaW1lbSA9IGdrMjBhX2lu c3RtZW1fbmV3LAotCS5sdGMgPSBncDEwMl9sdGNfbmV3LAorCS5sdGMgPSBncDEwYl9sdGNfbmV3 LAogCS5tYyA9IGdwMTBiX21jX25ldywKIAkubW11ID0gZ3AxMGJfbW11X25ldywKIAkuc2VjYm9v dCA9IGdwMTBiX3NlY2Jvb3RfbmV3LApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL25vdXZl YXUvbnZrbS9zdWJkZXYvbHRjL0tidWlsZCBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252a20v c3ViZGV2L2x0Yy9LYnVpbGQKaW5kZXggMmI2ZDM2ZWE3MDY3Li43MjhkNzUwMTA4NDcgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2x0Yy9LYnVpbGQKKysr IGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvbHRjL0tidWlsZApAQCAtNiwz ICs2LDQgQEAgbnZrbS15ICs9IG52a20vc3ViZGV2L2x0Yy9nbTEwNy5vCiBudmttLXkgKz0gbnZr bS9zdWJkZXYvbHRjL2dtMjAwLm8KIG52a20teSArPSBudmttL3N1YmRldi9sdGMvZ3AxMDAubwog bnZrbS15ICs9IG52a20vc3ViZGV2L2x0Yy9ncDEwMi5vCitudmttLXkgKz0gbnZrbS9zdWJkZXYv bHRjL2dwMTBiLm8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252a20vc3Vi ZGV2L2x0Yy9ncDEwYi5jIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvbHRj L2dwMTBiLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5jMDA2M2M3 Y2FhNTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udmttL3N1 YmRldi9sdGMvZ3AxMGIuYwpAQCAtMCwwICsxLDY1IEBACisvKgorICogQ29weXJpZ2h0IChjKSAy MDE5IE5WSURJQSBDb3Jwb3JhdGlvbi4KKyAqCisgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFu dGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQorICogY29weSBv ZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAi U29mdHdhcmUiKSwKKyAqIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rp b24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24KKyAqIHRoZSByaWdodHMgdG8gdXNlLCBj b3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLAorICog YW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25z IHRvIHdob20gdGhlCisgKiBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3Qg dG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQg bm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCisg KiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KKyAq CisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBP RiBBTlkgS0lORCwgRVhQUkVTUyBPUgorICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElN SVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCisgKiBGSVRORVNTIEZP UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQg U0hBTEwKKyAqIFRIRSBDT1BZUklHSFQgSE9MREVSKFMpIE9SIEFVVEhPUihTKSBCRSBMSUFCTEUg Rk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUgorICogT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElO IEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsCisgKiBBUklTSU5HIEZS T00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0Ug T1IKKyAqIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KKyAqCisgKiBBdXRob3JzOiBU aGllcnJ5IFJlZGluZworICovCisKKyNpbmNsdWRlICJwcml2LmgiCisKK3N0YXRpYyB2b2lkCitn cDEwYl9sdGNfaW5pdChzdHJ1Y3QgbnZrbV9sdGMgKmx0YykKK3sKKwlzdHJ1Y3QgbnZrbV9kZXZp Y2UgKmRldmljZSA9IGx0Yy0+c3ViZGV2LmRldmljZTsKKwlzdHJ1Y3QgaW9tbXVfZndzcGVjICpz cGVjOworCisJbnZrbV93cjMyKGRldmljZSwgMHgxN2UyN2MsIGx0Yy0+bHRjX25yKTsKKwludmtt X3dyMzIoZGV2aWNlLCAweDE3ZTAwMCwgbHRjLT5sdGNfbnIpOworCW52a21fd3IzMihkZXZpY2Us IDB4MTAwODAwLCBsdGMtPmx0Y19ucik7CisKKwlzcGVjID0gZGV2X2lvbW11X2Z3c3BlY19nZXQo ZGV2aWNlLT5kZXYpOworCWlmIChzcGVjKSB7CisJCXUzMiBzaWQgPSBzcGVjLT5pZHNbMF0gJiAw eGZmZmY7CisKKwkJLyogc3RyZWFtIElEICovCisJCW52a21fd3IzMihkZXZpY2UsIDB4MTYwMDAw LCBzaWQgPDwgMik7CisJfQorfQorCitzdGF0aWMgY29uc3Qgc3RydWN0IG52a21fbHRjX2Z1bmMK K2dwMTBiX2x0YyA9IHsKKwkub25laW5pdCA9IGdwMTAwX2x0Y19vbmVpbml0LAorCS5pbml0ID0g Z3AxMGJfbHRjX2luaXQsCisJLmludHIgPSBncDEwMF9sdGNfaW50ciwKKwkuY2JjX2NsZWFyID0g Z20xMDdfbHRjX2NiY19jbGVhciwKKwkuY2JjX3dhaXQgPSBnbTEwN19sdGNfY2JjX3dhaXQsCisJ LnpiYyA9IDE2LAorCS56YmNfY2xlYXJfY29sb3IgPSBnbTEwN19sdGNfemJjX2NsZWFyX2NvbG9y LAorCS56YmNfY2xlYXJfZGVwdGggPSBnbTEwN19sdGNfemJjX2NsZWFyX2RlcHRoLAorCS56YmNf Y2xlYXJfc3RlbmNpbCA9IGdwMTAyX2x0Y196YmNfY2xlYXJfc3RlbmNpbCwKKwkuaW52YWxpZGF0 ZSA9IGdmMTAwX2x0Y19pbnZhbGlkYXRlLAorCS5mbHVzaCA9IGdmMTAwX2x0Y19mbHVzaCwKK307 CisKK2ludAorZ3AxMGJfbHRjX25ldyhzdHJ1Y3QgbnZrbV9kZXZpY2UgKmRldmljZSwgaW50IGlu ZGV4LCBzdHJ1Y3QgbnZrbV9sdGMgKipwbHRjKQoreworCXJldHVybiBudmttX2x0Y19uZXdfKCZn cDEwYl9sdGMsIGRldmljZSwgaW5kZXgsIHBsdGMpOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvbHRjL3ByaXYuaCBiL2RyaXZlcnMvZ3B1L2RybS9u b3V2ZWF1L252a20vc3ViZGV2L2x0Yy9wcml2LmgKaW5kZXggMmZjZjE4ZTQ2Y2UzLi5lY2E1YTcx MWIxYjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2x0 Yy9wcml2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvbHRjL3By aXYuaApAQCAtNDYsNCArNDYsNiBAQCB2b2lkIGdtMTA3X2x0Y196YmNfY2xlYXJfZGVwdGgoc3Ry dWN0IG52a21fbHRjICosIGludCwgY29uc3QgdTMyKTsKIGludCBncDEwMF9sdGNfb25laW5pdChz dHJ1Y3QgbnZrbV9sdGMgKik7CiB2b2lkIGdwMTAwX2x0Y19pbml0KHN0cnVjdCBudmttX2x0YyAq KTsKIHZvaWQgZ3AxMDBfbHRjX2ludHIoc3RydWN0IG52a21fbHRjICopOworCit2b2lkIGdwMTAy X2x0Y196YmNfY2xlYXJfc3RlbmNpbChzdHJ1Y3QgbnZrbV9sdGMgKiwgaW50LCBjb25zdCB1MzIp OwogI2VuZGlmCi0tIAoyLjIzLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCk5vdXZlYXUgbWFpbGluZyBsaXN0Ck5vdXZlYXVAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vbm91 dmVhdQ==