From mboxrd@z Thu Jan 1 00:00:00 1970 From: Monk Liu Subject: [PATCH 2/3] drm/amdgpu:add new file for SRIOV Date: Tue, 10 Jan 2017 18:33:41 +0800 Message-ID: <1484044422-2898-3-git-send-email-Monk.Liu@amd.com> References: <1484044422-2898-1-git-send-email-Monk.Liu@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1484044422-2898-1-git-send-email-Monk.Liu-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: Monk Liu Zm9yIFNSSU9WIHVzYWdlLCBDU0EgaXMgb25seSB1c2VkIHBlciBkZXZpY2UgYW5kIGVhY2gKVk0g d2lsbCBtYXAgb24gaXQuCgpDaGFuZ2UtSWQ6IEliYzYzZDg3YmU1OWQ3ZDg5Yjk2MTE3ZTRkMWI3 ZTk3MGE4NzI1ODBkClNpZ25lZC1vZmYtYnk6IE1vbmsgTGl1IDxNb25rLkxpdUBhbWQuY29tPgot LS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L01ha2VmaWxlICAgICAgfCAgIDIgKy0KIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0LmMgfCAxMDUgKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3Zp cnQuaCB8ICAgNSArKwogMyBmaWxlcyBjaGFuZ2VkLCAxMTEgaW5zZXJ0aW9ucygrKSwgMSBkZWxl dGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Ft ZGdwdV92aXJ0LmMKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9NYWtl ZmlsZSBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L01ha2VmaWxlCmluZGV4IDQxODViMDMu LjBiOGU0NzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L01ha2VmaWxl CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L01ha2VmaWxlCkBAIC0zMCw3ICszMCw3 IEBAIGFtZGdwdS15ICs9IGFtZGdwdV9kZXZpY2UubyBhbWRncHVfa21zLm8gXAogCWF0b21iaW9z X2VuY29kZXJzLm8gYW1kZ3B1X3NhLm8gYXRvbWJpb3NfaTJjLm8gXAogCWFtZGdwdV9wcmltZS5v IGFtZGdwdV92bS5vIGFtZGdwdV9pYi5vIGFtZGdwdV9wbGwubyBcCiAJYW1kZ3B1X3Vjb2RlLm8g YW1kZ3B1X2JvX2xpc3QubyBhbWRncHVfY3R4Lm8gYW1kZ3B1X3N5bmMubyBcCi0JYW1kZ3B1X2d0 dF9tZ3IubyBhbWRncHVfdnJhbV9tZ3IubworCWFtZGdwdV9ndHRfbWdyLm8gYW1kZ3B1X3ZyYW1f bWdyLm8gYW1kZ3B1X3ZpcnQubwogCiAjIGFkZCBhc2ljIHNwZWNpZmljIGJsb2NrCiBhbWRncHUt JChDT05GSUdfRFJNX0FNREdQVV9DSUspKz0gY2lrLm8gY2lrX2loLm8ga3Zfc21jLm8ga3ZfZHBt Lm8gXApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZpcnQu YyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0LmMKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjQzZmExMAotLS0gL2Rldi9udWxsCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0LmMKQEAgLTAsMCArMSwxMDUgQEAKKy8q CisgKiBDb3B5cmlnaHQgMjAxNiBBZHZhbmNlZCBNaWNybyBEZXZpY2VzLCBJbmMuCisgKgorICog UGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJz b24gb2J0YWluaW5nIGEKKyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBk b2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksCisgKiB0byBkZWFsIGluIHRoZSBT b2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9u CisgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlz dHJpYnV0ZSwgc3VibGljZW5zZSwKKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdh cmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQorICogU29mdHdhcmUgaXMgZnVy bmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKyAq CisgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGlj ZSBzaGFsbCBiZSBpbmNsdWRlZCBpbgorICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0 aW9ucyBvZiB0aGUgU29mdHdhcmUuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJB UyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKKyAqIElNUExJ RUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hB TlRBQklMSVRZLAorICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklO RlJJTkdFTUVOVC4gIElOIE5PIEVWRU5UIFNIQUxMCisgKiBUSEUgQ09QWVJJR0hUIEhPTERFUihT KSBPUiBBVVRIT1IoUykgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IKKyAqIE9U SEVSIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1Ig T1RIRVJXSVNFLAorICogQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRI IFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SCisgKiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09G VFdBUkUuCisgKgorICovCisKKyNpbmNsdWRlICJhbWRncHUuaCIKKworaW50IGFtZGdwdV9hbGxv Y2F0ZV9zdGF0aWNfY3NhKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQoreworCWludCByOwor CXZvaWQgKnB0cjsKKworCXIgPSBhbWRncHVfYm9fY3JlYXRlX2tlcm5lbChhZGV2LCBhZGV2LT52 aXJ0LmNzYV9zaXplLCBQQUdFX1NJWkUsCisJCQkJQU1ER1BVX0dFTV9ET01BSU5fVlJBTSwgJmFk ZXYtPnZpcnQuY3NhX29iaiwKKwkJCQkmYWRldi0+dmlydC5jc2Ffdm1pZDBfYWRkciwgJnB0cik7 CisJaWYgKHIpCisJCXJldHVybiByOworCisJLyogZ2RzIHBhcnQgdGFrZSB0aGUgYm90dG9tIGhh bGYgYnVmZmVyICovCisJYWRldi0+dmlydC5nZHNfdm1pZDBfYWRkciA9IGFkZXYtPnZpcnQuY3Nh X3ZtaWQwX2FkZHIgKyBQQUdFX1NJWkU7CisJbWVtc2V0KHB0ciwgMCwgYWRldi0+dmlydC5jc2Ff c2l6ZSk7CisJcmV0dXJuIDA7Cit9CisKK3ZvaWQgYW1kZ3B1X2RlYWxsb2NhdGVfc3RhdGljX2Nz YShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKK3sKKwlhbWRncHVfYm9fZnJlZV9rZXJuZWwo JmFkZXYtPnZpcnQuY3NhX29iaiwgJmFkZXYtPnZpcnQuY3NhX3ZtaWQwX2FkZHIsIE5VTEwpOwor fQorCisvKgorICogYW1kZ3B1X21hcF9zdGF0aWNfY3NhIHNob3VsZCBiZSBjYWxsZWQgZHVyaW5n IGFtZGdwdV92bV9pbml0CisgKiBpdCBtYXBzIHZpcnR1YWwgYWRkcmVzcyAiQU1ER1BVX1ZBX1JF U0VSVkVEX1NJWkUgLSBhZGV2LT52aXJ0LmNzYV9zaXplIgorICogdG8gdGhpcyBWTSwgYW5kIGVh Y2ggY29tbWFuZCBzdWJtaXNzaW9uIG9mIEdGWCBzaG91bGQgdXNlIHRoaXMgdmlydHVhbAorICog YWRkcmVzcyB3aXRoaW4gTUVUQV9EQVRBIGluaXQgcGFja2FnZSB0byBzdXBwb3J0IFNSSU9WIGdm eCBwcmVlbXB0aW9uLgorICovCisKK2ludCBhbWRncHVfbWFwX3N0YXRpY19jc2Eoc3RydWN0IGFt ZGdwdV9kZXZpY2UgKmFkZXYsIHN0cnVjdCBhbWRncHVfdm0gKnZtKQoreworCWludCByOworCXVp bnQ2NF90IHZhZGRyOworCXN0cnVjdCBhbWRncHVfYm9fdmEgKmJvX3ZhOworCXN0cnVjdCB3d19h Y3F1aXJlX2N0eCB0aWNrZXQ7CisJc3RydWN0IGxpc3RfaGVhZCBsaXN0LCBkdXBsaWNhdGVzOwor CXN0cnVjdCBhbWRncHVfYm9fbGlzdF9lbnRyeSBwZDsKKworCUlOSVRfTElTVF9IRUFEKCZsaXN0 KTsKKwlJTklUX0xJU1RfSEVBRCgmZHVwbGljYXRlcyk7CisJSU5JVF9MSVNUX0hFQUQoJnZtLT52 bV92aXJ0LmNzYV90di5oZWFkKTsKKwl2bS0+dm1fdmlydC5jc2FfdHYuYm8gPSAmYWRldi0+dmly dC5jc2Ffb2JqLT50Ym87CisJdm0tPnZtX3ZpcnQuY3NhX3R2LnNoYXJlZCA9IHRydWU7CisKKwls aXN0X2FkZCgmdm0tPnZtX3ZpcnQuY3NhX3R2LmhlYWQsICZsaXN0KTsKKwlhbWRncHVfdm1fZ2V0 X3BkX2JvKHZtLCAmbGlzdCwgJnBkKTsKKworCXZhZGRyID0gQU1ER1BVX1ZBX1JFU0VSVkVEX1NJ WkUgLSBhZGV2LT52aXJ0LmNzYV9zaXplOworCXIgPSB0dG1fZXVfcmVzZXJ2ZV9idWZmZXJzKCZ0 aWNrZXQsICZsaXN0LCB0cnVlLCAmZHVwbGljYXRlcyk7CisJaWYgKHIpIHsKKwkJRFJNX0VSUk9S KCJmYWlsZWQgdG8gcmVzZXJ2ZSBDU0EsUEQgQk9zOiBlcnI9JWRcbiIsIHIpOworCQlyZXR1cm4g cjsKKwl9CisKKwlib192YSA9IGFtZGdwdV92bV9ib19hZGQoYWRldiwgdm0sIGFkZXYtPnZpcnQu Y3NhX29iaik7CisJaWYgKCFib192YSkgeworCQl0dG1fZXVfYmFja29mZl9yZXNlcnZhdGlvbigm dGlja2V0LCAmbGlzdCk7CisJCURSTV9FUlJPUigiZmFpbGVkIHRvIGNyZWF0ZSBib192YSBmb3Ig c3RhdGljIENTQVxuIik7CisJCXJldHVybiAtRU5PTUVNOworCX0KKworCXIgPSBhbWRncHVfdm1f Ym9fbWFwKGFkZXYsIGJvX3ZhLCB2YWRkciwgMCwgYWRldi0+dmlydC5jc2Ffc2l6ZSwKKwkJCQkJ CUFNREdQVV9QVEVfUkVBREFCTEUgfCBBTURHUFVfUFRFX1dSSVRFQUJMRSB8CisJCQkJCQlBTURH UFVfUFRFX0VYRUNVVEFCTEUpOworCisJaWYgKHIpIHsKKwkJRFJNX0VSUk9SKCJmYWlsZWQgdG8g ZG8gYm9fbWFwIG9uIHN0YXRpYyBDU0EsIGVycj0lZFxuIiwgcik7CisJCWFtZGdwdV92bV9ib19y bXYoYWRldiwgYm9fdmEpOworCQl0dG1fZXVfYmFja29mZl9yZXNlcnZhdGlvbigmdGlja2V0LCAm bGlzdCk7CisJCWtmcmVlKGJvX3ZhKTsKKwkJcmV0dXJuIHI7CisJfQorCisJdHRtX2V1X2JhY2tv ZmZfcmVzZXJ2YXRpb24oJnRpY2tldCwgJmxpc3QpOworCisJdm0tPnZtX3ZpcnQuY3NhX2JvX3Zh ID0gYm9fdmE7CisJdm0tPnZtX3ZpcnQudm1fY3NhX2FkZHIgPSB2YWRkcjsKKwl2bS0+dm1fdmly dC52bV9nZHNfYWRkciA9IHZhZGRyICsgUEFHRV9TSVpFOworCXJldHVybiAwOworfQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZpcnQuaCBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0LmgKaW5kZXggY2MzNmQyOC4uODI3MTYyYSAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZpcnQuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdmlydC5oCkBAIC02OCw0ICs2OCw5 IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc192aXJ0dWFsX21hY2hpbmUodm9pZCkKICNlbmRpZgog fQogCitzdHJ1Y3QgYW1kZ3B1X3ZtOworaW50IGFtZGdwdV9hbGxvY2F0ZV9zdGF0aWNfY3NhKHN0 cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsKK3ZvaWQgYW1kZ3B1X2RlYWxsb2NhdGVfc3RhdGlj X2NzYShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldik7CitpbnQgYW1kZ3B1X21hcF9zdGF0aWNf Y3NhKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSk7CisK ICNlbmRpZgotLSAKMi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdm eAo=