From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Paul Subject: [PATCH v3 4/5] drm/nouveau: Use atomic VCPI helpers for MST Date: Tue, 6 Nov 2018 20:21:16 -0500 Message-ID: <20181107012116.17332-5-lyude@redhat.com> References: <20181107012116.17332-1-lyude@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181107012116.17332-1-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: intel-gfx@lists.freedesktop.org Q3VycmVudGx5LCBub3V2ZWF1IHVzZXMgdGhlIHlvbG8gbWV0aG9kIG9mIHNldHRpbmcgdXAgTVNU IGRpc3BsYXlzOiBpdAp1c2VzIHRoZSBvbGQgVkNQSSBoZWxwZXJzIChkcm1fZHBfZmluZF92Y3Bp X3Nsb3RzKCkpIGZvciBjb21wdXRpbmcgdGhlCmRpc3BsYXkgY29uZmlndXJhdGlvbi4gVGhlc2Ug aGVscGVycyBkb24ndCB0YWtlIGNhcmUgdG8gbWFrZSBzdXJlIHRoZXkKdGFrZSBhIHJlZmVyZW5j ZSB0byB0aGUgbXN0YiBwb3J0IHRoYXQgdGhleSdyZSBjaGVja2luZywgYW5kCmFkZGl0aW9uYWxs eSBkb24ndCBhY3R1YWxseSBjaGVjayB3aGV0aGVyIG9yIG5vdCB0aGUgdG9wb2xvZ3kgc3RpbGwg aGFzCmVub3VnaCBiYW5kd2lkdGggdG8gcHJvdmlkZSB0aGUgVkNQSSB0b2tlbnMgcmVxdWlyZWQu CgpTbywgZHJvcCB1c2FnZSBvZiB0aGUgb2xkIGhlbHBlcnMgYW5kIG1vdmUgZW50aXJlbHkgb3Zl ciB0byB0aGUgYXRvbWljCmhlbHBlcnMuCgpTaWduZWQtb2ZmLWJ5OiBMeXVkZSBQYXVsIDxseXVk ZUByZWRoYXQuY29tPgpBY2tlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZnds bC5jaD4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNwbnY1MC9kaXNwLmMgfCA1MCAr KysrKysrKysrKysrKysrKysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNDMgaW5zZXJ0aW9ucygr KSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9k aXNwbnY1MC9kaXNwLmMgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNwbnY1MC9kaXNwLmMK aW5kZXggNmNiYmFlM2Y0MzhiLi4wNDY5ZWY5ZTFhNTQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3AuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVh dS9kaXNwbnY1MC9kaXNwLmMKQEAgLTc0NywxNiArNzQ3LDIyIEBAIG52NTBfbXN0b19hdG9taWNf Y2hlY2soc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAogCQkgICAgICAgc3RydWN0IGRybV9j cnRjX3N0YXRlICpjcnRjX3N0YXRlLAogCQkgICAgICAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3Rh dGUgKmNvbm5fc3RhdGUpCiB7Ci0Jc3RydWN0IG52NTBfbXN0YyAqbXN0YyA9IG52NTBfbXN0Yyhj b25uX3N0YXRlLT5jb25uZWN0b3IpOworCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSA9 IGNydGNfc3RhdGUtPnN0YXRlOworCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IgPSBj b25uX3N0YXRlLT5jb25uZWN0b3I7CisJc3RydWN0IG52NTBfbXN0YyAqbXN0YyA9IG52NTBfbXN0 Yyhjb25uZWN0b3IpOwogCXN0cnVjdCBudjUwX21zdG0gKm1zdG0gPSBtc3RjLT5tc3RtOwotCWlu dCBicHAgPSBjb25uX3N0YXRlLT5jb25uZWN0b3ItPmRpc3BsYXlfaW5mby5icGMgKiAzOworCWlu dCBicHAgPSBjb25uZWN0b3ItPmRpc3BsYXlfaW5mby5icGMgKiAzOwogCWludCBzbG90czsKIAot CW1zdGMtPnBibiA9IGRybV9kcF9jYWxjX3Bibl9tb2RlKGNydGNfc3RhdGUtPmFkanVzdGVkX21v ZGUuY2xvY2ssIGJwcCk7Ci0KLQlzbG90cyA9IGRybV9kcF9maW5kX3ZjcGlfc2xvdHMoJm1zdG0t Pm1nciwgbXN0Yy0+cGJuKTsKLQlpZiAoc2xvdHMgPCAwKQotCQlyZXR1cm4gc2xvdHM7CisJbXN0 Yy0+cGJuID0gZHJtX2RwX2NhbGNfcGJuX21vZGUoY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS5j bG9jaywKKwkJCQkJIGJwcCk7CisJLyogWm9tYmllcyBkb24ndCBuZWVkIFZDUEkgKi8KKwlpZiAo IWRybV9jb25uZWN0b3JfaXNfdW5yZWdpc3RlcmVkKGNvbm5lY3RvcikpIHsKKwkJc2xvdHMgPSBk cm1fZHBfYXRvbWljX2ZpbmRfdmNwaV9zbG90cyhzdGF0ZSwgJm1zdG0tPm1nciwKKwkJCQkJCSAg ICAgIG1zdGMtPnBvcnQsIG1zdGMtPnBibik7CisJCWlmIChzbG90cyA8IDApCisJCQlyZXR1cm4g c2xvdHM7CisJfQogCiAJcmV0dXJuIG52NTBfb3V0cF9hdG9taWNfY2hlY2tfdmlldyhlbmNvZGVy LCBjcnRjX3N0YXRlLCBjb25uX3N0YXRlLAogCQkJCQkgICBtc3RjLT5uYXRpdmUpOwpAQCAtOTIw LDEyICs5MjYsMzggQEAgbnY1MF9tc3RjX2dldF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAq Y29ubmVjdG9yKQogCXJldHVybiByZXQ7CiB9CiAKK3N0YXRpYyBpbnQKK252NTBfbXN0Y19hdG9t aWNfY2hlY2soc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKKwkJICAgICAgIHN0cnVj dCBkcm1fY29ubmVjdG9yX3N0YXRlICpuZXdfY29ubl9zdGF0ZSkKK3sKKwlzdHJ1Y3QgZHJtX2F0 b21pY19zdGF0ZSAqc3RhdGUgPSBuZXdfY29ubl9zdGF0ZS0+c3RhdGU7CisJc3RydWN0IG52NTBf bXN0YyAqbXN0YyA9IG52NTBfbXN0Yyhjb25uZWN0b3IpOworCXN0cnVjdCBkcm1fZHBfbXN0X3Rv cG9sb2d5X21nciAqbWdyID0gJm1zdGMtPm1zdG0tPm1ncjsKKwlzdHJ1Y3QgZHJtX2Nvbm5lY3Rv cl9zdGF0ZSAqb2xkX2Nvbm5fc3RhdGU7CisJc3RydWN0IGRybV9jcnRjICpvbGRfY3J0YzsKKwor CW9sZF9jb25uX3N0YXRlID0gZHJtX2F0b21pY19nZXRfb2xkX2Nvbm5lY3Rvcl9zdGF0ZShzdGF0 ZSwgY29ubmVjdG9yKTsKKwlvbGRfY3J0YyA9IG9sZF9jb25uX3N0YXRlLT5jcnRjOworCisJLyog V2Ugb25seSBuZWVkIHRvIHJlbGVhc2UgVkNQSSBoZXJlIGlmIHdlJ3JlIGdvaW5nIGZyb20gaGF2 aW5nIGEgQ1JUQworCSAqIG9uIHRoaXMgY29ubmVjdG9yLCB0byBub3QgaGF2aW5nIG9uZQorCSAq LworCWlmICghb2xkX2NydGMgfHwgbmV3X2Nvbm5fc3RhdGUtPmNydGMpCisJCXJldHVybiAwOwor CisJLyogUmVsZWFzZSB0aGUgcHJldmlvdXMgVkNQSSBhbGxvY2F0aW9uIHNpbmNlIHRoZSBlbmNv ZGVyJ3MKKwkgKiBhdG9taWNfY2hlY2soKSB3b24ndCBiZSBjYWxsZWQKKwkgKi8KKwlyZXR1cm4g ZHJtX2RwX2F0b21pY19yZWxlYXNlX3ZjcGlfc2xvdHMoc3RhdGUsIG1nciwgbXN0Yy0+cG9ydCk7 Cit9CisKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3MKIG52 NTBfbXN0Y19oZWxwID0gewogCS5nZXRfbW9kZXMgPSBudjUwX21zdGNfZ2V0X21vZGVzLAogCS5t b2RlX3ZhbGlkID0gbnY1MF9tc3RjX21vZGVfdmFsaWQsCiAJLmJlc3RfZW5jb2RlciA9IG52NTBf bXN0Y19iZXN0X2VuY29kZXIsCiAJLmF0b21pY19iZXN0X2VuY29kZXIgPSBudjUwX21zdGNfYXRv bWljX2Jlc3RfZW5jb2RlciwKKwkuYXRvbWljX2NoZWNrID0gbnY1MF9tc3RjX2F0b21pY19jaGVj aywKIH07CiAKIHN0YXRpYyBlbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVzCkBAIC0yMTA5LDYgKzIx NDEsMTAgQEAgbnY1MF9kaXNwX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBz dHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiAJCQlyZXR1cm4gcmV0OwogCX0KIAorCXJl dCA9IGRybV9kcF9tc3RfYXRvbWljX2NoZWNrKHN0YXRlKTsKKwlpZiAocmV0KQorCQlyZXR1cm4g cmV0OworCiAJcmV0dXJuIDA7CiB9CiAKLS0gCjIuMTkuMQoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KTm91dmVhdSBtYWlsaW5nIGxpc3QKTm91dmVhdUBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9ub3V2ZWF1Cg==