From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andre Przywara Subject: [PATCH v2 29/45] ARM: new VGIC: Add CONFIG registers handlers Date: Thu, 15 Mar 2018 20:30:34 +0000 Message-ID: <20180315203050.19791-30-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 1ewZXI-0003yk-No for xen-devel@lists.xenproject.org; Thu, 15 Mar 2018 20:31:40 +0000 Received: by mail-wr0-x241.google.com with SMTP id z12so9640985wrg.4 for ; Thu, 15 Mar 2018 13:31:39 -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 VGhlIGNvbmZpZyByZWdpc3RlciBoYW5kbGVycyBhcmUgc2hhcmVkIGJldHdlZW4gdGhlIHYyIGFu ZCB2MyBlbXVsYXRpb24sCnNvIHRoZWlyIGltcGxlbWVudGF0aW9uIGdvZXMgaW50byB2Z2ljLW1t aW8uYywgdG8gYmUgZWFzaWx5IHJlZmVyZW5jZWQKZnJvbSB0aGUgdjMgZW11bGF0aW9uIGFzIHdl bGwgbGF0ZXIuCgpUaGlzIGlzIGJhc2VkIG9uIExpbnV4IGNvbW1pdCA3OTcxN2U0YWMwOWMsIHdy aXR0ZW4gYnkgQW5kcmUgUHJ6eXdhcmEuCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZSBQcnp5d2FyYSA8 YW5kcmUucHJ6eXdhcmFAbGluYXJvLm9yZz4KUmV2aWV3ZWQtYnk6IEp1bGllbiBHcmFsbCA8anVs aWVuLmdyYWxsQGFybS5jb20+Ci0tLQpDaGFuZ2Vsb2cgdjEgLi4uIHYyOgotIEFkZCBSZXZpZXdl ZC1ieToKCiB4ZW4vYXJjaC9hcm0vdmdpYy92Z2ljLW1taW8tdjIuYyB8ICAyICstCiB4ZW4vYXJj aC9hcm0vdmdpYy92Z2ljLW1taW8uYyAgICB8IDU0ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysKIHhlbi9hcmNoL2FybS92Z2ljL3ZnaWMtbW1pby5oICAgIHwgIDcgKysr KysrCiAzIGZpbGVzIGNoYW5nZWQsIDYyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vdmdpYy92Z2ljLW1taW8tdjIuYyBiL3hlbi9hcmNoL2Fy bS92Z2ljL3ZnaWMtbW1pby12Mi5jCmluZGV4IGQyZDZhMDdlMWIuLmEyOGQwZTQ1OWIgMTAwNjQ0 Ci0tLSBhL3hlbi9hcmNoL2FybS92Z2ljL3ZnaWMtbW1pby12Mi5jCisrKyBiL3hlbi9hcmNoL2Fy bS92Z2ljL3ZnaWMtbW1pby12Mi5jCkBAIC0xMTMsNyArMTEzLDcgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCB2Z2ljX3JlZ2lzdGVyX3JlZ2lvbiB2Z2ljX3YyX2Rpc3RfcmVnaXN0ZXJzW10gPSB7CiAg ICAgICAgIHZnaWNfbW1pb19yZWFkX3JheiwgdmdpY19tbWlvX3dyaXRlX3dpLCA4LAogICAgICAg ICBWR0lDX0FDQ0VTU18zMmJpdCB8IFZHSUNfQUNDRVNTXzhiaXQpLAogICAgIFJFR0lTVEVSX0RF U0NfV0lUSF9CSVRTX1BFUl9JUlEoR0lDRF9JQ0ZHUiwKLSAgICAgICAgdmdpY19tbWlvX3JlYWRf cmF6LCB2Z2ljX21taW9fd3JpdGVfd2ksIDIsCisgICAgICAgIHZnaWNfbW1pb19yZWFkX2NvbmZp ZywgdmdpY19tbWlvX3dyaXRlX2NvbmZpZywgMiwKICAgICAgICAgVkdJQ19BQ0NFU1NfMzJiaXQp LAogICAgIFJFR0lTVEVSX0RFU0NfV0lUSF9MRU5HVEgoR0lDRF9TR0lSLAogICAgICAgICB2Z2lj X21taW9fcmVhZF9yYXosIHZnaWNfbW1pb193cml0ZV93aSwgNCwKZGlmZiAtLWdpdCBhL3hlbi9h cmNoL2FybS92Z2ljL3ZnaWMtbW1pby5jIGIveGVuL2FyY2gvYXJtL3ZnaWMvdmdpYy1tbWlvLmMK aW5kZXggYzZlZWY3Yjk0OC4uMWFmNzY5MDlmOCAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL3Zn aWMvdmdpYy1tbWlvLmMKKysrIGIveGVuL2FyY2gvYXJtL3ZnaWMvdmdpYy1tbWlvLmMKQEAgLTQx OSw2ICs0MTksNjAgQEAgdm9pZCB2Z2ljX21taW9fd3JpdGVfcHJpb3JpdHkoc3RydWN0IHZjcHUg KnZjcHUsCiAgICAgfQogfQogCit1bnNpZ25lZCBsb25nIHZnaWNfbW1pb19yZWFkX2NvbmZpZyhz dHJ1Y3QgdmNwdSAqdmNwdSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBh ZGRyX3QgYWRkciwgdW5zaWduZWQgaW50IGxlbikKK3sKKyAgICB1aW50MzJfdCBpbnRpZCA9IFZH SUNfQUREUl9UT19JTlRJRChhZGRyLCAyKTsKKyAgICB1aW50MzJfdCB2YWx1ZSA9IDA7CisgICAg aW50IGk7CisKKyAgICBmb3IgKCBpID0gMDsgaSA8IGxlbiAqIDQ7IGkrKyApCisgICAgeworICAg ICAgICBzdHJ1Y3QgdmdpY19pcnEgKmlycSA9IHZnaWNfZ2V0X2lycSh2Y3B1LT5kb21haW4sIHZj cHUsIGludGlkICsgaSk7CisKKyAgICAgICAgaWYgKCBpcnEtPmNvbmZpZyA9PSBWR0lDX0NPTkZJ R19FREdFICkKKyAgICAgICAgICAgIHZhbHVlIHw9ICgyVSA8PCAoaSAqIDIpKTsKKworICAgICAg ICB2Z2ljX3B1dF9pcnEodmNwdS0+ZG9tYWluLCBpcnEpOworICAgIH0KKworICAgIHJldHVybiB2 YWx1ZTsKK30KKwordm9pZCB2Z2ljX21taW9fd3JpdGVfY29uZmlnKHN0cnVjdCB2Y3B1ICp2Y3B1 LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3QgYWRkciwgdW5zaWduZWQgaW50 IGxlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHZhbCkKK3sK KyAgICB1aW50MzJfdCBpbnRpZCA9IFZHSUNfQUREUl9UT19JTlRJRChhZGRyLCAyKTsKKyAgICBp bnQgaTsKKyAgICB1bnNpZ25lZCBsb25nIGZsYWdzOworCisgICAgZm9yICggaSA9IDA7IGkgPCBs ZW4gKiA0OyBpKysgKQorICAgIHsKKyAgICAgICAgc3RydWN0IHZnaWNfaXJxICppcnE7CisKKyAg ICAgICAgLyoKKyAgICAgICAgICogVGhlIGNvbmZpZ3VyYXRpb24gY2Fubm90IGJlIGNoYW5nZWQg Zm9yIFNHSXMgaW4gZ2VuZXJhbCwKKyAgICAgICAgICogZm9yIFBQSXMgdGhpcyBpcyBJTVBMRU1F TlRBVElPTiBERUZJTkVELiBUaGUgYXJjaCB0aW1lcgorICAgICAgICAgKiBjb2RlIHJlbGllcyBv biBQUElzIGJlaW5nIGxldmVsIHRyaWdnZXJlZCwgc28gd2UgYWxzbworICAgICAgICAgKiBtYWtl IHRoZW0gcmVhZC1vbmx5IGhlcmUuCisgICAgICAgICAqLworICAgICAgICBpZiAoIGludGlkICsg aSA8IFZHSUNfTlJfUFJJVkFURV9JUlFTICkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAg ICAgIGlycSA9IHZnaWNfZ2V0X2lycSh2Y3B1LT5kb21haW4sIHZjcHUsIGludGlkICsgaSk7Cisg ICAgICAgIHNwaW5fbG9ja19pcnFzYXZlKCZpcnEtPmlycV9sb2NrLCBmbGFncyk7CisKKyAgICAg ICAgaWYgKCB0ZXN0X2JpdChpICogMiArIDEsICZ2YWwpICkKKyAgICAgICAgICAgIGlycS0+Y29u ZmlnID0gVkdJQ19DT05GSUdfRURHRTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgaXJxLT5j b25maWcgPSBWR0lDX0NPTkZJR19MRVZFTDsKKworICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0 b3JlKCZpcnEtPmlycV9sb2NrLCBmbGFncyk7CisgICAgICAgIHZnaWNfcHV0X2lycSh2Y3B1LT5k b21haW4sIGlycSk7CisgICAgfQorfQorCiBzdGF0aWMgaW50IG1hdGNoX3JlZ2lvbihjb25zdCB2 b2lkICprZXksIGNvbnN0IHZvaWQgKmVsdCkKIHsKICAgICBjb25zdCB1bnNpZ25lZCBpbnQgb2Zm c2V0ID0gKHVuc2lnbmVkIGxvbmcpa2V5OwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL3ZnaWMv dmdpYy1tbWlvLmggYi94ZW4vYXJjaC9hcm0vdmdpYy92Z2ljLW1taW8uaAppbmRleCBiMmQ1NzJk NTYyLi4zNTY2Y2YyMzdjIDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vdmdpYy92Z2ljLW1taW8u aAorKysgYi94ZW4vYXJjaC9hcm0vdmdpYy92Z2ljLW1taW8uaApAQCAtMTI2LDYgKzEyNiwxMyBA QCB2b2lkIHZnaWNfbW1pb193cml0ZV9wcmlvcml0eShzdHJ1Y3QgdmNwdSAqdmNwdSwKICAgICAg ICAgICAgICAgICAgIHBhZGRyX3QgYWRkciwgdW5zaWduZWQgaW50IGxlbiwKICAgICAgICAgICAg ICAgICAgIHVuc2lnbmVkIGxvbmcgdmFsKTsKIAordW5zaWduZWQgbG9uZyB2Z2ljX21taW9fcmVh ZF9jb25maWcoc3RydWN0IHZjcHUgKnZjcHUsCisgICAgICAgICAgICAgICAgICAgIHBhZGRyX3Qg YWRkciwgdW5zaWduZWQgaW50IGxlbik7CisKK3ZvaWQgdmdpY19tbWlvX3dyaXRlX2NvbmZpZyhz dHJ1Y3QgdmNwdSAqdmNwdSwKKyAgICAgICAgICAgICAgICBwYWRkcl90IGFkZHIsIHVuc2lnbmVk IGludCBsZW4sCisgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyB2YWwpOworCiB1bnNpZ25l ZCBpbnQgdmdpY192Ml9pbml0X2Rpc3RfaW9kZXYoc3RydWN0IHZnaWNfaW9fZGV2aWNlICpkZXYp OwogCiAjZW5kaWYKLS0gCjIuMTQuMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhl bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m by94ZW4tZGV2ZWw=