From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: [PATCH 7/9 v6] drm/i915: Interrupt routing for GuC submission Date: Wed, 12 Aug 2015 15:43:42 +0100 Message-ID: <1439390624-21724-8-git-send-email-david.s.gordon@intel.com> References: <1439390624-21724-1-git-send-email-david.s.gordon@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id B04E66EB8A for ; Wed, 12 Aug 2015 07:44:00 -0700 (PDT) In-Reply-To: <1439390624-21724-1-git-send-email-david.s.gordon@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org VHVybiBvbiBpbnRlcnJ1cHQgc3RlZXJpbmcgdG8gcm91dGUgbmVjZXNzYXJ5IGludGVycnVwdHMg dG8gR3VDLgoKdjY6CiAgICBSZWJhc2VkCgpJc3N1ZTogVklaLTQ4ODQKU2lnbmVkLW9mZi1ieTog QWxleCBEYWkgPHl1LmRhaUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IERhdmUgR29yZG9uIDxk YXZpZC5zLmdvcmRvbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9y ZWcuaCAgICAgICAgIHwgMTEgKysrKystLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3Vj X2xvYWRlci5jIHwgNTEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAyIGZpbGVz IGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfcmVnLmgKaW5kZXggZDU0ZGMyYy4uZDRkZmQwNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9yZWcuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5o CkBAIC0xNjc0LDYgKzE2NzQsNyBAQCBlbnVtIHNrbF9kaXNwX3Bvd2VyX3dlbGxzIHsKICNkZWZp bmUgR0ZYX01PREVfR0VONwkweDAyMjljCiAjZGVmaW5lIFJJTkdfTU9ERV9HRU43KHJpbmcpCSgo cmluZyktPm1taW9fYmFzZSsweDI5YykKICNkZWZpbmUgICBHRlhfUlVOX0xJU1RfRU5BQkxFCQko MTw8MTUpCisjZGVmaW5lICAgR0ZYX0lOVEVSUlVQVF9TVEVFUklORwkoMTw8MTQpCiAjZGVmaW5l ICAgR0ZYX1RMQl9JTlZBTElEQVRFX0VYUExJQ0lUCSgxPDwxMykKICNkZWZpbmUgICBHRlhfU1VS RkFDRV9GQVVMVF9FTkFCTEUJKDE8PDEyKQogI2RlZmluZSAgIEdGWF9SRVBMQVlfTU9ERQkJKDE8 PDExKQpAQCAtMTY4MSw2ICsxNjgyLDExIEBAIGVudW0gc2tsX2Rpc3BfcG93ZXJfd2VsbHMgewog I2RlZmluZSAgIEdGWF9QUEdUVF9FTkFCTEUJCSgxPDw5KQogI2RlZmluZSAgIEdFTjhfR0ZYX1BQ R1RUXzQ4QgkJKDE8PDcpCiAKKyNkZWZpbmUgICBHRlhfRk9SV0FSRF9WQkxBTktfTUFTSwkoMzw8 NSkKKyNkZWZpbmUgICBHRlhfRk9SV0FSRF9WQkxBTktfTkVWRVIJKDA8PDUpCisjZGVmaW5lICAg R0ZYX0ZPUldBUkRfVkJMQU5LX0FMV0FZUwkoMTw8NSkKKyNkZWZpbmUgICBHRlhfRk9SV0FSRF9W QkxBTktfQ09ORAkoMjw8NSkKKwogI2RlZmluZSBWTFZfRElTUExBWV9CQVNFIDB4MTgwMDAwCiAj ZGVmaW5lIFZMVl9NSVBJX0JBU0UgVkxWX0RJU1BMQVlfQkFTRQogCkBAIC01Njk0LDExICs1NzAw LDEyIEBAIGVudW0gc2tsX2Rpc3BfcG93ZXJfd2VsbHMgewogI2RlZmluZSBHRU44X0dUX0lJUih3 aGljaCkgKDB4NDQzMDggKyAoMHgxMCAqICh3aGljaCkpKQogI2RlZmluZSBHRU44X0dUX0lFUih3 aGljaCkgKDB4NDQzMGMgKyAoMHgxMCAqICh3aGljaCkpKQogCi0jZGVmaW5lIEdFTjhfQkNTX0lS UV9TSElGVCAxNgogI2RlZmluZSBHRU44X1JDU19JUlFfU0hJRlQgMAotI2RlZmluZSBHRU44X1ZD UzJfSVJRX1NISUZUIDE2CisjZGVmaW5lIEdFTjhfQkNTX0lSUV9TSElGVCAxNgogI2RlZmluZSBH RU44X1ZDUzFfSVJRX1NISUZUIDAKKyNkZWZpbmUgR0VOOF9WQ1MyX0lSUV9TSElGVCAxNgogI2Rl ZmluZSBHRU44X1ZFQ1NfSVJRX1NISUZUIDAKKyNkZWZpbmUgR0VOOF9XRF9JUlFfU0hJRlQgMTYK IAogI2RlZmluZSBHRU44X0RFX1BJUEVfSVNSKHBpcGUpICgweDQ0NDAwICsgKDB4MTAgKiAocGlw ZSkpKQogI2RlZmluZSBHRU44X0RFX1BJUEVfSU1SKHBpcGUpICgweDQ0NDA0ICsgKDB4MTAgKiAo cGlwZSkpKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2xvYWRl ci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2xvYWRlci5jCmluZGV4IDhiNGIw NTcuLjEzZTc1ZjYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Y19s b2FkZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfbG9hZGVyLmMKQEAg LTc5LDYgKzc5LDUzIEBAIGNvbnN0IGNoYXIgKmludGVsX2d1Y19md19zdGF0dXNfcmVwcihlbnVt IGludGVsX2d1Y19md19zdGF0dXMgc3RhdHVzKQogCX0KIH07CiAKK3N0YXRpYyB2b2lkIGRpcmVj dF9pbnRlcnJ1cHRzX3RvX2hvc3Qoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQor eworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7CisJaW50IGksIGlycXM7CisKKwkvKiB0 ZWxsIGFsbCBjb21tYW5kIHN0cmVhbWVycyBOT1QgdG8gZm9yd2FyZCBpbnRlcnJ1cHRzIGFuZCB2 YmxhbmsgdG8gR3VDICovCisJaXJxcyA9IF9NQVNLRURfRklFTEQoR0ZYX0ZPUldBUkRfVkJMQU5L X01BU0ssIEdGWF9GT1JXQVJEX1ZCTEFOS19ORVZFUik7CisJaXJxcyB8PSBfTUFTS0VEX0JJVF9E SVNBQkxFKEdGWF9JTlRFUlJVUFRfU1RFRVJJTkcpOworCWZvcl9lYWNoX3JpbmcocmluZywgZGV2 X3ByaXYsIGkpCisJCUk5MTVfV1JJVEUoUklOR19NT0RFX0dFTjcocmluZyksIGlycXMpOworCisJ LyogdGVsbCBERSB0byBzZW5kIG5vdGhpbmcgdG8gR3VDICovCisJSTkxNV9XUklURShERV9HVUNS TVIsIH4wKTsKKworCS8qIHJvdXRlIGFsbCBHVCBpbnRlcnJ1cHRzIHRvIHRoZSBob3N0ICovCisJ STkxNV9XUklURShHVUNfQkNTX1JDU19JRVIsIDApOworCUk5MTVfV1JJVEUoR1VDX1ZDUzJfVkNT MV9JRVIsIDApOworCUk5MTVfV1JJVEUoR1VDX1dEX1ZFQ1NfSUVSLCAwKTsKK30KKworc3RhdGlj IHZvaWQgZGlyZWN0X2ludGVycnVwdHNfdG9fZ3VjKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdikKK3sKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nOworCWludCBpLCBpcnFz OworCisJLyogdGVsbCBhbGwgY29tbWFuZCBzdHJlYW1lcnMgdG8gZm9yd2FyZCBpbnRlcnJ1cHRz IGFuZCB2YmxhbmsgdG8gR3VDICovCisJaXJxcyA9IF9NQVNLRURfRklFTEQoR0ZYX0ZPUldBUkRf VkJMQU5LX01BU0ssIEdGWF9GT1JXQVJEX1ZCTEFOS19BTFdBWVMpOworCWlycXMgfD0gX01BU0tF RF9CSVRfRU5BQkxFKEdGWF9JTlRFUlJVUFRfU1RFRVJJTkcpOworCWZvcl9lYWNoX3Jpbmcocmlu ZywgZGV2X3ByaXYsIGkpCisJCUk5MTVfV1JJVEUoUklOR19NT0RFX0dFTjcocmluZyksIGlycXMp OworCisJLyogdGVsbCBERSB0byBzZW5kIChhbGwpIGZsaXBfZG9uZSB0byBHdUMgKi8KKwlpcnFz ID0gREVSUk1SX1BJUEVBX1BSSV9GTElQX0RPTkUgfCBERVJSTVJfUElQRUFfU1BSX0ZMSVBfRE9O RSB8CisJICAgICAgIERFUlJNUl9QSVBFQl9QUklfRkxJUF9ET05FIHwgREVSUk1SX1BJUEVCX1NQ Ul9GTElQX0RPTkUgfAorCSAgICAgICBERVJSTVJfUElQRUNfUFJJX0ZMSVBfRE9ORSB8IERFUlJN Ul9QSVBFQ19TUFJfRkxJUF9ET05FOworCS8qIFVubWFza2VkIGJpdHMgd2lsbCBjYXVzZSBHdUMg cmVzcG9uc2UgbWVzc2FnZSB0byBiZSBzZW50ICovCisJSTkxNV9XUklURShERV9HVUNSTVIsIH5p cnFzKTsKKworCS8qIHJvdXRlIFVTRVJfSU5URVJSVVBUIHRvIEhvc3QsIGFsbCBvdGhlcnMgYXJl IHNlbnQgdG8gR3VDLiAqLworCWlycXMgPSBHVF9SRU5ERVJfVVNFUl9JTlRFUlJVUFQgPDwgR0VO OF9SQ1NfSVJRX1NISUZUIHwKKwkgICAgICAgR1RfUkVOREVSX1VTRVJfSU5URVJSVVBUIDw8IEdF TjhfQkNTX0lSUV9TSElGVDsKKwkvKiBUaGVzZSB0aHJlZSByZWdpc3RlcnMgaGF2ZSB0aGUgc2Ft ZSBiaXQgZGVmaW5pdGlvbnMgKi8KKwlJOTE1X1dSSVRFKEdVQ19CQ1NfUkNTX0lFUiwgfmlycXMp OworCUk5MTVfV1JJVEUoR1VDX1ZDUzJfVkNTMV9JRVIsIH5pcnFzKTsKKwlJOTE1X1dSSVRFKEdV Q19XRF9WRUNTX0lFUiwgfmlycXMpOworfQorCiBzdGF0aWMgdTMyIGdldF9ndHR5cGUoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCS8qIFhYWDogR1QgdHlwZSBiYXNlZCBv biBQQ0kgZGV2aWNlIElEPyBmaWVsZCBzZWVtcyB1bnVzZWQgYnkgZncgKi8KQEAgLTM0Miw2ICsz ODksNyBAQCBpbnQgaW50ZWxfZ3VjX3Vjb2RlX2xvYWQoc3RydWN0IGRybV9kZXZpY2UgKmRldikK IAkJaW50ZWxfZ3VjX2Z3X3N0YXR1c19yZXByKGd1Y19mdy0+Z3VjX2Z3X2ZldGNoX3N0YXR1cyks CiAJCWludGVsX2d1Y19md19zdGF0dXNfcmVwcihndWNfZnctPmd1Y19md19sb2FkX3N0YXR1cykp OwogCisJZGlyZWN0X2ludGVycnVwdHNfdG9faG9zdChkZXZfcHJpdik7CiAJaTkxNV9ndWNfc3Vi bWlzc2lvbl9kaXNhYmxlKGRldik7CiAKIAlpZiAoZ3VjX2Z3LT5ndWNfZndfZmV0Y2hfc3RhdHVz ID09IEdVQ19GSVJNV0FSRV9OT05FKQpAQCAtMzk1LDYgKzQ0Myw3IEBAIGludCBpbnRlbF9ndWNf dWNvZGVfbG9hZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQllcnIgPSBpOTE1X2d1Y19zdWJt aXNzaW9uX2VuYWJsZShkZXYpOwogCQlpZiAoZXJyKQogCQkJZ290byBmYWlsOworCQlkaXJlY3Rf aW50ZXJydXB0c190b19ndWMoZGV2X3ByaXYpOwogCX0KIAogCXJldHVybiAwOwpAQCAtNDAzLDYg KzQ1Miw3IEBAIGZhaWw6CiAJaWYgKGd1Y19mdy0+Z3VjX2Z3X2xvYWRfc3RhdHVzID09IEdVQ19G SVJNV0FSRV9QRU5ESU5HKQogCQlndWNfZnctPmd1Y19md19sb2FkX3N0YXR1cyA9IEdVQ19GSVJN V0FSRV9GQUlMOwogCisJZGlyZWN0X2ludGVycnVwdHNfdG9faG9zdChkZXZfcHJpdik7CiAJaTkx NV9ndWNfc3VibWlzc2lvbl9kaXNhYmxlKGRldik7CiAKIAlyZXR1cm4gZXJyOwpAQCAtNTUwLDYg KzYwMCw3IEBAIHZvaWQgaW50ZWxfZ3VjX3Vjb2RlX2Zpbmkoc3RydWN0IGRybV9kZXZpY2UgKmRl dikKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRl OwogCXN0cnVjdCBpbnRlbF9ndWNfZncgKmd1Y19mdyA9ICZkZXZfcHJpdi0+Z3VjLmd1Y19mdzsK IAorCWRpcmVjdF9pbnRlcnJ1cHRzX3RvX2hvc3QoZGV2X3ByaXYpOwogCWk5MTVfZ3VjX3N1Ym1p c3Npb25fZmluaShkZXYpOwogCiAJaWYgKGd1Y19mdy0+Z3VjX2Z3X29iaikKLS0gCjEuOS4xCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZngg bWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=