From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andre Przywara Subject: [PATCH v2 30/45] ARM: new VGIC: Add TARGET registers handlers Date: Thu, 15 Mar 2018 20:30:35 +0000 Message-ID: <20180315203050.19791-31-andre.przywara@linaro.org> References: <20180315203050.19791-1-andre.przywara@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ewZXK-00043O-LT for xen-devel@lists.xenproject.org; Thu, 15 Mar 2018 20:31:42 +0000 Received: by mail-wr0-x241.google.com with SMTP id s18so9564464wrg.9 for ; Thu, 15 Mar 2018 13:31:41 -0700 (PDT) In-Reply-To: <20180315203050.19791-1-andre.przywara@linaro.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Stefano Stabellini , Julien Grall Cc: xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org VGhlIHRhcmdldCByZWdpc3RlciBoYW5kbGVycyBhcmUgdjIgZW11bGF0aW9uIHNwZWNpZmljLCBz byB0aGVpcgppbXBsZW1lbnRhdGlvbiBsaXZlcyBlbnRpcmVseSBpbiB2Z2ljLW1taW8tdjIuYy4K V2UgY29weSB0aGUgb2xkIFZHSUMgYmVoYXZpb3VyIG9mIGFzc2lnbmluZyBhbiBJUlEgdG8gdGhl IGZpcnN0IFZDUFUKc2V0IGluIHRoZSB0YXJnZXQgbWFzayBpbnN0ZWFkIG9mIG1ha2luZyBpdCBw b3NzaWJseSBwZW5kaW5nIG9uCm11bHRpcGxlIFZDUFVzLgpXZSB1cGRhdGUgdGhlIHBoeXNpY2Fs IGFmZmluaXR5IG9mIGEgaGFyZHdhcmUgbWFwcGVkIHZJUlEgb24gdGhlIHdheS4KClRoaXMgaXMg YmFzZWQgb24gTGludXggY29tbWl0IDJjMjM0ZDZmMTgyNiwgd3JpdHRlbiBieSBBbmRyZSBQcnp5 d2FyYS4KClNpZ25lZC1vZmYtYnk6IEFuZHJlIFByenl3YXJhIDxhbmRyZS5wcnp5d2FyYUBsaW5h cm8ub3JnPgotLS0KQ2hhbmdlbG9nIHYxIC4uLiB2MjoKLSBkaXJlY3RseSB1cGRhdGUgYWZmaW5p dHkgKGF2b2lkIHZnaWNfc3luY19oYXJkd2FyZV9pcnEoKSBhbmQgbG9jaykKCiB4ZW4vYXJjaC9h cm0vdmdpYy92Z2ljLW1taW8tdjIuYyB8IDU5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0KIDEgZmlsZSBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9u KC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL3ZnaWMvdmdpYy1tbWlvLXYyLmMgYi94ZW4v YXJjaC9hcm0vdmdpYy92Z2ljLW1taW8tdjIuYwppbmRleCBhMjhkMGU0NTliLi5iMzMzZGU5ZWQ3 IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vdmdpYy92Z2ljLW1taW8tdjIuYworKysgYi94ZW4v YXJjaC9hcm0vdmdpYy92Z2ljLW1taW8tdjIuYwpAQCAtODEsNiArODEsNjMgQEAgc3RhdGljIHZv aWQgdmdpY19tbWlvX3dyaXRlX3YyX21pc2Moc3RydWN0IHZjcHUgKnZjcHUsCiAgICAgfQogfQog CitzdGF0aWMgdW5zaWduZWQgbG9uZyB2Z2ljX21taW9fcmVhZF90YXJnZXQoc3RydWN0IHZjcHUg KnZjcHUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZHJf dCBhZGRyLCB1bnNpZ25lZCBpbnQgbGVuKQoreworICAgIHVpbnQzMl90IGludGlkID0gVkdJQ19B RERSX1RPX0lOVElEKGFkZHIsIDgpOworICAgIHVpbnQzMl90IHZhbCA9IDA7CisgICAgdW5zaWdu ZWQgaW50IGk7CisKKyAgICBmb3IgKCBpID0gMDsgaSA8IGxlbjsgaSsrICkKKyAgICB7CisgICAg ICAgIHN0cnVjdCB2Z2ljX2lycSAqaXJxID0gdmdpY19nZXRfaXJxKHZjcHUtPmRvbWFpbiwgdmNw dSwgaW50aWQgKyBpKTsKKworICAgICAgICB2YWwgfD0gKHVpbnQzMl90KWlycS0+dGFyZ2V0cyA8 PCAoaSAqIDgpOworCisgICAgICAgIHZnaWNfcHV0X2lycSh2Y3B1LT5kb21haW4sIGlycSk7Cisg ICAgfQorCisgICAgcmV0dXJuIHZhbDsKK30KKworc3RhdGljIHZvaWQgdmdpY19tbWlvX3dyaXRl X3RhcmdldChzdHJ1Y3QgdmNwdSAqdmNwdSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcGFkZHJfdCBhZGRyLCB1bnNpZ25lZCBpbnQgbGVuLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHZhbCkKK3sKKyAgICB1aW50MzJfdCBpbnRp ZCA9IFZHSUNfQUREUl9UT19JTlRJRChhZGRyLCA4KTsKKyAgICB1aW50OF90IGNwdV9tYXNrID0g R0VOTUFTSyh2Y3B1LT5kb21haW4tPm1heF92Y3B1cyAtIDEsIDApOworICAgIHVuc2lnbmVkIGlu dCBpOworICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CisKKyAgICAvKiBHSUNEX0lUQVJHRVRTUlsw LTddIGFyZSByZWFkLW9ubHkgKi8KKyAgICBpZiAoIGludGlkIDwgVkdJQ19OUl9QUklWQVRFX0lS UVMgKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3IgKCBpID0gMDsgaSA8IGxlbjsgaSsrICkK KyAgICB7CisgICAgICAgIHN0cnVjdCB2Z2ljX2lycSAqaXJxID0gdmdpY19nZXRfaXJxKHZjcHUt PmRvbWFpbiwgTlVMTCwgaW50aWQgKyBpKTsKKworICAgICAgICBzcGluX2xvY2tfaXJxc2F2ZSgm aXJxLT5pcnFfbG9jaywgZmxhZ3MpOworCisgICAgICAgIGlycS0+dGFyZ2V0cyA9ICh2YWwgPj4g KGkgKiA4KSkgJiBjcHVfbWFzazsKKyAgICAgICAgaWYgKCBpcnEtPnRhcmdldHMgKQorICAgICAg ICB7CisgICAgICAgICAgICBpcnEtPnRhcmdldF92Y3B1ID0gdmNwdS0+ZG9tYWluLT52Y3B1W2Zm cyhpcnEtPnRhcmdldHMpIC0gMV07CisgICAgICAgICAgICBpZiAoIGlycS0+aHcgKQorICAgICAg ICAgICAgeworICAgICAgICAgICAgICAgIHN0cnVjdCBpcnFfZGVzYyAqZGVzYyA9IGlycV90b19k ZXNjKGlycS0+aHdpbnRpZCk7CisKKyAgICAgICAgICAgICAgICBpcnFfc2V0X2FmZmluaXR5KGRl c2MsIGNwdW1hc2tfb2YoaXJxLT50YXJnZXRfdmNwdS0+cHJvY2Vzc29yKSk7CisgICAgICAgICAg ICB9CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICAgICAgaXJxLT50YXJnZXRfdmNw dSA9IE5VTEw7CisKKyAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaXJxLT5pcnFfbG9j aywgZmxhZ3MpOworICAgICAgICB2Z2ljX3B1dF9pcnEodmNwdS0+ZG9tYWluLCBpcnEpOworICAg IH0KK30KKwogc3RhdGljIGNvbnN0IHN0cnVjdCB2Z2ljX3JlZ2lzdGVyX3JlZ2lvbiB2Z2ljX3Yy X2Rpc3RfcmVnaXN0ZXJzW10gPSB7CiAgICAgUkVHSVNURVJfREVTQ19XSVRIX0xFTkdUSChHSUNE X0NUTFIsCiAgICAgICAgIHZnaWNfbW1pb19yZWFkX3YyX21pc2MsIHZnaWNfbW1pb193cml0ZV92 Ml9taXNjLCAxMiwKQEAgLTExMCw3ICsxNjcsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHZnaWNf cmVnaXN0ZXJfcmVnaW9uIHZnaWNfdjJfZGlzdF9yZWdpc3RlcnNbXSA9IHsKICAgICAgICAgdmdp Y19tbWlvX3JlYWRfcHJpb3JpdHksIHZnaWNfbW1pb193cml0ZV9wcmlvcml0eSwgOCwKICAgICAg ICAgVkdJQ19BQ0NFU1NfMzJiaXQgfCBWR0lDX0FDQ0VTU184Yml0KSwKICAgICBSRUdJU1RFUl9E RVNDX1dJVEhfQklUU19QRVJfSVJRKEdJQ0RfSVRBUkdFVFNSLAotICAgICAgICB2Z2ljX21taW9f cmVhZF9yYXosIHZnaWNfbW1pb193cml0ZV93aSwgOCwKKyAgICAgICAgdmdpY19tbWlvX3JlYWRf dGFyZ2V0LCB2Z2ljX21taW9fd3JpdGVfdGFyZ2V0LCA4LAogICAgICAgICBWR0lDX0FDQ0VTU18z MmJpdCB8IFZHSUNfQUNDRVNTXzhiaXQpLAogICAgIFJFR0lTVEVSX0RFU0NfV0lUSF9CSVRTX1BF Ul9JUlEoR0lDRF9JQ0ZHUiwKICAgICAgICAgdmdpY19tbWlvX3JlYWRfY29uZmlnLCB2Z2ljX21t aW9fd3JpdGVfY29uZmlnLCAyLAotLSAKMi4xNC4xCgoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxA bGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFu L2xpc3RpbmZvL3hlbi1kZXZlbA==