From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= Subject: [PATCH 08/14] drm/radeon: consolidate ni vce initialization and startup code. Date: Fri, 18 Mar 2016 16:58:33 +0100 Message-ID: <1458316719-30104-9-git-send-email-jglisse@redhat.com> References: <1458316719-30104-1-git-send-email-jglisse@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by gabe.freedesktop.org (Postfix) with ESMTPS id 35B886EC06 for ; Fri, 18 Mar 2016 15:59:02 +0000 (UTC) In-Reply-To: <1458316719-30104-1-git-send-email-jglisse@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Alex Deucher , =?UTF-8?q?J=C3=A9rome=20Glisse?= , =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org RnJvbTogSsOpcm9tZSBHbGlzc2UgPGpnbGlzc2VAcmVkaGF0LmNvbT4KClRoaXMgbWF0Y2ggdGhl IGV4YWN0IHNhbWUgY29udHJvbCBmbG93IGFzIGV4aXN0aW5nIGNvZGUuIEl0IGp1c3QKdXNlIGdv dG8gaW5zdGVhZCBvZiBtdWx0aXBsZSBsZXZlbHMgb2YgaWYvZWxzZS4gSXQgYWxzbyBjbGFyaWZ5 CmVhcmx5IGluaXRpYWxpemF0aW9uIGZhaWx1cmVzIGJ5IGNsZWFyaW5nIHJkZXYtPmhhc192Y2Ug ZG9pbmcgc28KZG9lcyBub3QgY2hhbmdlIGVuZCByZXN1bHQgZnJvbSBoYXJkd2FyZSBwb2ludCBv ZiB2aWV3LCBpdCBvbmx5CmF2b2lkcyBwcmludGluZyBtb3JlIGVycm9yIG1lc3NhZ2VzIGRvd24g dGhlIGxpbmUgYW5kIHRodXMgb25seQp0aGUgb3JpZ2luYWwgZXJyb3IgaXMgcmVwb3J0ZWQuCgpT aWduZWQtb2ZmLWJ5OiBKw6lyw7RtZSBHbGlzc2UgPGpnbGlzc2VAcmVkaGF0LmNvbT4KQ2M6IEFs ZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1kLmNvbT4KQ2M6IENocmlzdGlhbiBLw7Zu aWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9u L25pLmMgfCAxMzkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0K IDEgZmlsZSBjaGFuZ2VkLCA5MSBpbnNlcnRpb25zKCspLCA0OCBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL25pLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFk ZW9uL25pLmMKaW5kZXggMzhjMzk0Ny4uZWMwYWFjOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9uaS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vbmkuYwpAQCAtMjA2 OSw2ICsyMDY5LDkzIEBAIHN0YXRpYyB2b2lkIGNheW1hbl91dmRfcmVzdW1lKHN0cnVjdCByYWRl b25fZGV2aWNlICpyZGV2KQogCX0KIH0KIAorc3RhdGljIHZvaWQgY2F5bWFuX3ZjZV9pbml0KHN0 cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQoreworCWludCByOworCisJLyogT25seSBzZXQgZm9y IENISVBfQVJVQkEgKi8KKwlpZiAoIXJkZXYtPmhhc192Y2UpCisJCXJldHVybjsKKworCXIgPSBy YWRlb25fdmNlX2luaXQocmRldik7CisJaWYgKHIpIHsKKwkJZGV2X2VycihyZGV2LT5kZXYsICJm YWlsZWQgVkNFICglZCkgaW5pdC5cbiIsIHIpOworCQkvKgorCQkgKiBBdCB0aGlzIHBvaW50IHJk ZXYtPnZjZS52Y3B1X2JvIGlzIE5VTEwgd2hpY2ggdHJpY2tsZXMgZG93bgorCQkgKiB0byBlYXJs eSBmYWlscyBjYXltYW5fdmNlX3N0YXJ0KCkgYW5kIHRodXMgbm90aGluZyBoYXBwZW5zCisJCSAq IHRoZXJlLiBTbyBpdCBpcyBwb2ludGxlc3MgdG8gdHJ5IHRvIGdvIHRocm91Z2ggdGhhdCBjb2Rl CisJCSAqIGhlbmNlIHdoeSB3ZSBkaXNhYmxlIHZjZSBoZXJlLgorCQkgKi8KKwkJcmRldi0+aGFz X3ZjZSA9IDA7CisJCXJldHVybjsKKwl9CisJcmRldi0+cmluZ1tUTl9SSU5HX1RZUEVfVkNFMV9J TkRFWF0ucmluZ19vYmogPSBOVUxMOworCXI2MDBfcmluZ19pbml0KHJkZXYsICZyZGV2LT5yaW5n W1ROX1JJTkdfVFlQRV9WQ0UxX0lOREVYXSwgNDA5Nik7CisJcmRldi0+cmluZ1tUTl9SSU5HX1RZ UEVfVkNFMl9JTkRFWF0ucmluZ19vYmogPSBOVUxMOworCXI2MDBfcmluZ19pbml0KHJkZXYsICZy ZGV2LT5yaW5nW1ROX1JJTkdfVFlQRV9WQ0UyX0lOREVYXSwgNDA5Nik7Cit9CisKK3N0YXRpYyB2 b2lkIGNheW1hbl92Y2Vfc3RhcnQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpCit7CisJaW50 IHI7CisKKwlpZiAoIXJkZXYtPmhhc192Y2UpCisJCXJldHVybjsKKworCXIgPSByYWRlb25fdmNl X3Jlc3VtZShyZGV2KTsKKwlpZiAocikgeworCQlkZXZfZXJyKHJkZXYtPmRldiwgImZhaWxlZCBW Q0UgcmVzdW1lICglZCkuXG4iLCByKTsKKwkJZ290byBlcnJvcjsKKwl9CisJciA9IHZjZV92MV8w X3Jlc3VtZShyZGV2KTsKKwlpZiAocikgeworCQlkZXZfZXJyKHJkZXYtPmRldiwgImZhaWxlZCBW Q0UgcmVzdW1lICglZCkuXG4iLCByKTsKKwkJZ290byBlcnJvcjsKKwl9CisJciA9IHJhZGVvbl9m ZW5jZV9kcml2ZXJfc3RhcnRfcmluZyhyZGV2LCBUTl9SSU5HX1RZUEVfVkNFMV9JTkRFWCk7CisJ aWYgKHIpIHsKKwkJZGV2X2VycihyZGV2LT5kZXYsICJmYWlsZWQgaW5pdGlhbGl6aW5nIFZDRTEg ZmVuY2VzICglZCkuXG4iLCByKTsKKwkJZ290byBlcnJvcjsKKwl9CisJciA9IHJhZGVvbl9mZW5j ZV9kcml2ZXJfc3RhcnRfcmluZyhyZGV2LCBUTl9SSU5HX1RZUEVfVkNFMl9JTkRFWCk7CisJaWYg KHIpIHsKKwkJZGV2X2VycihyZGV2LT5kZXYsICJmYWlsZWQgaW5pdGlhbGl6aW5nIFZDRTIgZmVu Y2VzICglZCkuXG4iLCByKTsKKwkJZ290byBlcnJvcjsKKwl9CisJcmV0dXJuOworCitlcnJvcjoK KwlyZGV2LT5yaW5nW1ROX1JJTkdfVFlQRV9WQ0UxX0lOREVYXS5yaW5nX3NpemUgPSAwOworCXJk ZXYtPnJpbmdbVE5fUklOR19UWVBFX1ZDRTJfSU5ERVhdLnJpbmdfc2l6ZSA9IDA7Cit9CisKK3N0 YXRpYyB2b2lkIGNheW1hbl92Y2VfcmVzdW1lKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQor eworCXN0cnVjdCByYWRlb25fcmluZyAqcmluZzsKKwlpbnQgcjsKKworCWlmICghcmRldi0+aGFz X3ZjZSB8fCAhcmRldi0+cmluZ1tUTl9SSU5HX1RZUEVfVkNFMV9JTkRFWF0ucmluZ19zaXplKQor CQlyZXR1cm47CisKKwlyaW5nID0gJnJkZXYtPnJpbmdbVE5fUklOR19UWVBFX1ZDRTFfSU5ERVhd OworCXIgPSByYWRlb25fcmluZ19pbml0KHJkZXYsIHJpbmcsIHJpbmctPnJpbmdfc2l6ZSwgMCwg MHgwKTsKKwlpZiAocikgeworCQlkZXZfZXJyKHJkZXYtPmRldiwgImZhaWxlZCBpbml0aWFsaXpp bmcgVkNFMSByaW5nICglZCkuXG4iLCByKTsKKwkJcmV0dXJuOworCX0KKwlyaW5nID0gJnJkZXYt PnJpbmdbVE5fUklOR19UWVBFX1ZDRTJfSU5ERVhdOworCXIgPSByYWRlb25fcmluZ19pbml0KHJk ZXYsIHJpbmcsIHJpbmctPnJpbmdfc2l6ZSwgMCwgMHgwKTsKKwlpZiAocikgeworCQlkZXZfZXJy KHJkZXYtPmRldiwgImZhaWxlZCBpbml0aWFsaXppbmcgVkNFMSByaW5nICglZCkuXG4iLCByKTsK KwkJcmV0dXJuOworCX0KKwlyID0gdmNlX3YxXzBfaW5pdChyZGV2KTsKKwlpZiAocikgeworCQlk ZXZfZXJyKHJkZXYtPmRldiwgImZhaWxlZCBpbml0aWFsaXppbmcgVkNFICglZCkuXG4iLCByKTsK KwkJcmV0dXJuOworCX0KK30KKwogc3RhdGljIGludCBjYXltYW5fc3RhcnR1cChzdHJ1Y3QgcmFk ZW9uX2RldmljZSAqcmRldikKIHsKIAlzdHJ1Y3QgcmFkZW9uX3JpbmcgKnJpbmcgPSAmcmRldi0+ cmluZ1tSQURFT05fUklOR19UWVBFX0dGWF9JTkRFWF07CkBAIC0yMTI0LDI1ICsyMjExLDcgQEAg c3RhdGljIGludCBjYXltYW5fc3RhcnR1cChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKIAl9 CiAKIAljYXltYW5fdXZkX3N0YXJ0KHJkZXYpOwotCi0JaWYgKHJkZXYtPmZhbWlseSA9PSBDSElQ X0FSVUJBKSB7Ci0JCXIgPSByYWRlb25fdmNlX3Jlc3VtZShyZGV2KTsKLQkJaWYgKCFyKQotCQkJ ciA9IHZjZV92MV8wX3Jlc3VtZShyZGV2KTsKLQotCQlpZiAoIXIpCi0JCQlyID0gcmFkZW9uX2Zl bmNlX2RyaXZlcl9zdGFydF9yaW5nKHJkZXYsCi0JCQkJCQkJICAgVE5fUklOR19UWVBFX1ZDRTFf SU5ERVgpOwotCQlpZiAoIXIpCi0JCQlyID0gcmFkZW9uX2ZlbmNlX2RyaXZlcl9zdGFydF9yaW5n KHJkZXYsCi0JCQkJCQkJICAgVE5fUklOR19UWVBFX1ZDRTJfSU5ERVgpOwotCi0JCWlmIChyKSB7 Ci0JCQlkZXZfZXJyKHJkZXYtPmRldiwgIlZDRSBpbml0IGVycm9yICglZCkuXG4iLCByKTsKLQkJ CXJkZXYtPnJpbmdbVE5fUklOR19UWVBFX1ZDRTFfSU5ERVhdLnJpbmdfc2l6ZSA9IDA7Ci0JCQly ZGV2LT5yaW5nW1ROX1JJTkdfVFlQRV9WQ0UyX0lOREVYXS5yaW5nX3NpemUgPSAwOwotCQl9Ci0J fQorCWNheW1hbl92Y2Vfc3RhcnQocmRldik7CiAKIAlyID0gcmFkZW9uX2ZlbmNlX2RyaXZlcl9z dGFydF9yaW5nKHJkZXYsIENBWU1BTl9SSU5HX1RZUEVfQ1AxX0lOREVYKTsKIAlpZiAocikgewpA QCAtMjIxMiwyMSArMjI4MSw3IEBAIHN0YXRpYyBpbnQgY2F5bWFuX3N0YXJ0dXAoc3RydWN0IHJh ZGVvbl9kZXZpY2UgKnJkZXYpCiAJCXJldHVybiByOwogCiAJY2F5bWFuX3V2ZF9yZXN1bWUocmRl dik7Ci0KLQlpZiAocmRldi0+ZmFtaWx5ID09IENISVBfQVJVQkEpIHsKLQkJcmluZyA9ICZyZGV2 LT5yaW5nW1ROX1JJTkdfVFlQRV9WQ0UxX0lOREVYXTsKLQkJaWYgKHJpbmctPnJpbmdfc2l6ZSkK LQkJCXIgPSByYWRlb25fcmluZ19pbml0KHJkZXYsIHJpbmcsIHJpbmctPnJpbmdfc2l6ZSwgMCwg MHgwKTsKLQotCQlyaW5nID0gJnJkZXYtPnJpbmdbVE5fUklOR19UWVBFX1ZDRTJfSU5ERVhdOwot CQlpZiAocmluZy0+cmluZ19zaXplKQotCQkJciA9IHJhZGVvbl9yaW5nX2luaXQocmRldiwgcmlu ZywgcmluZy0+cmluZ19zaXplLCAwLCAweDApOwotCi0JCWlmICghcikKLQkJCXIgPSB2Y2VfdjFf MF9pbml0KHJkZXYpOwotCQlpZiAocikKLQkJCURSTV9FUlJPUigicmFkZW9uOiBmYWlsZWQgaW5p dGlhbGl6aW5nIFZDRSAoJWQpLlxuIiwgcik7Ci0JfQorCWNheW1hbl92Y2VfcmVzdW1lKHJkZXYp OwogCiAJciA9IHJhZGVvbl9pYl9wb29sX2luaXQocmRldik7CiAJaWYgKHIpIHsKQEAgLTIzNzks MTkgKzI0MzQsNyBAQCBpbnQgY2F5bWFuX2luaXQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYp CiAJcjYwMF9yaW5nX2luaXQocmRldiwgcmluZywgNjQgKiAxMDI0KTsKIAogCWNheW1hbl91dmRf aW5pdChyZGV2KTsKLQotCWlmIChyZGV2LT5mYW1pbHkgPT0gQ0hJUF9BUlVCQSkgewotCQlyID0g cmFkZW9uX3ZjZV9pbml0KHJkZXYpOwotCQlpZiAoIXIpIHsKLQkJCXJpbmcgPSAmcmRldi0+cmlu Z1tUTl9SSU5HX1RZUEVfVkNFMV9JTkRFWF07Ci0JCQlyaW5nLT5yaW5nX29iaiA9IE5VTEw7Ci0J CQlyNjAwX3JpbmdfaW5pdChyZGV2LCByaW5nLCA0MDk2KTsKLQotCQkJcmluZyA9ICZyZGV2LT5y aW5nW1ROX1JJTkdfVFlQRV9WQ0UyX0lOREVYXTsKLQkJCXJpbmctPnJpbmdfb2JqID0gTlVMTDsK LQkJCXI2MDBfcmluZ19pbml0KHJkZXYsIHJpbmcsIDQwOTYpOwotCQl9Ci0JfQorCWNheW1hbl92 Y2VfaW5pdChyZGV2KTsKIAogCXJkZXYtPmloLnJpbmdfb2JqID0gTlVMTDsKIAlyNjAwX2loX3Jp bmdfaW5pdChyZGV2LCA2NCAqIDEwMjQpOwpAQCAtMjQ0Niw3ICsyNDg5LDcgQEAgdm9pZCBjYXlt YW5fZmluaShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKIAlyYWRlb25faXJxX2ttc19maW5p KHJkZXYpOwogCXV2ZF92MV8wX2ZpbmkocmRldik7CiAJcmFkZW9uX3V2ZF9maW5pKHJkZXYpOwot CWlmIChyZGV2LT5mYW1pbHkgPT0gQ0hJUF9BUlVCQSkKKwlpZiAocmRldi0+aGFzX3ZjZSkKIAkJ cmFkZW9uX3ZjZV9maW5pKHJkZXYpOwogCWNheW1hbl9wY2llX2dhcnRfZmluaShyZGV2KTsKIAly NjAwX3ZyYW1fc2NyYXRjaF9maW5pKHJkZXYpOwotLSAKMS44LjMuMQoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApk cmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==