From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Francis Subject: [PATCH 3/3] drm/amd: Add DM DMCU support Date: Tue, 11 Sep 2018 15:15:13 -0400 Message-ID: <20180911191513.25864-4-David.Francis@amd.com> References: <20180911191513.25864-1-David.Francis@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180911191513.25864-1-David.Francis-5C7GfCeVMHo@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: David Francis RE1DVSAoRGlzcGxheSBNaWNyb2NvbnRyb2xsZXIgVW5pdCkgaXMgYSBHUFUgY2hpcCBpbnZvbHZl ZCBpbgplRFAgZmVhdHVyZXMgbGlrZSBBZGFwdGl2ZSBCYWNrbGlnaHQgTW9kdWxhdGlvbiBhbmQg UGFuZWwgU2VsZgpSZWZyZXNoLgoKREMgaXMgYWxyZWFkeSBmdWxseSBlcXVpcHBlZCB0byBpbml0 aWFsaXplIERNQ1UgYXMgbG9uZyBhcyB0aGUKZmlybXdhcmUgaXMgbG9hZGVkLgoKQXQgdGhlIG1v bWVudCBvbmx5IHRoZSByYXZlbiBmaXJtd2FyZSBpcyBhdmFpbGFibGUuCgpBIHNpbmdsZSAuYmlu IGZpbGUgaXMgbG9hZGVkIGJ5IHRoZSBrZXJuZWwncyBsb2FkaW5nIG1lY2hhbmlzbQphbmQgc3Bs aXQgaW50byB0d28gdWNvZGVzIGFjY29yZGluZyB0byB0aGUgaGVhZGVyLgoKRE1DVSBpcyBvcHRp b25hbCwgc28gaWYgdGhlIGZpcm13YXJlIGlzIG5vdCBmb3VuZCwgbm8gZXJyb3Igb3IKd2Fybmlu ZyBpcyByYWlzZWQuCgpTaWduZWQtb2ZmLWJ5OiBEYXZpZCBGcmFuY2lzIDxEYXZpZC5GcmFuY2lz QGFtZC5jb20+Ci0tLQogLi4uL2dwdS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9k bS5jIHwgOTEgKysrKysrKysrKysrKysrKysrLQogLi4uL2dwdS9kcm0vYW1kL2Rpc3BsYXkvYW1k Z3B1X2RtL2FtZGdwdV9kbS5oIHwgIDIgKwogMiBmaWxlcyBjaGFuZ2VkLCA5MiBpbnNlcnRpb25z KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNw bGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9h bWRncHVfZG0vYW1kZ3B1X2RtLmMKaW5kZXggNTEwM2ViYTc1Y2IzLi43NTQxYzg0OWE0MTcgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2Rt LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0u YwpAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgInZpZC5oIgogI2luY2x1ZGUgImFtZGdwdS5o IgogI2luY2x1ZGUgImFtZGdwdV9kaXNwbGF5LmgiCisjaW5jbHVkZSAiYW1kZ3B1X3Vjb2RlLmgi CiAjaW5jbHVkZSAiYXRvbS5oIgogI2luY2x1ZGUgImFtZGdwdV9kbS5oIgogI2luY2x1ZGUgImFt ZGdwdV9wbS5oIgpAQCAtNTAsNiArNTEsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3ZlcnNpb24uaD4K ICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2luY2x1ZGUgPGxpbnV4L3BtX3J1bnRpbWUuaD4K KyNpbmNsdWRlIDxsaW51eC9maXJtd2FyZS5oPgogCiAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KICNp bmNsdWRlIDxkcm0vZHJtX2F0b21pYy5oPgpAQCAtNzEsNiArNzMsOSBAQAogCiAjaW5jbHVkZSAi bW9kdWxlcy9pbmMvbW9kX2ZyZWVzeW5jLmgiCiAKKyNkZWZpbmUgRklSTVdBUkVfUkFWRU5fRE1D VQkJImFtZGdwdS9yYXZlbl9kbWN1ZS5iaW4iCitNT0RVTEVfRklSTVdBUkUoRklSTVdBUkVfUkFW RU5fRE1DVSk7CisKIC8qIGJhc2ljIGluaXQvZmluaSBBUEkgKi8KIHN0YXRpYyBpbnQgYW1kZ3B1 X2RtX2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwogc3RhdGljIHZvaWQgYW1kZ3B1 X2RtX2Zpbmkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwpAQCAtNTE0LDEzICs1MTksOTcg QEAgc3RhdGljIHZvaWQgYW1kZ3B1X2RtX2Zpbmkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYp CiAJcmV0dXJuOwogfQogCi1zdGF0aWMgaW50IGRtX3N3X2luaXQodm9pZCAqaGFuZGxlKQorc3Rh dGljIGludCBsb2FkX2RtY3VfZncoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCiB7CisJY29u c3QgY2hhciAqZndfbmFtZV9kbWN1OworCWludCByOworCWNvbnN0IHN0cnVjdCBkbWN1X2Zpcm13 YXJlX2hlYWRlcl92MV8wICpoZHI7CisKKwlzd2l0Y2goYWRldi0+YXNpY190eXBlKSB7CisJY2Fz ZSBDSElQX0JPTkFJUkU6CisJY2FzZSBDSElQX0hBV0FJSToKKwljYXNlIENISVBfS0FWRVJJOgor CWNhc2UgQ0hJUF9LQUJJTkk6CisJY2FzZSBDSElQX01VTExJTlM6CisJY2FzZSBDSElQX1RPTkdB OgorCWNhc2UgQ0hJUF9GSUpJOgorCWNhc2UgQ0hJUF9DQVJSSVpPOgorCWNhc2UgQ0hJUF9TVE9O RVk6CisJY2FzZSBDSElQX1BPTEFSSVMxMToKKwljYXNlIENISVBfUE9MQVJJUzEwOgorCWNhc2Ug Q0hJUF9QT0xBUklTMTI6CisJY2FzZSBDSElQX1ZFR0FNOgorCWNhc2UgQ0hJUF9WRUdBMTA6CisJ Y2FzZSBDSElQX1ZFR0ExMjoKKwljYXNlIENISVBfVkVHQTIwOgorCQlyZXR1cm4gMDsKKwljYXNl IENISVBfUkFWRU46CisJCWZ3X25hbWVfZG1jdSA9IEZJUk1XQVJFX1JBVkVOX0RNQ1U7CisJCWJy ZWFrOworCWRlZmF1bHQ6CisJCURSTV9FUlJPUigiVW5zdXBwb3J0ZWQgQVNJQyB0eXBlOiAweCVY XG4iLCBhZGV2LT5hc2ljX3R5cGUpOworCQlyZXR1cm4gLTE7CisJfQorCisJaWYgKGFkZXYtPmZp cm13YXJlLmxvYWRfdHlwZSAhPSBBTURHUFVfRldfTE9BRF9QU1ApIHsKKwkJRFJNX0RFQlVHX0tN UygiZG06IERNQ1UgZmlybXdhcmUgbm90IHN1cHBvcnRlZCBvbiBkaXJlY3Qgb3IgU01VIGxvYWRp bmdcbiIpOworCQlyZXR1cm4gMDsKKwl9CisKKwlyID0gcmVxdWVzdF9maXJtd2FyZV9kaXJlY3Qo JmFkZXYtPmRtLmZ3X2RtY3UsIGZ3X25hbWVfZG1jdSwgYWRldi0+ZGV2KTsKKwlpZiAociA9PSAt RU5PRU5UKSB7CisJCS8qIERNQ1UgZmlybXdhcmUgaXMgbm90IG5lY2Vzc2FyeSwgc28gZG9uJ3Qg cmFpc2UgYSBmdXNzIGlmIGl0J3MgbWlzc2luZyAqLworCQlEUk1fREVCVUdfS01TKCJkbTogRE1D VSBmaXJtd2FyZSBub3QgZm91bmRcbiIpOworCQlhZGV2LT5kbS5md19kbWN1ID0gTlVMTDsKKwkJ cmV0dXJuIDA7CisJfQorCWlmIChyKSB7CisJCWRldl9lcnIoYWRldi0+ZGV2LCAiYW1kZ3B1X2Rt OiBDYW4ndCBsb2FkIGZpcm13YXJlIFwiJXNcIlxuIiwKKwkJCWZ3X25hbWVfZG1jdSk7CisJCXJl dHVybiByOworCX0KKworCXIgPSBhbWRncHVfdWNvZGVfdmFsaWRhdGUoYWRldi0+ZG0uZndfZG1j dSk7CisJaWYgKHIpIHsKKwkJZGV2X2VycihhZGV2LT5kZXYsICJhbWRncHVfZG06IENhbid0IHZh bGlkYXRlIGZpcm13YXJlIFwiJXNcIlxuIiwKKwkJCWZ3X25hbWVfZG1jdSk7CisJCXJlbGVhc2Vf ZmlybXdhcmUoYWRldi0+ZG0uZndfZG1jdSk7CisJCWFkZXYtPmRtLmZ3X2RtY3UgPSBOVUxMOwor CQlyZXR1cm4gcjsKKwl9CisKKwloZHIgPSAoY29uc3Qgc3RydWN0IGRtY3VfZmlybXdhcmVfaGVh ZGVyX3YxXzAgKilhZGV2LT5kbS5md19kbWN1LT5kYXRhOworCWFkZXYtPmZpcm13YXJlLnVjb2Rl W0FNREdQVV9VQ09ERV9JRF9ETUNVX0VSQU1dLnVjb2RlX2lkID0gQU1ER1BVX1VDT0RFX0lEX0RN Q1VfRVJBTTsKKwlhZGV2LT5maXJtd2FyZS51Y29kZVtBTURHUFVfVUNPREVfSURfRE1DVV9FUkFN XS5mdyA9IGFkZXYtPmRtLmZ3X2RtY3U7CisJYWRldi0+ZmlybXdhcmUuZndfc2l6ZSArPQorCQlB TElHTihsZTMyX3RvX2NwdShoZHItPmhlYWRlci51Y29kZV9zaXplX2J5dGVzKSAtIGxlMzJfdG9f Y3B1KGhkci0+aW50dl9zaXplKSAqIDQsIFBBR0VfU0laRSk7CisKKwlhZGV2LT5maXJtd2FyZS51 Y29kZVtBTURHUFVfVUNPREVfSURfRE1DVV9JTlRWXS51Y29kZV9pZCA9IEFNREdQVV9VQ09ERV9J RF9ETUNVX0lOVFY7CisJYWRldi0+ZmlybXdhcmUudWNvZGVbQU1ER1BVX1VDT0RFX0lEX0RNQ1Vf SU5UVl0uZncgPSBhZGV2LT5kbS5md19kbWN1OworCWFkZXYtPmZpcm13YXJlLmZ3X3NpemUgKz0K KwkJQUxJR04obGUzMl90b19jcHUoaGRyLT5pbnR2X3NpemUpICogNCwgUEFHRV9TSVpFKTsKKwor CURSTV9ERUJVR19LTVMoIlBTUCBsb2FkaW5nIERNQ1UgZmlybXdhcmVcbiIpOworCiAJcmV0dXJu IDA7CiB9CiAKK3N0YXRpYyBpbnQgZG1fc3dfaW5pdCh2b2lkICpoYW5kbGUpCit7CisJc3RydWN0 IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSAoc3RydWN0IGFtZGdwdV9kZXZpY2UgKiloYW5kbGU7CisK KwlyZXR1cm4gbG9hZF9kbWN1X2Z3KGFkZXYpOworfQorCiBzdGF0aWMgaW50IGRtX3N3X2Zpbmko dm9pZCAqaGFuZGxlKQogeworCXN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2ID0gKHN0cnVjdCBh bWRncHVfZGV2aWNlICopaGFuZGxlOworCisJaWYoYWRldi0+ZG0uZndfZG1jdSkgeworCQlyZWxl YXNlX2Zpcm13YXJlKGFkZXYtPmRtLmZ3X2RtY3UpOworCQlhZGV2LT5kbS5md19kbWN1ID0gTlVM TDsKKwl9CisKIAlyZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlz cGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmgKaW5kZXggYzE1OTU4NGMwNGY3Li45YTU3YzY1NDk0 M2EgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1k Z3B1X2RtLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRn cHVfZG0uaApAQCAtMTI5LDYgKzEyOSw4IEBAIHN0cnVjdCBhbWRncHVfZGlzcGxheV9tYW5hZ2Vy IHsKIAlzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqY2FjaGVkX3N0YXRlOwogCiAJc3RydWN0IGRt X2NvbXJlc3Nvcl9pbmZvIGNvbXByZXNzb3I7CisKKwljb25zdCBzdHJ1Y3QgZmlybXdhcmUgKmZ3 X2RtY3U7CiB9OwogCiBzdHJ1Y3QgYW1kZ3B1X2RtX2Nvbm5lY3RvciB7Ci0tIAoyLjE3LjEKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1nZnggbWFp bGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=