From mboxrd@z Thu Jan 1 00:00:00 1970 From: alexdeucher@gmail.com Subject: [PATCH 2/3] drm/radeon/kms: Add support for multi-ring sync in CS ioctl (v2) Date: Thu, 5 Jan 2012 22:11:06 -0500 Message-ID: <1325819467-2216-2-git-send-email-alexdeucher@gmail.com> References: <1325819467-2216-1-git-send-email-alexdeucher@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qy0-f177.google.com (mail-qy0-f177.google.com [209.85.216.177]) by gabe.freedesktop.org (Postfix) with ESMTP id 39A9BA0A39 for ; Thu, 5 Jan 2012 19:11:18 -0800 (PST) Received: by mail-qy0-f177.google.com with SMTP id c1so722468qcs.36 for ; Thu, 05 Jan 2012 19:11:18 -0800 (PST) In-Reply-To: <1325819467-2216-1-git-send-email-alexdeucher@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: airlied@gmail.com, dri-devel@lists.freedesktop.org Cc: Alex Deucher , =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org RnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8ZGVhdGhzaW1wbGVAdm9kYWZvbmUuZGU+CgpVc2Ugc2Vt YXBob3JlcyB0byBzeW5jIGJ1ZmZlcnMgYWNyb3NzIHJpbmdzIGluIHRoZSBDUwppb2N0bC4gIEFk ZCBhIHJlbG9jIGZsYWcgdG8gYWxsb3cgdXNlcnNwYWNlIHRvIHNraXAKc3luYyBmb3IgYnVmZmVy cy4KCmFnZDVmOiBwb3J0IHRvIGxhdGVzdCBDUyBpb2N0bCBjaGFuZ2VzLgoKdjI6IGFkZCByaW5n IGxvY2svdW5sb2NrIHRvIG1ha2Ugc3VyZSBjaGFuZ2VzIGhpdCB0aGUgcmluZy4KClNpZ25lZC1v ZmYtYnk6IENocmlzdGlhbiBLw7ZuaWcgPGRlYXRoc2ltcGxlQHZvZGFmb25lLmRlPgpTaWduZWQt b2ZmLWJ5OiBBbGV4IERldWNoZXIgPGFsZXhhbmRlci5kZXVjaGVyQGFtZC5jb20+Ci0tLQogZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaCAgICAgICB8ICAgIDIgKwogZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yYWRlb25fY3MuYyAgICB8ICAgNDUgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9mZW5jZS5jIHwgICAgMyAr KwogaW5jbHVkZS9kcm0vcmFkZW9uX2RybS5oICAgICAgICAgICAgICB8ICAgIDMgKysKIDQgZmls ZXMgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVv bi9yYWRlb24uaAppbmRleCA1ZTM1NDIzLi4zNDgzZWQ5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vcmFkZW9uL3JhZGVvbi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9u LmgKQEAgLTIzMCw2ICsyMzAsNyBAQCBzdHJ1Y3QgcmFkZW9uX2ZlbmNlIHsKIAlib29sCQkJCXNp Z25hbGVkOwogCS8qIFJCLCBETUEsIGV0Yy4gKi8KIAlpbnQJCQkJcmluZzsKKwlzdHJ1Y3QgcmFk ZW9uX3NlbWFwaG9yZQkJKnNlbWFwaG9yZTsKIH07CiAKIGludCByYWRlb25fZmVuY2VfZHJpdmVy X3N0YXJ0X3Jpbmcoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsIGludCByaW5nKTsKQEAgLTc4 OSw2ICs3OTAsNyBAQCBzdHJ1Y3QgcmFkZW9uX2NzX3BhcnNlciB7CiAJc3RydWN0IHJhZGVvbl9j c19yZWxvYwkqcmVsb2NzOwogCXN0cnVjdCByYWRlb25fY3NfcmVsb2MJKipyZWxvY3NfcHRyOwog CXN0cnVjdCBsaXN0X2hlYWQJdmFsaWRhdGVkOworCWJvb2wJCQlzeW5jX3RvX3JpbmdbUkFERU9O X05VTV9SSU5HU107CiAJLyogaW5kaWNlcyBvZiB2YXJpb3VzIGNodW5rcyAqLwogCWludAkJCWNo dW5rX2liX2lkeDsKIAlpbnQJCQljaHVua19yZWxvY3NfaWR4OwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fY3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFk ZW9uX2NzLmMKaW5kZXggNGQ1OTU0MC4uMTdhZjBlOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yYWRlb25fY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVv bl9jcy5jCkBAIC04NCw2ICs4NCwxMyBAQCBpbnQgcmFkZW9uX2NzX3BhcnNlcl9yZWxvY3Moc3Ry dWN0IHJhZGVvbl9jc19wYXJzZXIgKnApCiAJCQlwLT5yZWxvY3NbaV0uZmxhZ3MgPSByLT5mbGFn czsKIAkJCXJhZGVvbl9ib19saXN0X2FkZF9vYmplY3QoJnAtPnJlbG9jc1tpXS5sb2JqLAogCQkJ CQkJICAmcC0+dmFsaWRhdGVkKTsKKworCQkJaWYgKHAtPnJlbG9jc1tpXS5yb2JqLT50Ym8uc3lu Y19vYmogJiYgIShyLT5mbGFncyAmIFJBREVPTl9SRUxPQ19ET05UX1NZTkMpKSB7CisJCQkJc3Ry dWN0IHJhZGVvbl9mZW5jZSAqZmVuY2UgPSBwLT5yZWxvY3NbaV0ucm9iai0+dGJvLnN5bmNfb2Jq OworCQkJCWlmICghcmFkZW9uX2ZlbmNlX3NpZ25hbGVkKGZlbmNlKSkgeworCQkJCQlwLT5zeW5j X3RvX3JpbmdbZmVuY2UtPnJpbmddID0gdHJ1ZTsKKwkJCQl9CisJCQl9CiAJCX0gZWxzZQogCQkJ cC0+cmVsb2NzW2ldLmhhbmRsZSA9IDA7CiAJfQpAQCAtMTA5LDYgKzExNiwzNiBAQCBzdGF0aWMg aW50IHJhZGVvbl9jc19nZXRfcmluZyhzdHJ1Y3QgcmFkZW9uX2NzX3BhcnNlciAqcCwgdTMyIHJp bmcsIHMzMiBwcmlvcml0eQogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IHJhZGVvbl9jc19z eW5jX3JpbmdzKHN0cnVjdCByYWRlb25fY3NfcGFyc2VyICpwKQoreworCWludCBpLCByOworCisJ Zm9yIChpID0gMDsgaSA8IFJBREVPTl9OVU1fUklOR1M7ICsraSkgeworCQkvKiBubyBuZWVkIHRv IHN5bmMgdG8gb3VyIG93biBvciB1bnVzZWQgcmluZ3MgKi8KKwkJaWYgKGkgPT0gcC0+cmluZyB8 fCAhcC0+c3luY190b19yaW5nW2ldIHx8ICFwLT5yZGV2LT5yaW5nW2ldLnJlYWR5KQorCQkJY29u dGludWU7CisKKwkJaWYgKCFwLT5pYi0+ZmVuY2UtPnNlbWFwaG9yZSkgeworCQkJciA9IHJhZGVv bl9zZW1hcGhvcmVfY3JlYXRlKHAtPnJkZXYsICZwLT5pYi0+ZmVuY2UtPnNlbWFwaG9yZSk7CisJ CQlpZiAocikKKwkJCQlyZXR1cm4gcjsKKwkJfQorCisJCXIgPSByYWRlb25fcmluZ19sb2NrKHAt PnJkZXYsICZwLT5yZGV2LT5yaW5nW2ldLCAzKTsKKwkJaWYgKHIpCisJCQlyZXR1cm4gcjsKKwkJ cmFkZW9uX3NlbWFwaG9yZV9lbWl0X3NpZ25hbChwLT5yZGV2LCBpLCBwLT5pYi0+ZmVuY2UtPnNl bWFwaG9yZSk7CisJCXJhZGVvbl9yaW5nX3VubG9ja19jb21taXQocC0+cmRldiwgJnAtPnJkZXYt PnJpbmdbaV0pOworCisJCXIgPSByYWRlb25fcmluZ19sb2NrKHAtPnJkZXYsICZwLT5yZGV2LT5y aW5nW3AtPnJpbmddLCAzKTsKKwkJaWYgKHIpCisJCQlyZXR1cm4gcjsKKwkJcmFkZW9uX3NlbWFw aG9yZV9lbWl0X3dhaXQocC0+cmRldiwgcC0+cmluZywgcC0+aWItPmZlbmNlLT5zZW1hcGhvcmUp OworCQlyYWRlb25fcmluZ191bmxvY2tfY29tbWl0KHAtPnJkZXYsICZwLT5yZGV2LT5yaW5nW3At PnJpbmddKTsKKwl9CisJcmV0dXJuIDA7Cit9CisKIGludCByYWRlb25fY3NfcGFyc2VyX2luaXQo c3RydWN0IHJhZGVvbl9jc19wYXJzZXIgKnAsIHZvaWQgKmRhdGEpCiB7CiAJc3RydWN0IGRybV9y YWRlb25fY3MgKmNzID0gZGF0YTsKQEAgLTMxNCw2ICszNTEsMTAgQEAgc3RhdGljIGludCByYWRl b25fY3NfaWJfY2h1bmsoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsCiAJCURSTV9FUlJPUigi SW52YWxpZCBjb21tYW5kIHN0cmVhbSAhXG4iKTsKIAkJcmV0dXJuIHI7CiAJfQorCXIgPSByYWRl b25fY3Nfc3luY19yaW5ncyhwYXJzZXIpOworCWlmIChyKSB7CisJCURSTV9FUlJPUigiRmFpbGVk IHRvIHN5bmNocm9uaXplIHJpbmdzICFcbiIpOworCX0KIAlwYXJzZXItPmliLT52bV9pZCA9IDA7 CiAJciA9IHJhZGVvbl9pYl9zY2hlZHVsZShyZGV2LCBwYXJzZXItPmliKTsKIAlpZiAocikgewpA QCAtMzg0LDYgKzQyNSwxMCBAQCBzdGF0aWMgaW50IHJhZGVvbl9jc19pYl92bV9jaHVuayhzdHJ1 Y3QgcmFkZW9uX2RldmljZSAqcmRldiwKIAlpZiAocikgewogCQlnb3RvIG91dDsKIAl9CisJciA9 IHJhZGVvbl9jc19zeW5jX3JpbmdzKHBhcnNlcik7CisJaWYgKHIpIHsKKwkJRFJNX0VSUk9SKCJG YWlsZWQgdG8gc3luY2hyb25pemUgcmluZ3MgIVxuIik7CisJfQogCXBhcnNlci0+aWItPnZtX2lk ID0gdm0tPmlkOwogCS8qIGliIHBvb2wgaXMgYmluZCBhdCAwIGluIHZpcnR1YWwgYWRkcmVzcyBz cGFjZSB0byBncHVfYWRkciBpcyB0aGUKIAkgKiBvZmZzZXQgaW5zaWRlIHRoZSBwb29sIGJvCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9mZW5jZS5jIGIvZHJpdmVy cy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZmVuY2UuYwppbmRleCBhZTllM2RhLi42NGVhM2RkIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9mZW5jZS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2ZlbmNlLmMKQEAgLTE1Myw2ICsxNTMsOCBAQCBz dGF0aWMgdm9pZCByYWRlb25fZmVuY2VfZGVzdHJveShzdHJ1Y3Qga3JlZiAqa3JlZikKIAlsaXN0 X2RlbCgmZmVuY2UtPmxpc3QpOwogCWZlbmNlLT5lbWl0dGVkID0gZmFsc2U7CiAJd3JpdGVfdW5s b2NrX2lycXJlc3RvcmUoJmZlbmNlLT5yZGV2LT5mZW5jZV9sb2NrLCBpcnFfZmxhZ3MpOworCWlm IChmZW5jZS0+c2VtYXBob3JlKQorCQlyYWRlb25fc2VtYXBob3JlX2ZyZWUoZmVuY2UtPnJkZXYs IGZlbmNlLT5zZW1hcGhvcmUpOwogCWtmcmVlKGZlbmNlKTsKIH0KIApAQCAtMTcyLDYgKzE3NCw3 IEBAIGludCByYWRlb25fZmVuY2VfY3JlYXRlKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAog CSgqZmVuY2UpLT5zaWduYWxlZCA9IGZhbHNlOwogCSgqZmVuY2UpLT5zZXEgPSAwOwogCSgqZmVu Y2UpLT5yaW5nID0gcmluZzsKKwkoKmZlbmNlKS0+c2VtYXBob3JlID0gTlVMTDsKIAlJTklUX0xJ U1RfSEVBRCgmKCpmZW5jZSktPmxpc3QpOwogCiAJd3JpdGVfbG9ja19pcnFzYXZlKCZyZGV2LT5m ZW5jZV9sb2NrLCBpcnFfZmxhZ3MpOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vcmFkZW9uX2Ry bS5oIGIvaW5jbHVkZS9kcm0vcmFkZW9uX2RybS5oCmluZGV4IGQ3MDc5ZjQuLjJhODA3YTUgMTAw NjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL3JhZGVvbl9kcm0uaAorKysgYi9pbmNsdWRlL2RybS9yYWRl b25fZHJtLmgKQEAgLTkxNyw2ICs5MTcsOSBAQCBzdHJ1Y3QgZHJtX3JhZGVvbl9jc19jaHVuayB7 CiAJdWludDY0X3QJCWNodW5rX2RhdGE7CiB9OwogCisvKiBkcm1fcmFkZW9uX2NzX3JlbG9jLmZs YWdzICovCisjZGVmaW5lIFJBREVPTl9SRUxPQ19ET05UX1NZTkMJCTB4MDEKKwogc3RydWN0IGRy bV9yYWRlb25fY3NfcmVsb2MgewogCXVpbnQzMl90CQloYW5kbGU7CiAJdWludDMyX3QJCXJlYWRf ZG9tYWluczsKLS0gCjEuNy4zLjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v ZHJpLWRldmVsCg==