From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: [PATCH 5/9] drm/msm: Shadow current pointer in the ring until command is complete Date: Fri, 20 Oct 2017 11:06:59 -0600 Message-ID: <1508519223-10631-6-git-send-email-jcrouse@codeaurora.org> References: <1508519223-10631-1-git-send-email-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1508519223-10631-1-git-send-email-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org QWRkIGEgc2hhZG93IHBvaW50ZXIgdG8gdHJhY2sgdGhlIGN1cnJlbnQgY29tbWFuZCBiZWluZyB3 cml0dGVuIGludG8KdGhlIHJpbmcuIERvbid0IGNvbW1pdCBpdCBhcyAnY3VyJyB1bnRpbCB0aGUg Y29tbWFuZCBpcyBzdWJtaXR0ZWQuCkJlY2F1c2UgJ2N1cicgaXMgdXNlZCB0byBjb25zdHJ1Y3Qg dGhlIHNvZnR3YXJlIGNvcHkgb2YgdGhlIHdwdHIgdGhpcwplbnN1cmVzIHRoYXQgc29tZWJvZHkg cGVla2luZyBpbiBvbiB0aGUgcmluZyBkb2Vzbid0IGFzc3VtZSB0aGF0IGEKY29tbWFuZCBpcyBp bmZsaWdodCB3aGlsZSBpdCBpcyBiZWluZyB3cml0dGVuLiBUaGlzIGlzbid0IGEgaHVnZSBkZWFs CndpdGggYSBzaW5nbGUgcmluZyAodGhvdWdoIHRlY2huaWNhbGx5IHRoZSBoYW5nY2hlY2sgY291 bGQgYXNzdW1lCnRoZSBzeXN0ZW0gaXMgcHJlbWF0dXJlbHkgYnVzeSB3aGVuIGl0IGlzbid0KSBi dXQgaXQgd2lsbCBiZSByYXRoZXIKaW1wb3J0YW50IGZvciBwcmVlbXB0aW9uIHdoZXJlIHRoZSBk ZWNpc2lvbiB0byBwcmVlbXB0IGlzIGJhc2VkCm9uIGEgbm9uLWVtcHR5IHJpbmdidWZmZXIuIFdp dGhvdXQgYSBzaGFkb3cgYW4gYWdncmVzc2l2ZSBwcmVlbXB0aW9uCnNjaGVtZSBjb3VsZCBhc3N1 bWUgdGhhdCB0aGUgcmluZ2J1ZmZlciBpcyBub24gZW1wdHkgYW5kIHN3aXRjaCB0byBpdApiZWZv cmUgdGhlIENQVSBpcyBkb25lIHdyaXRpbmcgdGhlIGNvbW1hbmQgYW5kIGJvb20uCgpFdmVuIHRo b3VnaCBwcmVlbXB0aW9uIHdvbid0IGJlIHN1cHBvcnRlZCBmb3IgYWxsIHRhcmdldHMgYmVjYXVz ZSBvZgp0aGUgd2F5IHRoZSBjb2RlIGlzIG9yZ2FuaXplZCBpdCBpcyBzaW1wbGVyIHRvIG1ha2Ug dGhpcyBnZW5lcmljIGZvcgphbGwgdGFyZ2V0cy4gVGhlIGV4dHJhIGxvYWQgZm9yIG5vbi1wcmVl bXB0aW9uIHRhcmdldHMgc2hvdWxkIGJlCm1pbmltYWwuCgpTaWduZWQtb2ZmLWJ5OiBKb3JkYW4g Q3JvdXNlIDxqY3JvdXNlQGNvZGVhdXJvcmEub3JnPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20v YWRyZW5vL2FkcmVub19ncHUuYyB8ICA5ICsrKysrKystLQogZHJpdmVycy9ncHUvZHJtL21zbS9t c21fcmluZ2J1ZmZlci5jICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL21zbS9tc21fcmluZ2J1 ZmZlci5oICAgIHwgMTIgKysrKysrKystLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlv bnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9h ZHJlbm8vYWRyZW5vX2dwdS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dw dS5jCmluZGV4IGNmOTE4NDAuLjc3ZWFhNDYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9t c20vYWRyZW5vL2FkcmVub19ncHUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9h ZHJlbm9fZ3B1LmMKQEAgLTg5LDYgKzg5LDcgQEAgaW50IGFkcmVub19od19pbml0KHN0cnVjdCBt c21fZ3B1ICpncHUpCiAJCX0KIAogCQlyaW5nLT5jdXIgPSByaW5nLT5zdGFydDsKKwkJcmluZy0+ bmV4dCA9IHJpbmctPnN0YXJ0OwogCiAJCS8qIHJlc2V0IGNvbXBsZXRlZCBmZW5jZSBzZXFubzog Ki8KIAkJcmluZy0+bWVtcHRycy0+ZmVuY2UgPSByaW5nLT5zZXFubzsKQEAgLTIzMywxMiArMjM0 LDE1IEBAIHZvaWQgYWRyZW5vX2ZsdXNoKHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21f cmluZ2J1ZmZlciAqcmluZykKIAlzdHJ1Y3QgYWRyZW5vX2dwdSAqYWRyZW5vX2dwdSA9IHRvX2Fk cmVub19ncHUoZ3B1KTsKIAl1aW50MzJfdCB3cHRyOwogCisJLyogQ29weSB0aGUgc2hhZG93IHRv IHRoZSBhY3R1YWwgcmVnaXN0ZXIgKi8KKwlyaW5nLT5jdXIgPSByaW5nLT5uZXh0OworCiAJLyoK IAkgKiBNYXNrIHdwdHIgdmFsdWUgdGhhdCB3ZSBjYWxjdWxhdGUgdG8gZml0IGluIHRoZSBIVyBy YW5nZS4gVGhpcyBpcwogCSAqIHRvIGFjY291bnQgZm9yIHRoZSBwb3NzaWJpbGl0eSB0aGF0IHRo ZSBsYXN0IGNvbW1hbmQgZml0IGV4YWN0bHkgaW50bwogCSAqIHRoZSByaW5nYnVmZmVyIGFuZCBy Yi0+bmV4dCBoYXNuJ3Qgd3JhcHBlZCB0byB6ZXJvIHlldAogCSAqLwotCXdwdHIgPSBnZXRfd3B0 cihyaW5nKSAlIChNU01fR1BVX1JJTkdCVUZGRVJfU1ogPj4gMik7CisJd3B0ciA9IChyaW5nLT5j dXIgLSByaW5nLT5zdGFydCkgJSAoTVNNX0dQVV9SSU5HQlVGRkVSX1NaID4+IDIpOwogCiAJLyog ZW5zdXJlIHdyaXRlcyB0byByaW5nYnVmZmVyIGhhdmUgaGl0IHN5c3RlbSBtZW1vcnk6ICovCiAJ bWIoKTsKQEAgLTM1MCw3ICszNTQsOCBAQCBzdGF0aWMgdWludDMyX3QgcmluZ19mcmVld29yZHMo c3RydWN0IG1zbV9yaW5nYnVmZmVyICpyaW5nKQogewogCXN0cnVjdCBhZHJlbm9fZ3B1ICphZHJl bm9fZ3B1ID0gdG9fYWRyZW5vX2dwdShyaW5nLT5ncHUpOwogCXVpbnQzMl90IHNpemUgPSBNU01f R1BVX1JJTkdCVUZGRVJfU1ogPj4gMjsKLQl1aW50MzJfdCB3cHRyID0gZ2V0X3dwdHIocmluZyk7 CisJLyogVXNlIHJpbmctPm5leHQgdG8gY2FsY3VsYXRlIGZyZWUgc2l6ZSAqLworCXVpbnQzMl90 IHdwdHIgPSByaW5nLT5uZXh0IC0gcmluZy0+c3RhcnQ7CiAJdWludDMyX3QgcnB0ciA9IGdldF9y cHRyKGFkcmVub19ncHUsIHJpbmcpOwogCXJldHVybiAocnB0ciArIChzaXplIC0gMSkgLSB3cHRy KSAlIHNpemU7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVm ZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmMKaW5kZXggZmViZjI1 NDEuLjYwMTU5NTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX3JpbmdidWZm ZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmMKQEAgLTQ2LDYg KzQ2LDcgQEAgc3RydWN0IG1zbV9yaW5nYnVmZmVyICptc21fcmluZ2J1ZmZlcl9uZXcoc3RydWN0 IG1zbV9ncHUgKmdwdSwgaW50IGlkLAogCQlnb3RvIGZhaWw7CiAJfQogCXJpbmctPmVuZCAgID0g cmluZy0+c3RhcnQgKyAoTVNNX0dQVV9SSU5HQlVGRkVSX1NaID4+IDIpOworCXJpbmctPm5leHQg ID0gcmluZy0+c3RhcnQ7CiAJcmluZy0+Y3VyICAgPSByaW5nLT5zdGFydDsKIAogCXJpbmctPm1l bXB0cnMgPSBtZW1wdHJzOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fcmlu Z2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fcmluZ2J1ZmZlci5oCmluZGV4IGVj NDQyNTEuLjM3NDk3NjQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX3Jpbmdi dWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmgKQEAgLTMy LDcgKzMyLDcgQEAgc3RydWN0IG1zbV9yaW5nYnVmZmVyIHsKIAlzdHJ1Y3QgbXNtX2dwdSAqZ3B1 OwogCWludCBpZDsKIAlzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKmJvOwotCXVpbnQzMl90ICpzdGFy dCwgKmVuZCwgKmN1cjsKKwl1aW50MzJfdCAqc3RhcnQsICplbmQsICpjdXIsICpuZXh0OwogCXN0 cnVjdCBsaXN0X2hlYWQgc3VibWl0czsKIAl1aW50NjRfdCBpb3ZhOwogCXVpbnQzMl90IHNlcW5v OwpAQCAtNTEsOSArNTEsMTMgQEAgc3RydWN0IG1zbV9yaW5nYnVmZmVyICptc21fcmluZ2J1ZmZl cl9uZXcoc3RydWN0IG1zbV9ncHUgKmdwdSwgaW50IGlkLAogc3RhdGljIGlubGluZSB2b2lkCiBP VVRfUklORyhzdHJ1Y3QgbXNtX3JpbmdidWZmZXIgKnJpbmcsIHVpbnQzMl90IGRhdGEpCiB7Ci0J aWYgKHJpbmctPmN1ciA9PSByaW5nLT5lbmQpCi0JCXJpbmctPmN1ciA9IHJpbmctPnN0YXJ0Owot CSoocmluZy0+Y3VyKyspID0gZGF0YTsKKwkvKgorCSAqIHJpbmctPm5leHQgcG9pbnRzIHRvIHRo ZSBjdXJyZW50IGNvbW1hbmQgYmVpbmcgd3JpdHRlbiAtIGl0IHdvbid0IGJlCisJICogY29tbWl0 dGVkIGFzIHJpbmctPmN1ciB1bnRpbCB0aGUgZmx1c2gKKwkgKi8KKwlpZiAocmluZy0+bmV4dCA9 PSByaW5nLT5lbmQpCisJCXJpbmctPm5leHQgPSByaW5nLT5zdGFydDsKKwkqKHJpbmctPm5leHQr KykgPSBkYXRhOwogfQogCiAjZW5kaWYgLyogX19NU01fUklOR0JVRkZFUl9IX18gKi8KLS0gCjEu OS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpGcmVl ZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9mcmVlZHJlbm8K