From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andres Rodriguez Subject: [PATCH 07/17] drm/amdgpu: rename rdev to adev Date: Mon, 17 Apr 2017 18:48:03 -0400 Message-ID: <20170417224813.3173-8-andresx7@gmail.com> References: <20170417224813.3173-1-andresx7@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170417224813.3173-1-andresx7-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: andresx7-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org UmVuYW1lIHN0cmFnZ2xlciBpbnN0YW5jZXMgb2YgcihhZGVvbilkZXYgdG8gYShtZGdwdSlkZXYK ClJldmlld2VkLWJ5OiBFZHdhcmQgTydDYWxsYWdoYW4gPGZ1bmZ1bmN0b3JAZm9sa2xvcmUxOTg0 Lm5ldD4KUmV2aWV3ZWQtYnk6IEZlbGl4IEt1ZWhsaW5nIDxGZWxpeC5LdWVobGluZ0BhbWQuY29t PgpBY2tlZC1ieTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgpT aWduZWQtb2ZmLWJ5OiBBbmRyZXMgUm9kcmlndWV6IDxhbmRyZXN4N0BnbWFpbC5jb20+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5jIHwgNzAgKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVf YW1ka2ZkLmggfCAxNCArKystLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92N18w LmMgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjhfMC5jICAg ICAgfCAgMiArLQogNCBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25zKCspLCA0NCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1k a2ZkLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkLmMKaW5kZXgg ZGJhOGE1Yi4uMzIwMGZmOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv YW1kZ3B1X2FtZGtmZC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9h bWRrZmQuYwpAQCAtNDMsMjA0ICs0MywyMDQgQEAgaW50IGFtZGdwdV9hbWRrZmRfaW5pdCh2b2lk KQogCQlyZXR1cm4gLUVOT0VOVDsKIAogCXJldCA9IGtnZDJrZmRfaW5pdF9wKEtGRF9JTlRFUkZB Q0VfVkVSU0lPTiwgJmtnZDJrZmQpOwogCWlmIChyZXQpIHsKIAkJc3ltYm9sX3B1dChrZ2Qya2Zk X2luaXQpOwogCQlrZ2Qya2ZkID0gTlVMTDsKIAl9CiAKICNlbGlmIGRlZmluZWQoQ09ORklHX0hT QV9BTUQpCiAJcmV0ID0ga2dkMmtmZF9pbml0KEtGRF9JTlRFUkZBQ0VfVkVSU0lPTiwgJmtnZDJr ZmQpOwogCWlmIChyZXQpCiAJCWtnZDJrZmQgPSBOVUxMOwogCiAjZWxzZQogCXJldCA9IC1FTk9F TlQ7CiAjZW5kaWYKIAogCXJldHVybiByZXQ7CiB9CiAKLWJvb2wgYW1kZ3B1X2FtZGtmZF9sb2Fk X2ludGVyZmFjZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqcmRldikKK2Jvb2wgYW1kZ3B1X2FtZGtm ZF9sb2FkX2ludGVyZmFjZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIHsKLQlzd2l0Y2gg KHJkZXYtPmFzaWNfdHlwZSkgeworCXN3aXRjaCAoYWRldi0+YXNpY190eXBlKSB7CiAjaWZkZWYg Q09ORklHX0RSTV9BTURHUFVfQ0lLCiAJY2FzZSBDSElQX0tBVkVSSToKIAkJa2ZkMmtnZCA9IGFt ZGdwdV9hbWRrZmRfZ2Z4XzdfZ2V0X2Z1bmN0aW9ucygpOwogCQlicmVhazsKICNlbmRpZgogCWNh c2UgQ0hJUF9DQVJSSVpPOgogCQlrZmQya2dkID0gYW1kZ3B1X2FtZGtmZF9nZnhfOF8wX2dldF9m dW5jdGlvbnMoKTsKIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJcmV0dXJuIGZhbHNlOwogCX0KIAog CXJldHVybiB0cnVlOwogfQogCiB2b2lkIGFtZGdwdV9hbWRrZmRfZmluaSh2b2lkKQogewogCWlm IChrZ2Qya2ZkKSB7CiAJCWtnZDJrZmQtPmV4aXQoKTsKIAkJc3ltYm9sX3B1dChrZ2Qya2ZkX2lu aXQpOwogCX0KIH0KIAotdm9pZCBhbWRncHVfYW1ka2ZkX2RldmljZV9wcm9iZShzdHJ1Y3QgYW1k Z3B1X2RldmljZSAqcmRldikKK3ZvaWQgYW1kZ3B1X2FtZGtmZF9kZXZpY2VfcHJvYmUoc3RydWN0 IGFtZGdwdV9kZXZpY2UgKmFkZXYpCiB7CiAJaWYgKGtnZDJrZmQpCi0JCXJkZXYtPmtmZCA9IGtn ZDJrZmQtPnByb2JlKChzdHJ1Y3Qga2dkX2RldiAqKXJkZXYsCi0JCQkJCXJkZXYtPnBkZXYsIGtm ZDJrZ2QpOworCQlhZGV2LT5rZmQgPSBrZ2Qya2ZkLT5wcm9iZSgoc3RydWN0IGtnZF9kZXYgKilh ZGV2LAorCQkJCQlhZGV2LT5wZGV2LCBrZmQya2dkKTsKIH0KIAotdm9pZCBhbWRncHVfYW1ka2Zk X2RldmljZV9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICpyZGV2KQordm9pZCBhbWRncHVfYW1k a2ZkX2RldmljZV9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogewotCWlmIChyZGV2 LT5rZmQpIHsKKwlpZiAoYWRldi0+a2ZkKSB7CiAJCXN0cnVjdCBrZ2Qya2ZkX3NoYXJlZF9yZXNv dXJjZXMgZ3B1X3Jlc291cmNlcyA9IHsKIAkJCS5jb21wdXRlX3ZtaWRfYml0bWFwID0gMHhGRjAw LAogCiAJCQkuZmlyc3RfY29tcHV0ZV9waXBlID0gMSwKIAkJCS5jb21wdXRlX3BpcGVfY291bnQg PSA0IC0gMSwKIAkJfTsKIAotCQlhbWRncHVfZG9vcmJlbGxfZ2V0X2tmZF9pbmZvKHJkZXYsCisJ CWFtZGdwdV9kb29yYmVsbF9nZXRfa2ZkX2luZm8oYWRldiwKIAkJCQkmZ3B1X3Jlc291cmNlcy5k b29yYmVsbF9waHlzaWNhbF9hZGRyZXNzLAogCQkJCSZncHVfcmVzb3VyY2VzLmRvb3JiZWxsX2Fw ZXJ0dXJlX3NpemUsCiAJCQkJJmdwdV9yZXNvdXJjZXMuZG9vcmJlbGxfc3RhcnRfb2Zmc2V0KTsK IAotCQlrZ2Qya2ZkLT5kZXZpY2VfaW5pdChyZGV2LT5rZmQsICZncHVfcmVzb3VyY2VzKTsKKwkJ a2dkMmtmZC0+ZGV2aWNlX2luaXQoYWRldi0+a2ZkLCAmZ3B1X3Jlc291cmNlcyk7CiAJfQogfQog Ci12b2lkIGFtZGdwdV9hbWRrZmRfZGV2aWNlX2Zpbmkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKnJk ZXYpCit2b2lkIGFtZGdwdV9hbWRrZmRfZGV2aWNlX2Zpbmkoc3RydWN0IGFtZGdwdV9kZXZpY2Ug KmFkZXYpCiB7Ci0JaWYgKHJkZXYtPmtmZCkgewotCQlrZ2Qya2ZkLT5kZXZpY2VfZXhpdChyZGV2 LT5rZmQpOwotCQlyZGV2LT5rZmQgPSBOVUxMOworCWlmIChhZGV2LT5rZmQpIHsKKwkJa2dkMmtm ZC0+ZGV2aWNlX2V4aXQoYWRldi0+a2ZkKTsKKwkJYWRldi0+a2ZkID0gTlVMTDsKIAl9CiB9CiAK LXZvaWQgYW1kZ3B1X2FtZGtmZF9pbnRlcnJ1cHQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKnJkZXYs Cit2b2lkIGFtZGdwdV9hbWRrZmRfaW50ZXJydXB0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2 LAogCQljb25zdCB2b2lkICppaF9yaW5nX2VudHJ5KQogewotCWlmIChyZGV2LT5rZmQpCi0JCWtn ZDJrZmQtPmludGVycnVwdChyZGV2LT5rZmQsIGloX3JpbmdfZW50cnkpOworCWlmIChhZGV2LT5r ZmQpCisJCWtnZDJrZmQtPmludGVycnVwdChhZGV2LT5rZmQsIGloX3JpbmdfZW50cnkpOwogfQog Ci12b2lkIGFtZGdwdV9hbWRrZmRfc3VzcGVuZChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqcmRldikK K3ZvaWQgYW1kZ3B1X2FtZGtmZF9zdXNwZW5kKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQog ewotCWlmIChyZGV2LT5rZmQpCi0JCWtnZDJrZmQtPnN1c3BlbmQocmRldi0+a2ZkKTsKKwlpZiAo YWRldi0+a2ZkKQorCQlrZ2Qya2ZkLT5zdXNwZW5kKGFkZXYtPmtmZCk7CiB9CiAKLWludCBhbWRn cHVfYW1ka2ZkX3Jlc3VtZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqcmRldikKK2ludCBhbWRncHVf YW1ka2ZkX3Jlc3VtZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIHsKIAlpbnQgciA9IDA7 CiAKLQlpZiAocmRldi0+a2ZkKQotCQlyID0ga2dkMmtmZC0+cmVzdW1lKHJkZXYtPmtmZCk7CisJ aWYgKGFkZXYtPmtmZCkKKwkJciA9IGtnZDJrZmQtPnJlc3VtZShhZGV2LT5rZmQpOwogCiAJcmV0 dXJuIHI7CiB9CiAKIGludCBhbGxvY19ndHRfbWVtKHN0cnVjdCBrZ2RfZGV2ICprZ2QsIHNpemVf dCBzaXplLAogCQkJdm9pZCAqKm1lbV9vYmosIHVpbnQ2NF90ICpncHVfYWRkciwKIAkJCXZvaWQg KipjcHVfcHRyKQogewotCXN0cnVjdCBhbWRncHVfZGV2aWNlICpyZGV2ID0gKHN0cnVjdCBhbWRn cHVfZGV2aWNlICopa2dkOworCXN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2ID0gKHN0cnVjdCBh bWRncHVfZGV2aWNlICopa2dkOwogCXN0cnVjdCBrZ2RfbWVtICoqbWVtID0gKHN0cnVjdCBrZ2Rf bWVtICoqKSBtZW1fb2JqOwogCWludCByOwogCiAJQlVHX09OKGtnZCA9PSBOVUxMKTsKIAlCVUdf T04oZ3B1X2FkZHIgPT0gTlVMTCk7CiAJQlVHX09OKGNwdV9wdHIgPT0gTlVMTCk7CiAKIAkqbWVt ID0ga21hbGxvYyhzaXplb2Yoc3RydWN0IGtnZF9tZW0pLCBHRlBfS0VSTkVMKTsKIAlpZiAoKCpt ZW0pID09IE5VTEwpCiAJCXJldHVybiAtRU5PTUVNOwogCi0JciA9IGFtZGdwdV9ib19jcmVhdGUo cmRldiwgc2l6ZSwgUEFHRV9TSVpFLCB0cnVlLCBBTURHUFVfR0VNX0RPTUFJTl9HVFQsCisJciA9 IGFtZGdwdV9ib19jcmVhdGUoYWRldiwgc2l6ZSwgUEFHRV9TSVpFLCB0cnVlLCBBTURHUFVfR0VN X0RPTUFJTl9HVFQsCiAJCQkgICAgIEFNREdQVV9HRU1fQ1JFQVRFX0NQVV9HVFRfVVNXQywgTlVM TCwgTlVMTCwgJigqbWVtKS0+Ym8pOwogCWlmIChyKSB7Ci0JCWRldl9lcnIocmRldi0+ZGV2LAor CQlkZXZfZXJyKGFkZXYtPmRldiwKIAkJCSJmYWlsZWQgdG8gYWxsb2NhdGUgQk8gZm9yIGFtZGtm ZCAoJWQpXG4iLCByKTsKIAkJcmV0dXJuIHI7CiAJfQogCiAJLyogbWFwIHRoZSBidWZmZXIgKi8K IAlyID0gYW1kZ3B1X2JvX3Jlc2VydmUoKCptZW0pLT5ibywgdHJ1ZSk7CiAJaWYgKHIpIHsKLQkJ ZGV2X2VycihyZGV2LT5kZXYsICIoJWQpIGZhaWxlZCB0byByZXNlcnZlIGJvIGZvciBhbWRrZmRc biIsIHIpOworCQlkZXZfZXJyKGFkZXYtPmRldiwgIiglZCkgZmFpbGVkIHRvIHJlc2VydmUgYm8g Zm9yIGFtZGtmZFxuIiwgcik7CiAJCWdvdG8gYWxsb2NhdGVfbWVtX3Jlc2VydmVfYm9fZmFpbGVk OwogCX0KIAogCXIgPSBhbWRncHVfYm9fcGluKCgqbWVtKS0+Ym8sIEFNREdQVV9HRU1fRE9NQUlO X0dUVCwKIAkJCQkmKCptZW0pLT5ncHVfYWRkcik7CiAJaWYgKHIpIHsKLQkJZGV2X2VycihyZGV2 LT5kZXYsICIoJWQpIGZhaWxlZCB0byBwaW4gYm8gZm9yIGFtZGtmZFxuIiwgcik7CisJCWRldl9l cnIoYWRldi0+ZGV2LCAiKCVkKSBmYWlsZWQgdG8gcGluIGJvIGZvciBhbWRrZmRcbiIsIHIpOwog CQlnb3RvIGFsbG9jYXRlX21lbV9waW5fYm9fZmFpbGVkOwogCX0KIAkqZ3B1X2FkZHIgPSAoKm1l bSktPmdwdV9hZGRyOwogCiAJciA9IGFtZGdwdV9ib19rbWFwKCgqbWVtKS0+Ym8sICYoKm1lbSkt PmNwdV9wdHIpOwogCWlmIChyKSB7Ci0JCWRldl9lcnIocmRldi0+ZGV2LAorCQlkZXZfZXJyKGFk ZXYtPmRldiwKIAkJCSIoJWQpIGZhaWxlZCB0byBtYXAgYm8gdG8ga2VybmVsIGZvciBhbWRrZmRc biIsIHIpOwogCQlnb3RvIGFsbG9jYXRlX21lbV9rbWFwX2JvX2ZhaWxlZDsKIAl9CiAJKmNwdV9w dHIgPSAoKm1lbSktPmNwdV9wdHI7CiAKIAlhbWRncHVfYm9fdW5yZXNlcnZlKCgqbWVtKS0+Ym8p OwogCiAJcmV0dXJuIDA7CiAKIGFsbG9jYXRlX21lbV9rbWFwX2JvX2ZhaWxlZDoKIAlhbWRncHVf Ym9fdW5waW4oKCptZW0pLT5ibyk7CiBhbGxvY2F0ZV9tZW1fcGluX2JvX2ZhaWxlZDoKIAlhbWRn cHVfYm9fdW5yZXNlcnZlKCgqbWVtKS0+Ym8pOwogYWxsb2NhdGVfbWVtX3Jlc2VydmVfYm9fZmFp bGVkOgogCWFtZGdwdV9ib191bnJlZigmKCptZW0pLT5ibyk7CiAKIAlyZXR1cm4gcjsKIH0KIAog dm9pZCBmcmVlX2d0dF9tZW0oc3RydWN0IGtnZF9kZXYgKmtnZCwgdm9pZCAqbWVtX29iaikKIHsK IAlzdHJ1Y3Qga2dkX21lbSAqbWVtID0gKHN0cnVjdCBrZ2RfbWVtICopIG1lbV9vYmo7CiAKIAlC VUdfT04obWVtID09IE5VTEwpOwogCiAJYW1kZ3B1X2JvX3Jlc2VydmUobWVtLT5ibywgdHJ1ZSk7 CiAJYW1kZ3B1X2JvX2t1bm1hcChtZW0tPmJvKTsKIAlhbWRncHVfYm9fdW5waW4obWVtLT5ibyk7 CiAJYW1kZ3B1X2JvX3VucmVzZXJ2ZShtZW0tPmJvKTsKIAlhbWRncHVfYm9fdW5yZWYoJihtZW0t PmJvKSk7CiAJa2ZyZWUobWVtKTsKIH0KIAogdWludDY0X3QgZ2V0X3ZtZW1fc2l6ZShzdHJ1Y3Qg a2dkX2RldiAqa2dkKQogewotCXN0cnVjdCBhbWRncHVfZGV2aWNlICpyZGV2ID0KKwlzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldiA9CiAJCShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqKWtnZDsKIAog CUJVR19PTihrZ2QgPT0gTlVMTCk7CiAKLQlyZXR1cm4gcmRldi0+bWMucmVhbF92cmFtX3NpemU7 CisJcmV0dXJuIGFkZXYtPm1jLnJlYWxfdnJhbV9zaXplOwogfQogCiB1aW50NjRfdCBnZXRfZ3B1 X2Nsb2NrX2NvdW50ZXIoc3RydWN0IGtnZF9kZXYgKmtnZCkKIHsKLQlzdHJ1Y3QgYW1kZ3B1X2Rl dmljZSAqcmRldiA9IChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqKWtnZDsKKwlzdHJ1Y3QgYW1kZ3B1 X2RldmljZSAqYWRldiA9IChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqKWtnZDsKIAotCWlmIChyZGV2 LT5nZnguZnVuY3MtPmdldF9ncHVfY2xvY2tfY291bnRlcikKLQkJcmV0dXJuIHJkZXYtPmdmeC5m dW5jcy0+Z2V0X2dwdV9jbG9ja19jb3VudGVyKHJkZXYpOworCWlmIChhZGV2LT5nZnguZnVuY3Mt PmdldF9ncHVfY2xvY2tfY291bnRlcikKKwkJcmV0dXJuIGFkZXYtPmdmeC5mdW5jcy0+Z2V0X2dw dV9jbG9ja19jb3VudGVyKGFkZXYpOwogCXJldHVybiAwOwogfQogCiB1aW50MzJfdCBnZXRfbWF4 X2VuZ2luZV9jbG9ja19pbl9taHooc3RydWN0IGtnZF9kZXYgKmtnZCkKIHsKLQlzdHJ1Y3QgYW1k Z3B1X2RldmljZSAqcmRldiA9IChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqKWtnZDsKKwlzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldiA9IChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqKWtnZDsKIAogCS8q IFRoZSBzY2xrIGlzIGluIHF1YW50YXMgb2YgMTBrSHogKi8KLQlyZXR1cm4gcmRldi0+cG0uZHBt LmR5bl9zdGF0ZS5tYXhfY2xvY2tfdm9sdGFnZV9vbl9hYy5zY2xrIC8gMTAwOworCXJldHVybiBh ZGV2LT5wbS5kcG0uZHluX3N0YXRlLm1heF9jbG9ja192b2x0YWdlX29uX2FjLnNjbGsgLyAxMDA7 CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2Zk LmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkLmgKaW5kZXggZGU1 MzBmNjhkLi43M2Y4M2ExIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfYW1ka2ZkLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Ft ZGtmZC5oCkBAIC0yMiw0NCArMjIsNDQgQEAKIAogLyogYW1kZ3B1X2FtZGtmZC5oIGRlZmluZXMg dGhlIHByaXZhdGUgaW50ZXJmYWNlIGJldHdlZW4gYW1kZ3B1IGFuZCBhbWRrZmQuICovCiAKICNp Zm5kZWYgQU1ER1BVX0FNREtGRF9IX0lOQ0xVREVECiAjZGVmaW5lIEFNREdQVV9BTURLRkRfSF9J TkNMVURFRAogCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxrZ2Rfa2ZkX2lu dGVyZmFjZS5oPgogCiBzdHJ1Y3QgYW1kZ3B1X2RldmljZTsKIAogc3RydWN0IGtnZF9tZW0gewog CXN0cnVjdCBhbWRncHVfYm8gKmJvOwogCXVpbnQ2NF90IGdwdV9hZGRyOwogCXZvaWQgKmNwdV9w dHI7CiB9OwogCiBpbnQgYW1kZ3B1X2FtZGtmZF9pbml0KHZvaWQpOwogdm9pZCBhbWRncHVfYW1k a2ZkX2Zpbmkodm9pZCk7CiAKLWJvb2wgYW1kZ3B1X2FtZGtmZF9sb2FkX2ludGVyZmFjZShzdHJ1 Y3QgYW1kZ3B1X2RldmljZSAqcmRldik7Citib29sIGFtZGdwdV9hbWRrZmRfbG9hZF9pbnRlcmZh Y2Uoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwogCi12b2lkIGFtZGdwdV9hbWRrZmRfc3Vz cGVuZChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqcmRldik7Ci1pbnQgYW1kZ3B1X2FtZGtmZF9yZXN1 bWUoc3RydWN0IGFtZGdwdV9kZXZpY2UgKnJkZXYpOwotdm9pZCBhbWRncHVfYW1ka2ZkX2ludGVy cnVwdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqcmRldiwKK3ZvaWQgYW1kZ3B1X2FtZGtmZF9zdXNw ZW5kKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsKK2ludCBhbWRncHVfYW1ka2ZkX3Jlc3Vt ZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldik7Cit2b2lkIGFtZGdwdV9hbWRrZmRfaW50ZXJy dXB0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAogCQkJY29uc3Qgdm9pZCAqaWhfcmluZ19l bnRyeSk7Ci12b2lkIGFtZGdwdV9hbWRrZmRfZGV2aWNlX3Byb2JlKHN0cnVjdCBhbWRncHVfZGV2 aWNlICpyZGV2KTsKLXZvaWQgYW1kZ3B1X2FtZGtmZF9kZXZpY2VfaW5pdChzdHJ1Y3QgYW1kZ3B1 X2RldmljZSAqcmRldik7Ci12b2lkIGFtZGdwdV9hbWRrZmRfZGV2aWNlX2Zpbmkoc3RydWN0IGFt ZGdwdV9kZXZpY2UgKnJkZXYpOwordm9pZCBhbWRncHVfYW1ka2ZkX2RldmljZV9wcm9iZShzdHJ1 Y3QgYW1kZ3B1X2RldmljZSAqYWRldik7Cit2b2lkIGFtZGdwdV9hbWRrZmRfZGV2aWNlX2luaXQo c3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwordm9pZCBhbWRncHVfYW1ka2ZkX2RldmljZV9m aW5pKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsKIAogc3RydWN0IGtmZDJrZ2RfY2FsbHMg KmFtZGdwdV9hbWRrZmRfZ2Z4XzdfZ2V0X2Z1bmN0aW9ucyh2b2lkKTsKIHN0cnVjdCBrZmQya2dk X2NhbGxzICphbWRncHVfYW1ka2ZkX2dmeF84XzBfZ2V0X2Z1bmN0aW9ucyh2b2lkKTsKIAogLyog U2hhcmVkIEFQSSAqLwogaW50IGFsbG9jX2d0dF9tZW0oc3RydWN0IGtnZF9kZXYgKmtnZCwgc2l6 ZV90IHNpemUsCiAJCQl2b2lkICoqbWVtX29iaiwgdWludDY0X3QgKmdwdV9hZGRyLAogCQkJdm9p ZCAqKmNwdV9wdHIpOwogdm9pZCBmcmVlX2d0dF9tZW0oc3RydWN0IGtnZF9kZXYgKmtnZCwgdm9p ZCAqbWVtX29iaik7CiB1aW50NjRfdCBnZXRfdm1lbV9zaXplKHN0cnVjdCBrZ2RfZGV2ICprZ2Qp OwogdWludDY0X3QgZ2V0X2dwdV9jbG9ja19jb3VudGVyKHN0cnVjdCBrZ2RfZGV2ICprZ2QpOwog CiB1aW50MzJfdCBnZXRfbWF4X2VuZ2luZV9jbG9ja19pbl9taHooc3RydWN0IGtnZF9kZXYgKmtn ZCk7CiAKICNlbmRpZiAvKiBBTURHUFVfQU1ES0ZEX0hfSU5DTFVERUQgKi8KZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92N18wLmMgYi9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9nZnhfdjdfMC5jCmluZGV4IDM1ZTUxNzguLjc1YWQ5NTcgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92N18wLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvZ2Z4X3Y3XzAuYwpAQCAtMTgyMiw0MSArMTgyMiw0MSBAQCBzdGF0aWMg dm9pZCBnZnhfdjdfMF9zZXR1cF9yYihzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIAludW1f cmJfcGlwZXMgPSBtaW5fdCh1bnNpZ25lZCwgYWRldi0+Z2Z4LmNvbmZpZy5tYXhfYmFja2VuZHNf cGVyX3NlICoKIAkJCSAgICAgYWRldi0+Z2Z4LmNvbmZpZy5tYXhfc2hhZGVyX2VuZ2luZXMsIDE2 KTsKIAogCWdmeF92N18wX3Jhc3Rlcl9jb25maWcoYWRldiwgJnJhc3Rlcl9jb25maWcsICZyYXN0 ZXJfY29uZmlnXzEpOwogCiAJaWYgKCFhZGV2LT5nZnguY29uZmlnLmJhY2tlbmRfZW5hYmxlX21h c2sgfHwKIAkJCWFkZXYtPmdmeC5jb25maWcubnVtX3JicyA+PSBudW1fcmJfcGlwZXMpIHsKIAkJ V1JFRzMyKG1tUEFfU0NfUkFTVEVSX0NPTkZJRywgcmFzdGVyX2NvbmZpZyk7CiAJCVdSRUczMiht bVBBX1NDX1JBU1RFUl9DT05GSUdfMSwgcmFzdGVyX2NvbmZpZ18xKTsKIAl9IGVsc2UgewogCQln ZnhfdjdfMF93cml0ZV9oYXJ2ZXN0ZWRfcmFzdGVyX2NvbmZpZ3MoYWRldiwgcmFzdGVyX2NvbmZp ZywgcmFzdGVyX2NvbmZpZ18xLAogCQkJCQkJCWFkZXYtPmdmeC5jb25maWcuYmFja2VuZF9lbmFi bGVfbWFzaywKIAkJCQkJCQludW1fcmJfcGlwZXMpOwogCX0KIAltdXRleF91bmxvY2soJmFkZXYt PmdyYm1faWR4X211dGV4KTsKIH0KIAogLyoqCiAgKiBnbWNfdjdfMF9pbml0X2NvbXB1dGVfdm1p ZCAtIGdhcnQgZW5hYmxlCiAgKgotICogQHJkZXY6IGFtZGdwdV9kZXZpY2UgcG9pbnRlcgorICog QGFkZXY6IGFtZGdwdV9kZXZpY2UgcG9pbnRlcgogICoKICAqIEluaXRpYWxpemUgY29tcHV0ZSB2 bWlkIHNoX21lbSByZWdpc3RlcnMKICAqCiAgKi8KICNkZWZpbmUgREVGQVVMVF9TSF9NRU1fQkFT RVMJKDB4NjAwMCkKICNkZWZpbmUgRklSU1RfQ09NUFVURV9WTUlECSg4KQogI2RlZmluZSBMQVNU X0NPTVBVVEVfVk1JRAkoMTYpCiBzdGF0aWMgdm9pZCBnbWNfdjdfMF9pbml0X2NvbXB1dGVfdm1p ZChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIHsKIAlpbnQgaTsKIAl1aW50MzJfdCBzaF9t ZW1fY29uZmlnOwogCXVpbnQzMl90IHNoX21lbV9iYXNlczsKIAogCS8qCiAJICogQ29uZmlndXJl IGFwZXJ0dXJlczoKIAkgKiBMRFM6ICAgICAgICAgMHg2MDAwMDAwMCcwMDAwMDAwMCAtIDB4NjAw MDAwMDEnMDAwMDAwMDAgKDRHQikKIAkgKiBTY3JhdGNoOiAgICAgMHg2MDAwMDAwMScwMDAwMDAw MCAtIDB4NjAwMDAwMDInMDAwMDAwMDAgKDRHQikKIAkgKiBHUFVWTTogICAgICAgMHg2MDAxMDAw MCcwMDAwMDAwMCAtIDB4NjAwMjAwMDAnMDAwMDAwMDAgKDFUQikKIAkqLwogCXNoX21lbV9iYXNl cyA9IERFRkFVTFRfU0hfTUVNX0JBU0VTIHwgKERFRkFVTFRfU0hfTUVNX0JBU0VTIDw8IDE2KTsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OF8wLmMgYi9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjhfMC5jCmluZGV4IDAwYjFlZmYuLjkzOGIyODAg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OF8wLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y4XzAuYwpAQCAtMzc4OSw0MSArMzc4OSw0 MSBAQCBzdGF0aWMgdm9pZCBnZnhfdjhfMF9zZXR1cF9yYihzdHJ1Y3QgYW1kZ3B1X2RldmljZSAq YWRldikKIAlmb3IgKGkgPSAwOyBpIDwgYWRldi0+Z2Z4LmNvbmZpZy5tYXhfc2hhZGVyX2VuZ2lu ZXM7IGkrKykgewogCQlmb3IgKGogPSAwOyBqIDwgYWRldi0+Z2Z4LmNvbmZpZy5tYXhfc2hfcGVy X3NlOyBqKyspIHsKIAkJCWdmeF92OF8wX3NlbGVjdF9zZV9zaChhZGV2LCBpLCBqLCAweGZmZmZm ZmZmKTsKIAkJCWFkZXYtPmdmeC5jb25maWcucmJfY29uZmlnW2ldW2pdLnJiX2JhY2tlbmRfZGlz YWJsZSA9CiAJCQkJUlJFRzMyKG1tQ0NfUkJfQkFDS0VORF9ESVNBQkxFKTsKIAkJCWFkZXYtPmdm eC5jb25maWcucmJfY29uZmlnW2ldW2pdLnVzZXJfcmJfYmFja2VuZF9kaXNhYmxlID0KIAkJCQlS UkVHMzIobW1HQ19VU0VSX1JCX0JBQ0tFTkRfRElTQUJMRSk7CiAJCQlhZGV2LT5nZnguY29uZmln LnJiX2NvbmZpZ1tpXVtqXS5yYXN0ZXJfY29uZmlnID0KIAkJCQlSUkVHMzIobW1QQV9TQ19SQVNU RVJfQ09ORklHKTsKIAkJCWFkZXYtPmdmeC5jb25maWcucmJfY29uZmlnW2ldW2pdLnJhc3Rlcl9j b25maWdfMSA9CiAJCQkJUlJFRzMyKG1tUEFfU0NfUkFTVEVSX0NPTkZJR18xKTsKIAkJfQogCX0K IAlnZnhfdjhfMF9zZWxlY3Rfc2Vfc2goYWRldiwgMHhmZmZmZmZmZiwgMHhmZmZmZmZmZiwgMHhm ZmZmZmZmZik7CiAJbXV0ZXhfdW5sb2NrKCZhZGV2LT5ncmJtX2lkeF9tdXRleCk7CiB9CiAKIC8q KgogICogZ2Z4X3Y4XzBfaW5pdF9jb21wdXRlX3ZtaWQgLSBnYXJ0IGVuYWJsZQogICoKLSAqIEBy ZGV2OiBhbWRncHVfZGV2aWNlIHBvaW50ZXIKKyAqIEBhZGV2OiBhbWRncHVfZGV2aWNlIHBvaW50 ZXIKICAqCiAgKiBJbml0aWFsaXplIGNvbXB1dGUgdm1pZCBzaF9tZW0gcmVnaXN0ZXJzCiAgKgog ICovCiAjZGVmaW5lIERFRkFVTFRfU0hfTUVNX0JBU0VTCSgweDYwMDApCiAjZGVmaW5lIEZJUlNU X0NPTVBVVEVfVk1JRAkoOCkKICNkZWZpbmUgTEFTVF9DT01QVVRFX1ZNSUQJKDE2KQogc3RhdGlj IHZvaWQgZ2Z4X3Y4XzBfaW5pdF9jb21wdXRlX3ZtaWQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFk ZXYpCiB7CiAJaW50IGk7CiAJdWludDMyX3Qgc2hfbWVtX2NvbmZpZzsKIAl1aW50MzJfdCBzaF9t ZW1fYmFzZXM7CiAKIAkvKgogCSAqIENvbmZpZ3VyZSBhcGVydHVyZXM6CiAJICogTERTOiAgICAg ICAgIDB4NjAwMDAwMDAnMDAwMDAwMDAgLSAweDYwMDAwMDAxJzAwMDAwMDAwICg0R0IpCiAJICog U2NyYXRjaDogICAgIDB4NjAwMDAwMDEnMDAwMDAwMDAgLSAweDYwMDAwMDAyJzAwMDAwMDAwICg0 R0IpCiAJICogR1BVVk06ICAgICAgIDB4NjAwMTAwMDAnMDAwMDAwMDAgLSAweDYwMDIwMDAwJzAw MDAwMDAwICgxVEIpCiAJICovCiAJc2hfbWVtX2Jhc2VzID0gREVGQVVMVF9TSF9NRU1fQkFTRVMg fCAoREVGQVVMVF9TSF9NRU1fQkFTRVMgPDwgMTYpOwotLSAKMi45LjMKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFt ZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=