From mboxrd@z Thu Jan 1 00:00:00 1970 From: Benjamin Gaignard Subject: [PATCH v2 1/2] of: add devm_ functions for populate and depopulate Date: Fri, 24 Feb 2017 17:14:33 +0100 Message-ID: <1487952874-23635-2-git-send-email-benjamin.gaignard@linaro.org> References: <1487952874-23635-1-git-send-email-benjamin.gaignard@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1487952874-23635-1-git-send-email-benjamin.gaignard@linaro.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: robh+dt@kernel.org, frowand.list@gmail.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, vincent.abriou@st.com, dri-devel@lists.freedesktop.org Cc: linaro-kernel@lists.linaro.org List-Id: devicetree@vger.kernel.org TG90cyBvZiBjYWxscyB0byBvZl9wbGF0Zm9ybV9wb3B1bGF0ZSgpIGFyZSBub3QgdW5iYWxhbmNl ZCBieSBhIGNhbGwKdG8gb2ZfcGxhdGZvcm1fZGVwb3B1bGF0ZSgpLiBUaGlzIGNyZWF0ZSBpc3N1 ZXMgd2hpbGUgZHJpdmVycyBhcmUKYmluZC91bmJpbmQuCgpJbiB3YXkgdG8gc29sdmUgdGhvc2Ug aXNzdWVzIGlzIHRvIGFkZCBkZXZtX29mX3BsYXRmb3JtX3BvcHVsYXRlKCkKd2hpY2ggd2lsbCBj YWxsIG9mX3BsYXRmb3JtX2RlcG9wdWxhdGUoKSB3aGVuIHRoZSBkZXZpY2UgaXMgdW5ib3VuZApm cm9tIHRoZSBidXMuCgpTaWduZWQtb2ZmLWJ5OiBCZW5qYW1pbiBHYWlnbmFyZCA8YmVuamFtaW4u Z2FpZ25hcmRAbGluYXJvLm9yZz4KLS0tCnZlcnNpb24gMjoKLSBzaW1wbGlmeSBmdW5jdGlvbiBw cm90b3R5cGUgdG8gb25seSBrZWVwIGRldmljZSBhcyBwYXJhbWV0ZXIKCiBkcml2ZXJzL29mL3Bs YXRmb3JtLmMgICAgICAgfCA3MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKIGluY2x1ZGUvbGludXgvb2ZfcGxhdGZvcm0uaCB8IDExICsrKysrKysKIDIgZmls ZXMgY2hhbmdlZCwgODIgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvb2YvcGxh dGZvcm0uYyBiL2RyaXZlcnMvb2YvcGxhdGZvcm0uYwppbmRleCBiODA2NGJjLi5mNWJiYjUwIDEw MDY0NAotLS0gYS9kcml2ZXJzL29mL3BsYXRmb3JtLmMKKysrIGIvZHJpdmVycy9vZi9wbGF0Zm9y bS5jCkBAIC01NzEsNiArNTcxLDc3IEBAIHZvaWQgb2ZfcGxhdGZvcm1fZGVwb3B1bGF0ZShzdHJ1 Y3QgZGV2aWNlICpwYXJlbnQpCiB9CiBFWFBPUlRfU1lNQk9MX0dQTChvZl9wbGF0Zm9ybV9kZXBv cHVsYXRlKTsKIAorc3RhdGljIHZvaWQgZGV2bV9vZl9wbGF0Zm9ybV9wb3B1bGF0ZV9yZWxlYXNl KHN0cnVjdCBkZXZpY2UgKmRldiwgdm9pZCAqcmVzKQoreworCW9mX3BsYXRmb3JtX2RlcG9wdWxh dGUoKihzdHJ1Y3QgZGV2aWNlICoqKXJlcyk7Cit9CisKKy8qKgorICogZGV2bV9vZl9wbGF0Zm9y bV9wb3B1bGF0ZSgpIC0gUG9wdWxhdGUgcGxhdGZvcm1fZGV2aWNlcyBmcm9tIGRldmljZSB0cmVl IGRhdGEKKyAqIEBkZXY6IGRldmljZSB0aGF0IHJlcXVlc3RlZCB0byBwb3B1bGF0ZSBmcm9tIGRl dmljZSB0cmVlIGRhdGEKKyAqCisgKiBTaW1pbGFyIHRvIG9mX3BsYXRmb3JtX3BvcHVsYXRlKCks IGJ1dCB3aWxsIGF1dG9tYXRpY2FsbHkgY2FsbAorICogb2ZfcGxhdGZvcm1fZGVwb3B1bGF0ZSgp IHdoZW4gdGhlIGRldmljZSBpcyB1bmJvdW5kIGZyb20gdGhlIGJ1cy4KKyAqCisgKiBSZXR1cm5z IDAgb24gc3VjY2VzcywgPCAwIG9uIGZhaWx1cmUuCisgKi8KK2ludCBkZXZtX29mX3BsYXRmb3Jt X3BvcHVsYXRlKHN0cnVjdCBkZXZpY2UgKmRldikKK3sKKwlzdHJ1Y3QgZGV2aWNlICoqcHRyOwor CWludCByZXQ7CisKKwlpZiAoIWRldikKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlwdHIgPSBkZXZy ZXNfYWxsb2MoZGV2bV9vZl9wbGF0Zm9ybV9wb3B1bGF0ZV9yZWxlYXNlLAorCQkJICAgc2l6ZW9m KCpwdHIpLCBHRlBfS0VSTkVMKTsKKwlpZiAoIXB0cikKKwkJcmV0dXJuIC1FTk9NRU07CisKKwly ZXQgPSBvZl9wbGF0Zm9ybV9wb3B1bGF0ZShkZXYtPm9mX25vZGUsIE5VTEwsIE5VTEwsIGRldik7 CisJaWYgKHJldCkgeworCQlkZXZyZXNfZnJlZShwdHIpOworCX0gZWxzZSB7CisJCSpwdHIgPSBk ZXY7CisJCWRldnJlc19hZGQoZGV2LCBwdHIpOworCX0KKworCXJldHVybiByZXQ7Cit9CitFWFBP UlRfU1lNQk9MX0dQTChkZXZtX29mX3BsYXRmb3JtX3BvcHVsYXRlKTsKKworc3RhdGljIGludCBk ZXZtX29mX3BsYXRmb3JtX21hdGNoKHN0cnVjdCBkZXZpY2UgKmRldiwgdm9pZCAqcmVzLCB2b2lk ICpkYXRhKQoreworCXN0cnVjdCBkZXZpY2UgKipwdHIgPSByZXM7CisKKwlpZiAoIXB0cikgewor CQlXQVJOX09OKCFwdHIpOworCQlyZXR1cm4gMDsKKwl9CisKKwlyZXR1cm4gKnB0ciA9PSBkYXRh OworfQorCisvKioKKyAqIGRldm1fb2ZfcGxhdGZvcm1fZGVwb3B1bGF0ZSgpIC0gUmVtb3ZlIGRl dmljZXMgcG9wdWxhdGVkIGZyb20gZGV2aWNlIHRyZWUKKyAqIEBkZXY6IGRldmljZSB0aGF0IHJl cXVlc3RlZCB0byBkZXBvcHVsYXRlIGZyb20gZGV2aWNlIHRyZWUgZGF0YQorICoKKyAqIENvbXBs ZW1lbnRhcnkgdG8gZGV2bV9vZl9wbGF0Zm9ybV9wb3B1bGF0ZSgpLCB0aGlzIGZ1bmN0aW9uIHJl bW92ZXMgY2hpbGRyZW4KKyAqIG9mIHRoZSBnaXZlbiBkZXZpY2UgKGFuZCwgcmVjdXJyZW50bHks IHRoZWlyIGNoaWxkcmVuKSB0aGF0IGhhdmUgYmVlbgorICogY3JlYXRlZCBmcm9tIHRoZWlyIHJl c3BlY3RpdmUgZGV2aWNlIHRyZWUgbm9kZXMgKGFuZCBvbmx5IHRob3NlLAorICogbGVhdmluZyBv dGhlcnMgLSBlZy4gbWFudWFsbHkgY3JlYXRlZCAtIHVuaGFybWVkKS4KKyAqLwordm9pZCBkZXZt X29mX3BsYXRmb3JtX2RlcG9wdWxhdGUoc3RydWN0IGRldmljZSAqZGV2KQoreworCWludCByZXQ7 CisKKwlyZXQgPSBkZXZyZXNfcmVsZWFzZShkZXYsIGRldm1fb2ZfcGxhdGZvcm1fcG9wdWxhdGVf cmVsZWFzZSwKKwkJCSAgICAgZGV2bV9vZl9wbGF0Zm9ybV9tYXRjaCwgZGV2KTsKKworCVdBUk5f T04ocmV0KTsKK30KK0VYUE9SVF9TWU1CT0xfR1BMKGRldm1fb2ZfcGxhdGZvcm1fZGVwb3B1bGF0 ZSk7CisKICNpZmRlZiBDT05GSUdfT0ZfRFlOQU1JQwogc3RhdGljIGludCBvZl9wbGF0Zm9ybV9u b3RpZnkoc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYiwKIAkJCQl1bnNpZ25lZCBsb25nIGFjdGlv biwgdm9pZCAqYXJnKQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9vZl9wbGF0Zm9ybS5oIGIv aW5jbHVkZS9saW51eC9vZl9wbGF0Zm9ybS5oCmluZGV4IDk1NmExMDAuLmRjODIyNGEgMTAwNjQ0 Ci0tLSBhL2luY2x1ZGUvbGludXgvb2ZfcGxhdGZvcm0uaAorKysgYi9pbmNsdWRlL2xpbnV4L29m X3BsYXRmb3JtLmgKQEAgLTc2LDYgKzc2LDEwIEBAIGV4dGVybiBpbnQgb2ZfcGxhdGZvcm1fZGVm YXVsdF9wb3B1bGF0ZShzdHJ1Y3QgZGV2aWNlX25vZGUgKnJvb3QsCiAJCQkJCWNvbnN0IHN0cnVj dCBvZl9kZXZfYXV4ZGF0YSAqbG9va3VwLAogCQkJCQlzdHJ1Y3QgZGV2aWNlICpwYXJlbnQpOwog ZXh0ZXJuIHZvaWQgb2ZfcGxhdGZvcm1fZGVwb3B1bGF0ZShzdHJ1Y3QgZGV2aWNlICpwYXJlbnQp OworCitleHRlcm4gaW50IGRldm1fb2ZfcGxhdGZvcm1fcG9wdWxhdGUoc3RydWN0IGRldmljZSAq ZGV2KTsKKworZXh0ZXJuIHZvaWQgZGV2bV9vZl9wbGF0Zm9ybV9kZXBvcHVsYXRlKHN0cnVjdCBk ZXZpY2UgKmRldik7CiAjZWxzZQogc3RhdGljIGlubGluZSBpbnQgb2ZfcGxhdGZvcm1fcG9wdWxh dGUoc3RydWN0IGRldmljZV9ub2RlICpyb290LAogCQkJCQljb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNl X2lkICptYXRjaGVzLApAQCAtOTEsNiArOTUsMTMgQEAgc3RhdGljIGlubGluZSBpbnQgb2ZfcGxh dGZvcm1fZGVmYXVsdF9wb3B1bGF0ZShzdHJ1Y3QgZGV2aWNlX25vZGUgKnJvb3QsCiAJcmV0dXJu IC1FTk9ERVY7CiB9CiBzdGF0aWMgaW5saW5lIHZvaWQgb2ZfcGxhdGZvcm1fZGVwb3B1bGF0ZShz dHJ1Y3QgZGV2aWNlICpwYXJlbnQpIHsgfQorCitzdGF0aWMgaW5saW5lIGludCBkZXZtX29mX3Bs YXRmb3JtX3BvcHVsYXRlKHN0cnVjdCBkZXZpY2UgKmRldikKK3sKKwlyZXR1cm4gLUVOT0RFVjsK K30KKworc3RhdGljIGlubGluZSB2b2lkIGRldm1fb2ZfcGxhdGZvcm1fZGVwb3B1bGF0ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpIHsgfQogI2VuZGlmCiAKICNpZiBkZWZpbmVkKENPTkZJR19PRl9EWU5B TUlDKSAmJiBkZWZpbmVkKENPTkZJR19PRl9BRERSRVNTKQotLSAKMS45LjEKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxp c3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=