From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Tyshchenko Subject: [RFC PATCH 25/31] xen/arm: Use non-blocking mode for SCPI protocol Date: Thu, 9 Nov 2017 19:10:15 +0200 Message-ID: <1510247421-24094-26-git-send-email-olekstysh@gmail.com> References: <1510247421-24094-1-git-send-email-olekstysh@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eCqM3-0004hq-6A for xen-devel@lists.xenproject.org; Thu, 09 Nov 2017 17:11:03 +0000 Received: by mail-lf0-f66.google.com with SMTP id a2so8033041lfh.11 for ; Thu, 09 Nov 2017 09:11:00 -0800 (PST) In-Reply-To: <1510247421-24094-1-git-send-email-olekstysh@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall List-Id: xen-devel@lists.xenproject.org RnJvbTogT2xla3NhbmRyIFR5c2hjaGVua28gPG9sZWtzYW5kcl90eXNoY2hlbmtvQGVwYW0uY29t PgoKRG9uJ3QgYmxvY2sgdW50aWwgZGF0YSBpcyB0cmFuc21pdHRlZC4KQXMgd2UgYXJlIGxpbWl0 ZWQgdG8gdXNlIG9ubHkgdHdvIG1ldGhvZHMgVFhET05FX0JZX0lSUSBhbmQgVFhET05FX0JZX0FD SywKdGhlcmUgYXJlIHR3byBwb3NzaWJsZSBzY2VuYXJpbzoKLSBJZiB0aGUgbWFpbGJveCBjb250 cm9sbGVyIGhhcyBUWC1kb25lIGlycSBpdCBkZWZpbml0ZWx5IGtub3dzIHdoZW4KICB0cmFuc21p dHRlZCBkYXRhIGhhcyBiZWVuIHNlbnQgYW5kIGl0IGlzIHJlc3BvbnNpYmxlIGZvciBjYWxsaW5n CiAgbWJveF9jaGFuX3R4ZG9uZSgpIHRvIHNpZ25hbCBmcmFtZXdvcmsgYWJvdXQgVFgtZG9uZS4K LSBJZiBjb250cm9sbGVyIGNhbid0IGdlbmVyYXRlIFRYLURvbmUgaXJxIHRoZSBjbGllbnQgaGFz IHRvIHNpZ25hbAogIFRYLWRvbmUgYnkgaXRzZWxmLgoKU28sIGluIGNhc2Ugb2YgIkFSTSBTTUMg bWFpbGJveCIgd2UgZXhwbGljaXRseSB0aWNrIHRoZSBUWCBzdGF0ZSBtYWNoaW5lCmJ5IGNhbGxp bmcgbWJveF9jbGllbnRfdHhkb25lKCkuCgpTaWduZWQtb2ZmLWJ5OiBPbGVrc2FuZHIgVHlzaGNo ZW5rbyA8b2xla3NhbmRyX3R5c2hjaGVua29AZXBhbS5jb20+CkNDOiBTdGVmYW5vIFN0YWJlbGxp bmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+CkNDOiBKdWxpZW4gR3JhbGwgPGp1bGllbi5ncmFs bEBsaW5hcm8ub3JnPgotLS0KIHhlbi9hcmNoL2FybS9jcHVmcmVxL2FybV9zY3BpLmMgfCAzMCAr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyMyBpbnNlcnRp b25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9jcHVmcmVx L2FybV9zY3BpLmMgYi94ZW4vYXJjaC9hcm0vY3B1ZnJlcS9hcm1fc2NwaS5jCmluZGV4IDU1M2E1 MTYuLjUxYTk3NDIgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9jcHVmcmVxL2FybV9zY3BpLmMK KysrIGIveGVuL2FyY2gvYXJtL2NwdWZyZXEvYXJtX3NjcGkuYwpAQCAtNTMwLDcgKzUzMCw3IEBA IHN0YXRpYyB2b2lkIHB1dF9zY3BpX3hmZXIoc3RydWN0IHNjcGlfeGZlciAqdCwgc3RydWN0IHNj cGlfY2hhbiAqY2gpCiBzdGF0aWMgaW50IHNjcGlfc2VuZF9tZXNzYWdlKHU4IGlkeCwgdm9pZCAq dHhfYnVmLCB1bnNpZ25lZCBpbnQgdHhfbGVuLAogCQkJICAgICB2b2lkICpyeF9idWYsIHVuc2ln bmVkIGludCByeF9sZW4pCiB7Ci0JaW50IHJldDsKKwlpbnQgcmV0LCByZXQyOwogCXU4IGNoYW47 CiAJdTggY21kOwogCXN0cnVjdCBzY3BpX3hmZXIgKm1zZzsKQEAgLTU2NiwyMSArNTY2LDM3IEBA IHN0YXRpYyBpbnQgc2NwaV9zZW5kX21lc3NhZ2UodTggaWR4LCB2b2lkICp0eF9idWYsIHVuc2ln bmVkIGludCB0eF9sZW4sCiAJcmVpbml0X2NvbXBsZXRpb24oJm1zZy0+ZG9uZSk7CiAKIAlyZXQg PSBtYm94X3NlbmRfbWVzc2FnZShzY3BpX2NoYW4tPmNoYW4sIG1zZyk7Ci0JaWYgKHJldCA8IDAg fHwgIXJ4X2J1ZikKKwlpZiAocmV0IDwgMCB8fCAhcnhfYnVmKSB7CisJCS8qIG1ib3hfc2VuZF9t ZXNzYWdlIHJldHVybnMgbm9uLW5lZ2F0aXZlIHZhbHVlIG9uIHN1Y2Nlc3MgKi8KKwkJcmV0MiA9 IHJldCA8IDAgPyByZXQgOiAwOwogCQlnb3RvIG91dDsKKwl9CiAKIAlpZiAoIXdhaXRfZm9yX2Nv bXBsZXRpb25fdGltZW91dCgmbXNnLT5kb25lLCBNQVhfUlhfVElNRU9VVCkpCiAJCXJldCA9IC1F VElNRURPVVQ7CiAJZWxzZQogCQkvKiBmaXJzdCBzdGF0dXMgd29yZCAqLwogCQlyZXQgPSBtc2ct PnN0YXR1czsKKworCS8qIFNDUEkgZXJyb3IgY29kZXMgPiAwLCB0cmFuc2xhdGUgdGhlbSB0byBM aW51eCBzY2FsZSAqLworCXJldDIgPSByZXQgPiAwID8gc2NwaV90b19saW51eF9lcnJubyhyZXQp IDogcmV0OworCisJLyoKKwkgKiBJZiB0aGUgbWFpbGJveCBjb250cm9sbGVyIGhhcyBUWC1kb25l IGlycSBpdCBkZWZpbml0ZWx5IGtub3dzIHdoZW4KKwkgKiB0cmFuc21pdHRlZCBkYXRhIGhhcyBi ZWVuIHNlbnQgYW5kIGl0IGlzIHJlc3BvbnNpYmxlIGZvciBjYWxsaW5nCisJICogbWJveF9jaGFu X3R4ZG9uZSgpIHRvIHNpZ25hbCBmcmFtZXdvcmsgYWJvdXQgVFgtZG9uZS4KKwkgKiBJZiBjb250 cm9sbGVyIGNhbid0IGdlbmVyYXRlIFRYLURvbmUgaXJxIHRoZSBjbGllbnQgaGFzIHRvIHNpZ25h bAorCSAqIFRYLWRvbmUgYnkgaXRzZWxmLgorCSAqLworCWlmICghc2NwaV9jaGFuLT5jaGFuLT5t Ym94LT50eGRvbmVfaXJxKQorCQltYm94X2NsaWVudF90eGRvbmUoc2NwaV9jaGFuLT5jaGFuLCBy ZXQyKTsKKwogb3V0OgogCWlmIChyZXQgPCAwICYmIHJ4X2J1ZikgLyogcmVtb3ZlIGVudHJ5IGZy b20gdGhlIGxpc3QgaWYgdGltZWQtb3V0ICovCiAJCXNjcGlfcHJvY2Vzc19jbWQoc2NwaV9jaGFu LCBtc2ctPmNtZCk7CiAKIAlwdXRfc2NwaV94ZmVyKG1zZywgc2NwaV9jaGFuKTsKLQkvKiBTQ1BJ IGVycm9yIGNvZGVzID4gMCwgdHJhbnNsYXRlIHRoZW0gdG8gTGludXggc2NhbGUqLwotCXJldHVy biByZXQgPiAwID8gc2NwaV90b19saW51eF9lcnJubyhyZXQpIDogcmV0OworCXJldHVybiByZXQy OwogfQogCiBzdGF0aWMgdTMyIHNjcGlfZ2V0X3ZlcnNpb24odm9pZCkKQEAgLTEwMjYsOSArMTA0 Miw5IEBAIHN0YXRpYyBpbnQgc2NwaV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2 KQogCQljbC0+ZGV2ID0gZGV2OwogCQljbC0+cnhfY2FsbGJhY2sgPSBzY3BpX2hhbmRsZV9yZW1v dGVfbXNnOwogCQljbC0+dHhfcHJlcGFyZSA9IHNjcGlfdHhfcHJlcGFyZTsKLQkJY2wtPnR4X2Js b2NrID0gdHJ1ZTsKLQkJY2wtPnR4X3RvdXQgPSAyMDsKLQkJY2wtPmtub3dzX3R4ZG9uZSA9IGZh bHNlOyAvKiBjb250cm9sbGVyIGNhbid0IGFjayAqLworCQkvKiBVc2Ugbm9uLWJsb2NraW5nIG1v ZGUgZm9yIGNsaWVudCAqLworCQljbC0+dHhfYmxvY2sgPSBmYWxzZTsKKwkJY2wtPmtub3dzX3R4 ZG9uZSA9IHRydWU7CiAKIAkJSU5JVF9MSVNUX0hFQUQoJnBjaGFuLT5yeF9wZW5kaW5nKTsKIAkJ SU5JVF9MSVNUX0hFQUQoJnBjaGFuLT54ZmVyc19saXN0KTsKLS0gCjIuNy40CgoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcg bGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRl dmVsCg==