From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexandre Courbot Subject: [PATCH v2 10/14] secboot: split reset function Date: Thu, 27 Oct 2016 13:37:04 +0900 Message-ID: <20161027043708.22538-11-acourbot@nvidia.com> References: <20161027043708.22538-1-acourbot@nvidia.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20161027043708.22538-1-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Ben Skeggs Cc: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: nouveau.vger.kernel.org U3BsaXQgdGhlIHJlc2V0IGZ1bmN0aW9uIGludG8gbW9yZSBtZWFuaW5nZnVsIGFuZCByZXVzYWJs ZSBvbmVzLgoKU2lnbmVkLW9mZi1ieTogQWxleGFuZHJlIENvdXJib3QgPGFjb3VyYm90QG52aWRp YS5jb20+Ci0tLQogZHJtL25vdXZlYXUvaW5jbHVkZS9udmttL3N1YmRldi9zZWNib290LmggIHwg IDMgKysKIGRybS9ub3V2ZWF1L252a20vc3ViZGV2L3NlY2Jvb3QvYWNyX3IzNTIuYyB8IDc4ICsr KysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1NiBpbnNlcnRp b25zKCspLCAyNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcm0vbm91dmVhdS9pbmNsdWRl L252a20vc3ViZGV2L3NlY2Jvb3QuaCBiL2RybS9ub3V2ZWF1L2luY2x1ZGUvbnZrbS9zdWJkZXYv c2VjYm9vdC5oCmluZGV4IDI0ZDk4ODc4YmI5My4uNzg1ZTJjNTUzMzkyIDEwMDY0NAotLS0gYS9k cm0vbm91dmVhdS9pbmNsdWRlL252a20vc3ViZGV2L3NlY2Jvb3QuaAorKysgYi9kcm0vbm91dmVh dS9pbmNsdWRlL252a20vc3ViZGV2L3NlY2Jvb3QuaApAQCAtMzAsNiArMzAsNyBAQAogICogQGJh c2U6IGJhc2UgSU8gYWRkcmVzcyBvZiB0aGUgZmFsY29uIHBlcmZvcm1pbmcgc2VjdXJlIGJvb3QK ICAqIEBtYW5hZ2VkX2ZhbGNvbnM6IGJpdGZpZWxkIG9mIGZhbGNvbnMgbWFuYWdlZCBieSB0aGlz IEFDUgogICogQGRlYnVnX21vZGU6IHdoZXRoZXIgdGhlIGRlYnVnIG9yIHByb2R1Y3Rpb24gc2ln bmF0dXJlcyBzaG91bGQgYmUgdXNlZAorICogQHdwcl9zZXQ6IHdoZXRoZXIgdGhlIFdQUiByZWdp b24gaXMgY3VycmVudGx5IHNldAogKi8KIHN0cnVjdCBudmttX3NlY2Jvb3QgewogCWNvbnN0IHN0 cnVjdCBudmttX3NlY2Jvb3RfZnVuYyAqZnVuYzsKQEAgLTQ0LDYgKzQ1LDggQEAgc3RydWN0IG52 a21fc2VjYm9vdCB7CiAJdTMyIHdwcl9zaXplOwogCiAJYm9vbCBkZWJ1Z19tb2RlOworCisJYm9v bCB3cHJfc2V0OwogfTsKICNkZWZpbmUgbnZrbV9zZWNib290KHApIGNvbnRhaW5lcl9vZigocCks IHN0cnVjdCBudmttX3NlY2Jvb3QsIHN1YmRldikKIApkaWZmIC0tZ2l0IGEvZHJtL25vdXZlYXUv bnZrbS9zdWJkZXYvc2VjYm9vdC9hY3JfcjM1Mi5jIGIvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYv c2VjYm9vdC9hY3JfcjM1Mi5jCmluZGV4IGE3NGRlZGU0YzIyMi4uZDlmMDJjMWMwZGU2IDEwMDY0 NAotLS0gYS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9zZWNib290L2Fjcl9yMzUyLmMKKysrIGIv ZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvc2VjYm9vdC9hY3JfcjM1Mi5jCkBAIC03NDAsNiArNzQw LDU0IEBAIG52a21fYWNyX3IzNTJfbG9hZChzdHJ1Y3QgbnZrbV9hY3IgKl9hY3IsIHN0cnVjdCBu dmttX3NlY2Jvb3QgKnNiLAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50CithY3JfcjM1Ml9z aHV0ZG93bihzdHJ1Y3QgbnZrbV9hY3JfcjM1MiAqYWNyLCBzdHJ1Y3QgbnZrbV9zZWNib290ICpz YikKK3sKKwlpbnQgaTsKKworCS8qIFJ1biB0aGUgdW5sb2FkIGJsb2IgdG8gdW5wcm90ZWN0IHRo ZSBXUFIgcmVnaW9uICovCisJaWYgKGFjci0+dW5sb2FkX2Jsb2IgJiYgc2ItPndwcl9zZXQpIHsK KwkJaW50IHJldDsKKworCQludmttX2RlYnVnKCZzYi0+c3ViZGV2LCAicnVubmluZyBIUyB1bmxv YWQgYmxvYlxuIik7CisJCXJldCA9IHNiLT5mdW5jLT5ydW5fYmxvYihzYiwgYWNyLT51bmxvYWRf YmxvYik7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gcmV0OworCQludmttX2RlYnVnKCZzYi0+c3Vi ZGV2LCAiSFMgdW5sb2FkIGJsb2IgY29tcGxldGVkXG4iKTsKKwl9CisKKwlmb3IgKGkgPSAwOyBp IDwgTlZLTV9GQUxDT05fRU5EOyBpKyspCisJCWFjci0+ZmFsY29uX3N0YXRlW2ldID0gTk9OX1NF Q1VSRTsKKworCXNiLT53cHJfc2V0ID0gZmFsc2U7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGlj IGludAorYWNyX3IzNTJfYm9vdHN0cmFwKHN0cnVjdCBudmttX2Fjcl9yMzUyICphY3IsIHN0cnVj dCBudmttX3NlY2Jvb3QgKnNiKQoreworCWludCByZXQ7CisKKwlpZiAoc2ItPndwcl9zZXQpCisJ CXJldHVybiAwOworCisJLyogTWFrZSBzdXJlIGFsbCBibG9icyBhcmUgcmVhZHkgKi8KKwlyZXQg PSBhY3JfcjM1Ml9sb2FkX2Jsb2JzKGFjciwgc2IpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7 CisKKwludmttX2RlYnVnKCZzYi0+c3ViZGV2LCAicnVubmluZyBIUyBsb2FkIGJsb2JcbiIpOwor CXJldCA9IHNiLT5mdW5jLT5ydW5fYmxvYihzYiwgYWNyLT5sb2FkX2Jsb2IpOworCWlmIChyZXQp CisJCXJldHVybiByZXQ7CisJbnZrbV9kZWJ1Zygmc2ItPnN1YmRldiwgIkhTIGxvYWQgYmxvYiBj b21wbGV0ZWRcbiIpOworCisJc2ItPndwcl9zZXQgPSB0cnVlOworCisJcmV0dXJuIDA7Cit9CisK IC8qCiAgKiBudmttX2Fjcl9yMzUyX3Jlc2V0KCkgLSBleGVjdXRlIHNlY3VyZSBib290IGZyb20g dGhlIHByZXBhcmVkIHN0YXRlCiAgKgpAQCAtNzU0LDExICs4MDIsNiBAQCBudmttX2Fjcl9yMzUy X3Jlc2V0KHN0cnVjdCBudmttX2FjciAqX2Fjciwgc3RydWN0IG52a21fc2VjYm9vdCAqc2IsCiAJ c3RydWN0IG52a21fYWNyX3IzNTIgKmFjciA9IG52a21fYWNyX3IzNTIoX2Fjcik7CiAJaW50IHJl dDsKIAotCS8qIE1ha2Ugc3VyZSBhbGwgYmxvYnMgYXJlIHJlYWR5ICovCi0JcmV0ID0gYWNyX3Iz NTJfbG9hZF9ibG9icyhhY3IsIHNiKTsKLQlpZiAocmV0KQotCQlyZXR1cm4gcmV0OwotCiAJLyoK IAkgKiBEdW1teSBHTTIwMCBpbXBsZW1lbnRhdGlvbjogcGVyZm9ybSBzZWN1cmUgYm9vdCBlYWNo IHRpbWUgd2UgYXJlCiAJICogY2FsbGVkIG9uIEZFQ1MuIFNpbmNlIG9ubHkgRkVDUyBhbmQgR1BD Q1MgYXJlIG1hbmFnZWQgYW5kIHN0YXJ0ZWQKQEAgLTc3MCwxNiArODEzLDExIEBAIG52a21fYWNy X3IzNTJfcmVzZXQoc3RydWN0IG52a21fYWNyICpfYWNyLCBzdHJ1Y3QgbnZrbV9zZWNib290ICpz YiwKIAlpZiAoZmFsY29uICE9IE5WS01fRkFMQ09OX0ZFQ1MpCiAJCWdvdG8gZW5kOwogCi0JLyog SWYgV1BSIGlzIHNldCBhbmQgd2UgaGF2ZSBhbiB1bmxvYWQgYmxvYiwgcnVuIGl0IHRvIHVubG9j ayBXUFIgKi8KLQlpZiAoYWNyLT51bmxvYWRfYmxvYiAmJgotCSAgICBhY3ItPmZhbGNvbl9zdGF0 ZVtOVktNX0ZBTENPTl9GRUNTXSAhPSBOT05fU0VDVVJFKSB7Ci0JCXJldCA9IHNiLT5mdW5jLT5y dW5fYmxvYihzYiwgYWNyLT51bmxvYWRfYmxvYik7Ci0JCWlmIChyZXQpCi0JCQlyZXR1cm4gcmV0 OwotCX0KKwlyZXQgPSBhY3JfcjM1Ml9zaHV0ZG93bihhY3IsIHNiKTsKKwlpZiAocmV0KQorCQly ZXR1cm4gcmV0OwogCi0JLyogUmVsb2FkIGFsbCBtYW5hZ2VkIGZhbGNvbnMgKi8KLQlyZXQgPSBz Yi0+ZnVuYy0+cnVuX2Jsb2Ioc2IsIGFjci0+bG9hZF9ibG9iKTsKKwlhY3JfcjM1Ml9ib290c3Ry YXAoYWNyLCBzYik7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtODE4LDE4ICs4NTYs OCBAQCBpbnQKIG52a21fYWNyX3IzNTJfZmluaShzdHJ1Y3QgbnZrbV9hY3IgKl9hY3IsIHN0cnVj dCBudmttX3NlY2Jvb3QgKnNiLCBib29sIHN1c3BlbmQpCiB7CiAJc3RydWN0IG52a21fYWNyX3Iz NTIgKmFjciA9IG52a21fYWNyX3IzNTIoX2Fjcik7Ci0JaW50IHJldCA9IDA7Ci0JaW50IGk7CiAK LQkvKiBSdW4gdGhlIHVubG9hZCBibG9iIHRvIHVucHJvdGVjdCB0aGUgV1BSIHJlZ2lvbiAqLwot CWlmIChhY3ItPnVubG9hZF9ibG9iICYmCi0JICAgIGFjci0+ZmFsY29uX3N0YXRlW05WS01fRkFM Q09OX0ZFQ1NdICE9IE5PTl9TRUNVUkUpCi0JCXJldCA9IHNiLT5mdW5jLT5ydW5fYmxvYihzYiwg YWNyLT51bmxvYWRfYmxvYik7Ci0KLQlmb3IgKGkgPSAwOyBpIDwgTlZLTV9GQUxDT05fRU5EOyBp KyspCi0JCWFjci0+ZmFsY29uX3N0YXRlW2ldID0gTk9OX1NFQ1VSRTsKLQotCXJldHVybiByZXQ7 CisJcmV0dXJuIGFjcl9yMzUyX3NodXRkb3duKGFjciwgc2IpOwogfQogCiB2b2lkCi0tIAoyLjEw LjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5vdXZl YXUgbWFpbGluZyBsaXN0Ck5vdXZlYXVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vbm91dmVhdQo=