From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dhinakaran Pandiyan Subject: [PATCH v2 6/9] drm/dp: Add DP MST helpers to atomically find and release vcpi slots Date: Tue, 24 Jan 2017 15:49:34 -0800 Message-ID: <1485301777-3465-7-git-send-email-dhinakaran.pandiyan@intel.com> References: <1485301777-3465-1-git-send-email-dhinakaran.pandiyan@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1485301777-3465-1-git-send-email-dhinakaran.pandiyan@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 Cc: Alex Deucher , Daniel Vetter , Dhinakaran Pandiyan , dri-devel@lists.freedesktop.org, Ben Skeggs List-Id: dri-devel@lists.freedesktop.org ZHJtX2RwX2F0b21pY19maW5kX3ZjcGlfc2xvdHMoKSBzaG91bGQgYmUgY2FsbGVkIGZyb20gLT5h dG9taWNfY2hlY2soKSB0bwpjaGVjayB0aGVyZSBhcmUgc3VmZmljaWVudCB2Y3BpIHNsb3RzIGZv ciBhIG1vZGUgYW5kIHRvIGFkZCB0aGF0IHRvIHRoZQpzdGF0ZS4gVGhpcyBzaG91bGQgYmUgZm9s bG93ZWQgYnkgYSBjYWxsIHRvIGRybV9kcF9tc3RfYWxsb2NhdGVfdmNwaSgpCmluIC0+YXRvbWlj X2NvbW1pdCgpIHRvIGluaXRpYWxpemUgYSBzdHJ1Y3QgdmNwaSBmb3IgdGhlIHBvcnQuCgpkcm1f ZHBfYXRvbWljX3JlbGVhc2VfdmNwaV9zbG90cygpIHNob3VsZCBiZSBjYWxsZWQgZnJvbQotPmF0 b21pY19jaGVjaygpIHRvIHJlbGVhc2UgYSBwb3J0J3MgdmNwaSBzbG90IGFsbG9jYXRpb24gZnJv bSB0aGUKc3RhdGUuCgpEcml2ZXJzIHRoYXQgZG8gbm90IG1ha2UgdXNlIG9mIHRoaXMgYXRvbWlj IGhlbHBlciBhcmUgZXhwZWN0ZWQgdG8gY2FsbApkcm1fZHBfZmluZF92Y3BpX3Nsb3RzKCkgaW5z dGVhZCBiZWZvcmUgY2FsbGluZwpkcm1fZHBfbXN0X2FsbG9jYXRlX3ZjcGkoKS4KClNpZ25lZC1v ZmYtYnk6IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRoaW5ha2FyYW4ucGFuZGl5YW5AaW50ZWwuY29t PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMgfCA0MyArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9kcm0vZHJtX2RwX21zdF9oZWxw ZXIuaCAgICAgICB8ICA0ICsrKysKIDIgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKQoK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2RwX21zdF90b3BvbG9neS5jCmluZGV4IDI0NzI4NmIuLmFiZWJiNDIg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYwpAQCAtMjUwMCw2ICsyNTAwLDQ5 IEBAIHN0YXRpYyBpbnQgZHJtX2RwX2luaXRfdmNwaShzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9n eV9tZ3IgKm1nciwKIH0KIAogLyoqCisgKiBkcm1fZHBfYXRvbWljX3JlbGVhc2VfdmNwaV9zbG90 cygpIC0gUmVsZWFzZSBhbGxvY2F0ZWQgdmNwaSBzbG90cworICogQHRvcG9sb2d5X3N0YXRlOiBN U1QgdG9wb2xvZ3kgc3RhdGUKKyAqIEBwb3J0OiBwb3J0IHRvIHJlbGVhc2UgdGhlIHZjcGkgc2xv dHMgZm9yCisgKi8KK2ludCBkcm1fZHBfYXRvbWljX3JlbGVhc2VfdmNwaV9zbG90cyhzdHJ1Y3Qg ZHJtX2RwX21zdF90b3BvbG9neV9zdGF0ZSAqdG9wb2xvZ3lfc3RhdGUsCisJCQkJICAgICBzdHJ1 Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0KQoreworCWludCBhbGxvYyA9IGRybV9kcF9tc3RfZ2V0 X3ZjcGlfc2xvdHModG9wb2xvZ3lfc3RhdGUtPm1nciwgcG9ydCk7CisKKwl0b3BvbG9neV9zdGF0 ZS0+YXZhaWxfc2xvdHMgKz0gYWxsb2M7CisJRFJNX0RFQlVHX0tNUygidmNwaSBzbG90cyByZWxl YXNlZD0lZCwgYXZhaWw9JWRcbiIsCisJCQlhbGxvYywgdG9wb2xvZ3lfc3RhdGUtPmF2YWlsX3Ns b3RzKTsKKwlyZXR1cm4gYWxsb2M7Cit9CitFWFBPUlRfU1lNQk9MKGRybV9kcF9hdG9taWNfcmVs ZWFzZV92Y3BpX3Nsb3RzKTsKKworLyoqCisgKiBkcm1fZHBfYXRvbWljX2ZpbmRfdmNwaV9zbG90 cygpIC0gRmluZCBhbmQgYWRkIHZjcGkgc2xvdHMgdG8gdGhlIHN0YXRlCisgKiBAdG9wb2xvZ3lf c3RhdGU6IE1TVCB0b3BvbG9neSBzdGF0ZQorICogQHBvcnQ6IHBvcnQgdG8gZmluZCB2Y3BpIHNs b3RzIGZvcgorICogQHBibjogYmFuZHdpZHRoIHJlcXVpcmVkIGZvciB0aGUgbW9kZSBpbiBQQk4K KyAqLworaW50IGRybV9kcF9hdG9taWNfZmluZF92Y3BpX3Nsb3RzKHN0cnVjdCBkcm1fZHBfbXN0 X3RvcG9sb2d5X3N0YXRlICp0b3BvbG9neV9zdGF0ZSwKKwkJCQkgIHN0cnVjdCBkcm1fZHBfbXN0 X3BvcnQgKnBvcnQsIGludCBwYm4pCit7CisJaW50IG51bV9zbG90cywgY3Vycl9hbGxvYzsKKwlz dHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciA9IHRvcG9sb2d5X3N0YXRlLT5tZ3I7 CisKKwludW1fc2xvdHMgPSBESVZfUk9VTkRfVVAocGJuLCBtZ3ItPnBibl9kaXYpOworCWN1cnJf YWxsb2MgPSBkcm1fZHBfbXN0X2dldF92Y3BpX3Nsb3RzKG1nciwgcG9ydCk7CisJRFJNX0RFQlVH X0tNUygidmNwaSBzbG90cyByZXE9JWQsIGN1cnI9JWQsIGF2YWlsPSVkXG4iLAorCQkJbnVtX3Ns b3RzLCBjdXJyX2FsbG9jLCB0b3BvbG9neV9zdGF0ZS0+YXZhaWxfc2xvdHMpOworCisJaWYgKG51 bV9zbG90cyAtIGN1cnJfYWxsb2MgPiB0b3BvbG9neV9zdGF0ZS0+YXZhaWxfc2xvdHMpCisJCXJl dHVybiAtRU5PU1BDOworCisJdG9wb2xvZ3lfc3RhdGUtPmF2YWlsX3Nsb3RzIC09IChudW1fc2xv dHMgLSBjdXJyX2FsbG9jKTsKKwlEUk1fREVCVUdfS01TKCJ2Y3BpIHNsb3RzIGF2YWlsPSVkIiwg dG9wb2xvZ3lfc3RhdGUtPmF2YWlsX3Nsb3RzKTsKKwlyZXR1cm4gbnVtX3Nsb3RzOworfQorRVhQ T1JUX1NZTUJPTChkcm1fZHBfYXRvbWljX2ZpbmRfdmNwaV9zbG90cyk7CisKKy8qKgogICogZHJt X2RwX21zdF9hbGxvY2F0ZV92Y3BpKCkgLSBBbGxvY2F0ZSBhIHZpcnR1YWwgY2hhbm5lbAogICog QG1ncjogbWFuYWdlciBmb3IgdGhpcyBwb3J0CiAgKiBAcG9ydDogcG9ydCB0byBhbGxvY2F0ZSBh IHZpcnR1YWwgY2hhbm5lbCBmb3IuCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fZHBfbXN0 X2hlbHBlci5oIGIvaW5jbHVkZS9kcm0vZHJtX2RwX21zdF9oZWxwZXIuaAppbmRleCA4Y2JkYmZh Li40ZDYxMjY5IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fZHBfbXN0X2hlbHBlci5oCisr KyBiL2luY2x1ZGUvZHJtL2RybV9kcF9tc3RfaGVscGVyLmgKQEAgLTYxNSw1ICs2MTUsOSBAQCB2 b2lkIGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyX3N1c3BlbmQoc3RydWN0IGRybV9kcF9tc3RfdG9w b2xvZ3lfbWdyICptZ3IpOwogaW50IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyX3Jlc3VtZShzdHJ1 Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1ncik7CiBzdHJ1Y3QgZHJtX2RwX21zdF90b3Bv bG9neV9zdGF0ZSAqZHJtX2F0b21pY19nZXRfbXN0X3RvcG9sb2d5X3N0YXRlKHN0cnVjdCBkcm1f YXRvbWljX3N0YXRlICpzdGF0ZSwKIAkJCQkJCQkJICAgIHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9s b2d5X21nciAqbWdyKTsKK2ludCBkcm1fZHBfYXRvbWljX2ZpbmRfdmNwaV9zbG90cyhzdHJ1Y3Qg ZHJtX2RwX21zdF90b3BvbG9neV9zdGF0ZSAqdG9wb2xvZ3lfc3RhdGUsCisJCQkJICBzdHJ1Y3Qg ZHJtX2RwX21zdF9wb3J0ICpwb3J0LCBpbnQgcGJuKTsKK2ludCBkcm1fZHBfYXRvbWljX3JlbGVh c2VfdmNwaV9zbG90cyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9zdGF0ZSAqdG9wb2xvZ3lf c3RhdGUsCisJCQkJICAgICBzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0KTsKIAogI2VuZGlm Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==