From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: [PATCH 2/5] xen/arm: assign devices to boot domains Date: Wed, 5 Dec 2018 09:28:08 -0800 Message-ID: <1544030891-11906-2-git-send-email-sstabellini@kernel.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: julien.grall@arm.com Cc: Stefano Stabellini , Achin.Gupta@arm.com, sstabellini@kernel.org, andrii_anisov@epam.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org U2NhbiB0aGUgdXNlciBwcm92aWRlZCBkdGIgZnJhZ21lbnQgYXQgYm9vdC4gRm9yIGVhY2ggZGV2 aWNlIG5vZGUsIG1hcAptZW1vcnkgdG8gZ3Vlc3RzLCBhbmQgcm91dGUgaW50ZXJydXB0cyBhbmQg c2V0dXAgdGhlIGlvbW11LgoKRGV2aWNlIG1lbW9yeSBpcyBvbmx5IG1hcHBlZCAxOjEuIEl0IGlz IG5vdCBwb3NzaWJsZSB0byBhc3NpZ24gZGV2aWNlcyBhdApsb2NhdGlvbnMgdGhhdCBjb25mbGlj dCB3aXRoIHRoZSBEb21VIG1lbW9yeSBtYXAuCgpUaGUgaW9tbXUgaXMgc2V0dXAgYnkgcGFzc2lu ZyB0aGUgdG8gdGhlIGRldmljZSB0byBhc3NpZ24gb24gdGhlIGhvc3QKZGV2aWNlIHRyZWUuIFRo ZSBwYXRoIGlzIHNwZWNpZmllZCBpbiB0aGUgZGV2aWNlIHRyZWUgZnJhZ21lbnQgYXMgdGhlCiJw YXRoIiBzdHJpbmcgcHJvcGVydHkuCgpTaWduZWQtb2ZmLWJ5OiBTdGVmYW5vIFN0YWJlbGxpbmkg PHN0ZWZhbm9zQHhpbGlueC5jb20+Ci0tLQogeGVuL2FyY2gvYXJtL2Jvb3RmZHQuYyAgICAgICAg fCAgNCArLQogeGVuL2FyY2gvYXJtL2RvbWFpbl9idWlsZC5jICAgfCA4NSArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB4ZW4vaW5jbHVkZS94ZW4vZGV2aWNlX3Ry ZWUuaCB8ICAyICsKIDMgZmlsZXMgY2hhbmdlZCwgODkgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vYm9vdGZkdC5jIGIveGVuL2FyY2gvYXJt L2Jvb3RmZHQuYwppbmRleCA4OTFiNGI2Li43MmNiOGQ2IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9h cm0vYm9vdGZkdC5jCisrKyBiL3hlbi9hcmNoL2FybS9ib290ZmR0LmMKQEAgLTU1LDggKzU1LDgg QEAgc3RhdGljIGJvb2wgX19pbml0IGRldmljZV90cmVlX25vZGVfY29tcGF0aWJsZShjb25zdCB2 b2lkICpmZHQsIGludCBub2RlLAogICAgIHJldHVybiBmYWxzZTsKIH0KIAotc3RhdGljIHZvaWQg X19pbml0IGRldmljZV90cmVlX2dldF9yZWcoY29uc3QgX19iZTMyICoqY2VsbCwgdTMyIGFkZHJl c3NfY2VsbHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1MzIgc2l6 ZV9jZWxscywgdTY0ICpzdGFydCwgdTY0ICpzaXplKQordm9pZCBfX2luaXQgZGV2aWNlX3RyZWVf Z2V0X3JlZyhjb25zdCBfX2JlMzIgKipjZWxsLCB1MzIgYWRkcmVzc19jZWxscywKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdTMyIHNpemVfY2VsbHMsIHU2NCAqc3RhcnQsIHU2NCAq c2l6ZSkKIHsKICAgICAqc3RhcnQgPSBkdF9uZXh0X2NlbGwoYWRkcmVzc19jZWxscywgY2VsbCk7 CiAgICAgKnNpemUgPSBkdF9uZXh0X2NlbGwoc2l6ZV9jZWxscywgY2VsbCk7CmRpZmYgLS1naXQg YS94ZW4vYXJjaC9hcm0vZG9tYWluX2J1aWxkLmMgYi94ZW4vYXJjaC9hcm0vZG9tYWluX2J1aWxk LmMKaW5kZXggY2M2YjQ2NC4uZDQ4Zjc3ZSAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL2RvbWFp bl9idWlsZC5jCisrKyBiL3hlbi9hcmNoL2FybS9kb21haW5fYnVpbGQuYwpAQCAtMjA5NCw2ICsy MDk0LDg4IEBAIHN0YXRpYyBpbnQgX19pbml0IGNvbnN0cnVjdF9kb21haW4oc3RydWN0IGRvbWFp biAqZCwgc3RydWN0IGtlcm5lbF9pbmZvICpraW5mbykKICAgICByZXR1cm4gMDsKIH0KIAorc3Rh dGljIGludCBfX2luaXQgc2Nhbl9wdF9ub2RlKGNvbnN0IHZvaWQgKnBmZHQsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW50IG5vZGVvZmYsIGNvbnN0IGNoYXIgKm5hbWUsIGludCBk ZXB0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1MzIgYWRkcmVzc19jZWxscywg dTMyIHNpemVfY2VsbHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0 YSkKK3sKKyAgICBpbnQgcmM7CisgICAgc3RydWN0IGR0X2RldmljZV9ub2RlICpub2RlOworICAg IGludCBsZW4sIGk7CisgICAgY29uc3Qgc3RydWN0IGZkdF9wcm9wZXJ0eSAqcHJvcDsKKyAgICBz dHJ1Y3Qga2VybmVsX2luZm8gKmtpbmZvID0gZGF0YTsKKyAgICBzdHJ1Y3QgZG9tYWluICpkID0g a2luZm8tPmQ7CisgICAgY29uc3QgX19iZTMyICpjZWxsOworCisgICAgaWYgKCBkZXB0aCA+IDIg KQorICAgICAgICByZXR1cm4gMDsKKworICAgIHByb3AgPSBmZHRfZ2V0X3Byb3BlcnR5X25hbWVs ZW4ocGZkdCwgbm9kZW9mZiwgInJlZyIsIHN0cmxlbigicmVnIiksICZsZW4pOworICAgIGlmICgg cHJvcCAhPSBOVUxMICkKKyAgICB7CisgICAgICAgIHBhZGRyX3Qgc3RhcnQsIHNpemU7CisgICAg ICAgIGNlbGwgPSAoY29uc3QgX19iZTMyICopcHJvcC0+ZGF0YTsKKyAgICAgICAgbGVuID0gZmR0 MzJfdG9fY3B1KHByb3AtPmxlbikgLworICAgICAgICAgICAgICAoKGFkZHJlc3NfY2VsbHMgKyBz aXplX2NlbGxzKSAqIHNpemVvZiAodTMyKSk7CisKKyAgICAgICAgZm9yICggaSA9IDA7IGkgPCBs ZW47IGkrKyApCisgICAgICAgIHsKKyAgICAgICAgICAgIGRldmljZV90cmVlX2dldF9yZWcoJmNl bGwsIGFkZHJlc3NfY2VsbHMsIHNpemVfY2VsbHMsICZzdGFydCwgJnNpemUpOworCisgICAgICAg ICAgICByYyA9IGd1ZXN0X3BoeXNtYXBfYWRkX2VudHJ5KGQsIF9nZm4oc3RhcnQgPj4gUEFHRV9T SElGVCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9tZm4oc3Rh cnQgPj4gUEFHRV9TSElGVCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGdldF9vcmRlcl9mcm9tX2J5dGVzKHNpemUpLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwMm1fbW1pb19kaXJlY3RfZGV2KTsKKyAgICAgICAgICAgIGlmICgg cmMgPCAwICkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkcHJpbnRrKFhFTkxPR19F UlIsICJGYWlsZWQgdG8gbWFwICUiUFJJcGFkZHIiIHRvIHRoZSBndWVzdFxuIiwgc3RhcnQpOwor ICAgICAgICAgICAgICAgIHJldHVybiAtRUZBVUxUOworICAgICAgICAgICAgfQorICAgICAgICB9 CisgICAgfQorCisgICAgcHJvcCA9IGZkdF9nZXRfcHJvcGVydHlfbmFtZWxlbihwZmR0LCBub2Rl b2ZmLCAicGF0aCIsIHN0cmxlbigicGF0aCIpLCAmbGVuKTsKKyAgICBpZiAoIHByb3AgIT0gTlVM TCApIHsKKyAgICAgICAgbm9kZSA9IGR0X2ZpbmRfbm9kZV9ieV9wYXRoKChjaGFyICopJnByb3At PmRhdGFbMF0pOworICAgICAgICBpZiAoIG5vZGUgIT0gTlVMTCApCisgICAgICAgICAgICByYyA9 IGlvbW11X2Fzc2lnbl9kdF9kZXZpY2UoZCwgbm9kZSk7CisgICAgICAgIGVsc2UKKyAgICAgICAg ICAgIGRwcmludGsoWEVOTE9HX0VSUiwgIkNvdWxkbid0IGZpbmQgbm9kZSAlcyBpbiBob3N0X2R0 IVxuIiwKKyAgICAgICAgICAgICAgICAgICAgKGNoYXIgKikmcHJvcC0+ZGF0YVswXSk7CisgICAg fQorCisgICAgcHJvcCA9IGZkdF9nZXRfcHJvcGVydHlfbmFtZWxlbihwZmR0LCBub2Rlb2ZmLCAi aW50ZXJydXB0cyIsIHN0cmxlbigiaW50ZXJydXB0cyIpLCAmbGVuKTsKKyAgICBpZiAoIHByb3Ag IT0gTlVMTCApCisgICAgeworICAgICAgICBpbnQgcHRfaXJxOworICAgICAgICB1MzIgKnUgPSAo dTMyKikgJnByb3AtPmRhdGFbMF07CisKKyAgICAgICAgcHRfaXJxID0gZmR0MzJfdG9fY3B1KCoo dSArIDEpKSArIDMyOworCisgICAgICAgIHZnaWNfcmVzZXJ2ZV92aXJxKGQsIHB0X2lycSk7Cisg ICAgICAgIHJjID0gcm91dGVfaXJxX3RvX2d1ZXN0KGQsIHB0X2lycSwgcHRfaXJxLCAicm91dGVk IElSUSIpOworICAgICAgICBpZiAoIHJjIDwgMCApCisgICAgICAgICAgICByZXR1cm4gcmM7Cisg ICAgfQorICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IF9faW5pdCBkb21haW5fYWRkaWdu X2RldmljZXMoc3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzdHJ1Y3Qga2VybmVsX2luZm8gKmtpbmZvKQoreworICAgIHZvaWQgKnBmZHQ7 CisKKyAgICBwZmR0ID0gaW9yZW1hcF9jYWNoZShraW5mby0+ZHRiX2Jvb3Rtb2R1bGUtPnN0YXJ0 LAorICAgICAgICAgICAga2luZm8tPmR0Yl9ib290bW9kdWxlLT5zaXplKTsKKyAgICBpZiAoIHBm ZHQgPT0gTlVMTCApCisgICAgICAgIHJldHVybiAtRUZBVUxUOworCisgICAgZGV2aWNlX3RyZWVf Zm9yX2VhY2hfbm9kZShwZmR0LCBzY2FuX3B0X25vZGUsIGtpbmZvKTsKKworICAgIGlvdW5tYXAo cGZkdCk7CisgICAgcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgX19pbml0IGNvbnN0cnVjdF9k b21VKHN0cnVjdCBkb21haW4gKmQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBzdHJ1Y3QgZHRfZGV2aWNlX25vZGUgKm5vZGUpCiB7CkBAIC0yMTQwLDYgKzIyMjIsOSBA QCBzdGF0aWMgaW50IF9faW5pdCBjb25zdHJ1Y3RfZG9tVShzdHJ1Y3QgZG9tYWluICpkLAogICAg IGlmICgga2luZm8udnBsMDExICkKICAgICAgICAgcmMgPSBkb21haW5fdnBsMDExX2luaXQoZCwg TlVMTCk7CiAKKyAgICBpZiAoIGtpbmZvLmR0Yl9ib290bW9kdWxlICkKKyAgICAgICAgcmMgPSBk b21haW5fYWRkaWduX2RldmljZXMoZCwgJmtpbmZvKTsKKwogICAgIHJldHVybiByYzsKIH0KIApk aWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL2RldmljZV90cmVlLmggYi94ZW4vaW5jbHVkZS94 ZW4vZGV2aWNlX3RyZWUuaAppbmRleCA3NDA4YTZjLi4zNTZhNDIyIDEwMDY0NAotLS0gYS94ZW4v aW5jbHVkZS94ZW4vZGV2aWNlX3RyZWUuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vZGV2aWNlX3Ry ZWUuaApAQCAtMTYxLDYgKzE2MSw4IEBAIGV4dGVybiBjb25zdCB2b2lkICpkZXZpY2VfdHJlZV9m bGF0dGVuZWQ7CiBpbnQgZGV2aWNlX3RyZWVfZm9yX2VhY2hfbm9kZShjb25zdCB2b2lkICpmZHQs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV2aWNlX3RyZWVfbm9kZV9m dW5jIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0 YSk7Cit2b2lkIGRldmljZV90cmVlX2dldF9yZWcoY29uc3QgX19iZTMyICoqY2VsbCwgdTMyIGFk ZHJlc3NfY2VsbHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgdTMyIHNpemVfY2VsbHMsIHU2 NCAqc3RhcnQsIHU2NCAqc2l6ZSk7CiAKIC8qKgogICogZHRfdW5mbGF0dGVuX2hvc3RfZGV2aWNl X3RyZWUgLSBVbmZsYXR0ZW4gdGhlIGhvc3QgZGV2aWNlIHRyZWUKLS0gCjEuOS4xCgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxp bmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==