From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [18/21] edac: cpc925: use for_each_of_cpu_node iterator From: Rob Herring Message-Id: <20180905193738.19325-19-robh@kernel.org> Date: Wed, 5 Sep 2018 14:37:35 -0500 To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Borislav Petkov , Mauro Carvalho Chehab , linux-edac@vger.kernel.org List-ID: VXNlIHRoZSBmb3JfZWFjaF9vZl9jcHVfbm9kZSBpdGVyYXRvciB0byBpdGVyYXRlIG92ZXIgY3B1 IG5vZGVzLiBUaGlzCmhhcyB0aGUgc2lkZSBlZmZlY3Qgb2YgZGVmYXVsdGluZyB0byBpdGVyYXRp bmcgdXNpbmcgImNwdSIgbm9kZSBuYW1lcyBpbgpwcmVmZXJlbmNlIHRvIHRoZSBkZXByZWNhdGVk IChmb3IgRkRUKSBkZXZpY2VfdHlwZSA9PSAiY3B1Ii4KCkNjOiBCb3Jpc2xhdiBQZXRrb3YgPGJw QGFsaWVuOC5kZT4KQ2M6IE1hdXJvIENhcnZhbGhvIENoZWhhYiA8bWNoZWhhYkBrZXJuZWwub3Jn PgpDYzogbGludXgtZWRhY0B2Z2VyLmtlcm5lbC5vcmcKU2lnbmVkLW9mZi1ieTogUm9iIEhlcnJp bmcgPHJvYmhAa2VybmVsLm9yZz4KLS0tClBsZWFzZSBhY2sgYW5kIEkgd2lsbCB0YWtlIHZpYSB0 aGUgRFQgdHJlZS4gVGhpcyBpcyBkZXBlbmRlbnQgb24gdGhlCmZpcnN0IDIgcGF0Y2hlcy4KCiBk cml2ZXJzL2VkYWMvY3BjOTI1X2VkYWMuYyB8IDIwICsrLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlvbnMoLSkKCi0tCjIuMTcuMQoK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZWRhYy9jcGM5MjVfZWRhYy5jIGIvZHJpdmVycy9lZGFjL2Nw YzkyNV9lZGFjLmMKaW5kZXggMmM5OGUwMjBkZjA1Li4zYzA4ODFhYzk4ODAgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZWRhYy9jcGM5MjVfZWRhYy5jCisrKyBiL2RyaXZlcnMvZWRhYy9jcGM5MjVfZWRh Yy5jCkBAIC01OTMsOCArNTkzLDcgQEAgc3RhdGljIHZvaWQgY3BjOTI1X21jX2NoZWNrKHN0cnVj dCBtZW1fY3RsX2luZm8gKm1jaSkKIC8qKioqKioqKioqKioqKioqKioqKiBDUFUgZXJyIGRldmlj ZSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogc3RhdGljIHUzMiBjcGM5MjVfY3B1 X21hc2tfZGlzYWJsZWQodm9pZCkKIHsKLQlzdHJ1Y3QgZGV2aWNlX25vZGUgKmNwdXM7Ci0Jc3Ry dWN0IGRldmljZV9ub2RlICpjcHVub2RlID0gTlVMTDsKKwlzdHJ1Y3QgZGV2aWNlX25vZGUgKmNw dW5vZGU7CiAJc3RhdGljIHUzMiBtYXNrID0gMDsKCiAJLyogdXNlIGNhY2hlZCB2YWx1ZSBpZiBh dmFpbGFibGUgKi8KQEAgLTYwMywyMCArNjAyLDggQEAgc3RhdGljIHUzMiBjcGM5MjVfY3B1X21h c2tfZGlzYWJsZWQodm9pZCkKCiAJbWFzayA9IEFQSU1BU0tfQURJMCB8IEFQSU1BU0tfQURJMTsK Ci0JY3B1cyA9IG9mX2ZpbmRfbm9kZV9ieV9wYXRoKCIvY3B1cyIpOwotCWlmIChjcHVzID09IE5V TEwpIHsKLQkJY3BjOTI1X3ByaW50ayhLRVJOX0RFQlVHLCAiTm8gL2NwdXMgbm9kZSAhXG4iKTsK LQkJcmV0dXJuIDA7Ci0JfQotCi0Jd2hpbGUgKChjcHVub2RlID0gb2ZfZ2V0X25leHRfY2hpbGQo Y3B1cywgY3B1bm9kZSkpICE9IE5VTEwpIHsKKwlmb3JfZWFjaF9vZl9jcHVfbm9kZShjcHVub2Rl KSB7CiAJCWNvbnN0IHUzMiAqcmVnID0gb2ZfZ2V0X3Byb3BlcnR5KGNwdW5vZGUsICJyZWciLCBO VUxMKTsKLQotCQlpZiAoc3RyY21wKGNwdW5vZGUtPnR5cGUsICJjcHUiKSkgewotCQkJY3BjOTI1 X3ByaW50ayhLRVJOX0VSUiwgIk5vdCBhIGNwdSBub2RlIGluIC9jcHVzOiAlc1xuIiwgY3B1bm9k ZS0+bmFtZSk7Ci0JCQljb250aW51ZTsKLQkJfQotCiAJCWlmIChyZWcgPT0gTlVMTCB8fCAqcmVn ID4gMikgewogCQkJY3BjOTI1X3ByaW50ayhLRVJOX0VSUiwgIkJhZCByZWcgdmFsdWUgYXQgJXBP RlxuIiwgY3B1bm9kZSk7CiAJCQljb250aW51ZTsKQEAgLTYzMyw5ICs2MjAsNiBAQCBzdGF0aWMg dTMyIGNwYzkyNV9jcHVfbWFza19kaXNhYmxlZCh2b2lkKQogCQkJCSJBc3N1bWluZyBQSSBpZCBp cyBlcXVhbCB0byBDUFUgTVBJQyBpZCFcbiIpOwogCX0KCi0Jb2Zfbm9kZV9wdXQoY3B1bm9kZSk7 Ci0Jb2Zfbm9kZV9wdXQoY3B1cyk7Ci0KIAlyZXR1cm4gbWFzazsKIH0KCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rob Herring Subject: [PATCH 18/21] edac: cpc925: use for_each_of_cpu_node iterator Date: Wed, 5 Sep 2018 14:37:35 -0500 Message-ID: <20180905193738.19325-19-robh@kernel.org> References: <20180905193738.19325-1-robh@kernel.org> Return-path: In-Reply-To: <20180905193738.19325-1-robh@kernel.org> Sender: linux-kernel-owner@vger.kernel.org To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Borislav Petkov , Mauro Carvalho Chehab , linux-edac@vger.kernel.org List-Id: devicetree@vger.kernel.org Use the for_each_of_cpu_node iterator to iterate over cpu nodes. This has the side effect of defaulting to iterating using "cpu" node names in preference to the deprecated (for FDT) device_type == "cpu". Cc: Borislav Petkov Cc: Mauro Carvalho Chehab Cc: linux-edac@vger.kernel.org Signed-off-by: Rob Herring --- Please ack and I will take via the DT tree. This is dependent on the first 2 patches. drivers/edac/cpc925_edac.c | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/drivers/edac/cpc925_edac.c b/drivers/edac/cpc925_edac.c index 2c98e020df05..3c0881ac9880 100644 --- a/drivers/edac/cpc925_edac.c +++ b/drivers/edac/cpc925_edac.c @@ -593,8 +593,7 @@ static void cpc925_mc_check(struct mem_ctl_info *mci) /******************** CPU err device********************************/ static u32 cpc925_cpu_mask_disabled(void) { - struct device_node *cpus; - struct device_node *cpunode = NULL; + struct device_node *cpunode; static u32 mask = 0; /* use cached value if available */ @@ -603,20 +602,8 @@ static u32 cpc925_cpu_mask_disabled(void) mask = APIMASK_ADI0 | APIMASK_ADI1; - cpus = of_find_node_by_path("/cpus"); - if (cpus == NULL) { - cpc925_printk(KERN_DEBUG, "No /cpus node !\n"); - return 0; - } - - while ((cpunode = of_get_next_child(cpus, cpunode)) != NULL) { + for_each_of_cpu_node(cpunode) { const u32 *reg = of_get_property(cpunode, "reg", NULL); - - if (strcmp(cpunode->type, "cpu")) { - cpc925_printk(KERN_ERR, "Not a cpu node in /cpus: %s\n", cpunode->name); - continue; - } - if (reg == NULL || *reg > 2) { cpc925_printk(KERN_ERR, "Bad reg value at %pOF\n", cpunode); continue; @@ -633,9 +620,6 @@ static u32 cpc925_cpu_mask_disabled(void) "Assuming PI id is equal to CPU MPIC id!\n"); } - of_node_put(cpunode); - of_node_put(cpus); - return mask; } -- 2.17.1