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: dmaengine: qcom_hidma: simplify DT resource parsing From: Rob Herring Message-Id: <20180104224542.15333-2-robh@kernel.org> Date: Thu, 4 Jan 2018 16:45:40 -0600 To: Vinod Koul Cc: linux-kernel@vger.kernel.org, Andy Gross , David Brown , Dan Williams , linux-arm-msm@vger.kernel.org, linux-soc@vger.kernel.org, dmaengine@vger.kernel.org List-ID: VGhlIGhpZG1hIGRyaXZlciBvcGVuIGNvZGVzIHBvcHVsYXRpbmcgYWRkcmVzcyBhbmQgSVJRIHJl c291cmNlcyBmcm9tIERULgpXZSBoYXZlIHN0YW5kYXJkIGZ1bmN0aW9ucyBvZl9hZGRyZXNzX3Rv X3Jlc291cmNlIGFuZCBvZl9pcnFfdG9fcmVzb3VyY2UKZm9yIHRoaXMsIHNvIHVzZSB0aGVtIGlu c3RlYWQuCgpUaGUgRFQgYmluZGluZyBzdGF0ZXMgZWFjaCBjaGlsZCBzaG91bGQgaGF2ZSAyIGFk ZHJlc3NlcyBhbmQgMSBJUlEsIHNvIHdlCmNhbiBzaW1wbGlmeSB0aGUgbG9naWMgYW5kIGRvIGEg Zml4ZWQgc2l6ZSByZXNvdXJjZSBhbGxvY2F0aW9uLiBVc2luZyB0aGUKc3RhbmRhcmQgb2ZfYWRk cmVzc190b19yZXNvdXJjZSB3aWxsIGFsc28gZG8gYW55IGFkZHJlc3MgdHJhbnNsYXRpb24gd2hp Y2gKd2FzIG1pc3NpbmcuCgpDYzogQW5keSBHcm9zcyA8YW5keS5ncm9zc0BsaW5hcm8ub3JnPgpD YzogRGF2aWQgQnJvd24gPGRhdmlkLmJyb3duQGxpbmFyby5vcmc+CkNjOiBEYW4gV2lsbGlhbXMg PGRhbi5qLndpbGxpYW1zQGludGVsLmNvbT4KQ2M6IFZpbm9kIEtvdWwgPHZpbm9kLmtvdWxAaW50 ZWwuY29tPgpDYzogbGludXgtYXJtLW1zbUB2Z2VyLmtlcm5lbC5vcmcKQ2M6IGxpbnV4LXNvY0B2 Z2VyLmtlcm5lbC5vcmcKQ2M6IGRtYWVuZ2luZUB2Z2VyLmtlcm5lbC5vcmcKU2lnbmVkLW9mZi1i eTogUm9iIEhlcnJpbmcgPHJvYmhAa2VybmVsLm9yZz4KLS0tCiBkcml2ZXJzL2RtYS9xY29tL2hp ZG1hX21nbXQuYyB8IDYxICsrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KIDEgZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCA0NiBkZWxldGlvbnMoLSkKCi0t CjIuMTQuMQotLQpUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMgbGlzdDogc2VuZCB0aGUgbGluZSAi dW5zdWJzY3JpYmUgZG1hZW5naW5lIiBpbgp0aGUgYm9keSBvZiBhIG1lc3NhZ2UgdG8gbWFqb3Jk b21vQHZnZXIua2VybmVsLm9yZwpNb3JlIG1ham9yZG9tbyBpbmZvIGF0ICBodHRwOi8vdmdlci5r ZXJuZWwub3JnL21ham9yZG9tby1pbmZvLmh0bWwKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2RtYS9x Y29tL2hpZG1hX21nbXQuYyBiL2RyaXZlcnMvZG1hL3Fjb20vaGlkbWFfbWdtdC5jCmluZGV4IDcz MzVlMmViOWI3Mi4uMDAwYzcwMTljYTdkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2RtYS9xY29tL2hp ZG1hX21nbXQuYworKysgYi9kcml2ZXJzL2RtYS9xY29tL2hpZG1hX21nbXQuYwpAQCAtMTcsNiAr MTcsNyBAQAogI2luY2x1ZGUgPGxpbnV4L2FjcGkuaD4KICNpbmNsdWRlIDxsaW51eC9vZi5oPgog I2luY2x1ZGUgPGxpbnV4L3Byb3BlcnR5Lmg+CisjaW5jbHVkZSA8bGludXgvb2ZfYWRkcmVzcy5o PgogI2luY2x1ZGUgPGxpbnV4L29mX2lycS5oPgogI2luY2x1ZGUgPGxpbnV4L29mX3BsYXRmb3Jt Lmg+CiAjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+CkBAIC0zNTYsNjcgKzM1NywzNyBAQCBzdGF0 aWMgaW50IF9faW5pdCBoaWRtYV9tZ210X29mX3BvcHVsYXRlX2NoYW5uZWxzKHN0cnVjdCBkZXZp Y2Vfbm9kZSAqbnApCiB7CiAJc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldl9wYXJlbnQgPSBv Zl9maW5kX2RldmljZV9ieV9ub2RlKG5wKTsKIAlzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlX2luZm8g cGRldmluZm87Ci0Jc3RydWN0IG9mX3BoYW5kbGVfYXJncyBvdXRfaXJxOwogCXN0cnVjdCBkZXZp Y2Vfbm9kZSAqY2hpbGQ7Ci0Jc3RydWN0IHJlc291cmNlICpyZXMgPSBOVUxMOwotCWNvbnN0IF9f YmUzMiAqY2VsbDsKLQlpbnQgcmV0ID0gMCwgc2l6ZSwgaSwgbnVtOwotCXU2NCBhZGRyLCBhZGRy X3NpemU7CisJc3RydWN0IHJlc291cmNlICpyZXM7CisJaW50IHJldCA9IDA7CisKKwkvKiBhbGxv Y2F0ZSBhIHJlc291cmNlIGFycmF5ICovCisJcmVzID0ga2NhbGxvYygzLCBzaXplb2YoKnJlcyks IEdGUF9LRVJORUwpOworCWlmICghcmVzKQorCQlyZXR1cm4gLUVOT01FTTsKCiAJZm9yX2VhY2hf YXZhaWxhYmxlX2NoaWxkX29mX25vZGUobnAsIGNoaWxkKSB7Ci0JCXN0cnVjdCByZXNvdXJjZSAq cmVzX2l0ZXI7CiAJCXN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKm5ld19wZGV2OwoKLQkJY2VsbCA9 IG9mX2dldF9wcm9wZXJ0eShjaGlsZCwgInJlZyIsICZzaXplKTsKLQkJaWYgKCFjZWxsKSB7Ci0J CQlyZXQgPSAtRUlOVkFMOworCQlyZXQgPSBvZl9hZGRyZXNzX3RvX3Jlc291cmNlKGNoaWxkLCAw LCAmcmVzWzBdKTsKKwkJaWYgKCFyZXQpCiAJCQlnb3RvIG91dDsKLQkJfQotCi0JCXNpemUgLz0g c2l6ZW9mKCpjZWxsKTsKLQkJbnVtID0gc2l6ZSAvCi0JCQkob2Zfbl9hZGRyX2NlbGxzKGNoaWxk KSArIG9mX25fc2l6ZV9jZWxscyhjaGlsZCkpICsgMTsKCi0JCS8qIGFsbG9jYXRlIGEgcmVzb3Vy Y2UgYXJyYXkgKi8KLQkJcmVzID0ga2NhbGxvYyhudW0sIHNpemVvZigqcmVzKSwgR0ZQX0tFUk5F TCk7Ci0JCWlmICghcmVzKSB7Ci0JCQlyZXQgPSAtRU5PTUVNOworCQlyZXQgPSBvZl9hZGRyZXNz X3RvX3Jlc291cmNlKGNoaWxkLCAxLCAmcmVzWzFdKTsKKwkJaWYgKCFyZXQpCiAJCQlnb3RvIG91 dDsKLQkJfQotCi0JCS8qIHJlYWQgZWFjaCByZWcgdmFsdWUgKi8KLQkJaSA9IDA7Ci0JCXJlc19p dGVyID0gcmVzOwotCQl3aGlsZSAoaSA8IHNpemUpIHsKLQkJCWFkZHIgPSBvZl9yZWFkX251bWJl cigmY2VsbFtpXSwKLQkJCQkJICAgICAgb2Zfbl9hZGRyX2NlbGxzKGNoaWxkKSk7Ci0JCQlpICs9 IG9mX25fYWRkcl9jZWxscyhjaGlsZCk7Ci0KLQkJCWFkZHJfc2l6ZSA9IG9mX3JlYWRfbnVtYmVy KCZjZWxsW2ldLAotCQkJCQkJICAgb2Zfbl9zaXplX2NlbGxzKGNoaWxkKSk7Ci0JCQlpICs9IG9m X25fc2l6ZV9jZWxscyhjaGlsZCk7Ci0KLQkJCXJlc19pdGVyLT5zdGFydCA9IGFkZHI7Ci0JCQly ZXNfaXRlci0+ZW5kID0gcmVzX2l0ZXItPnN0YXJ0ICsgYWRkcl9zaXplIC0gMTsKLQkJCXJlc19p dGVyLT5mbGFncyA9IElPUkVTT1VSQ0VfTUVNOwotCQkJcmVzX2l0ZXIrKzsKLQkJfQoKLQkJcmV0 ID0gb2ZfaXJxX3BhcnNlX29uZShjaGlsZCwgMCwgJm91dF9pcnEpOwotCQlpZiAocmV0KQorCQly ZXQgPSBvZl9pcnFfdG9fcmVzb3VyY2UoY2hpbGQsIDAsICZyZXNbMl0pOworCQlpZiAocmV0IDw9 IDApCiAJCQlnb3RvIG91dDsKCi0JCXJlc19pdGVyLT5zdGFydCA9IGlycV9jcmVhdGVfb2ZfbWFw cGluZygmb3V0X2lycSk7Ci0JCXJlc19pdGVyLT5uYW1lID0gImhpZG1hIGV2ZW50IGlycSI7Ci0J CXJlc19pdGVyLT5mbGFncyA9IElPUkVTT1VSQ0VfSVJROwotCiAJCW1lbXNldCgmcGRldmluZm8s IDAsIHNpemVvZihwZGV2aW5mbykpOwogCQlwZGV2aW5mby5md25vZGUgPSAmY2hpbGQtPmZ3bm9k ZTsKIAkJcGRldmluZm8ucGFyZW50ID0gcGRldl9wYXJlbnQgPyAmcGRldl9wYXJlbnQtPmRldiA6 IE5VTEw7CiAJCXBkZXZpbmZvLm5hbWUgPSBjaGlsZC0+bmFtZTsKIAkJcGRldmluZm8uaWQgPSBv YmplY3RfY291bnRlcisrOwogCQlwZGV2aW5mby5yZXMgPSByZXM7Ci0JCXBkZXZpbmZvLm51bV9y ZXMgPSBudW07CisJCXBkZXZpbmZvLm51bV9yZXMgPSAzOwogCQlwZGV2aW5mby5kYXRhID0gTlVM TDsKIAkJcGRldmluZm8uc2l6ZV9kYXRhID0gMDsKIAkJcGRldmluZm8uZG1hX21hc2sgPSBETUFf QklUX01BU0soNjQpOwpAQCAtNDM0LDggKzQwNSw2IEBAIHN0YXRpYyBpbnQgX19pbml0IGhpZG1h X21nbXRfb2ZfcG9wdWxhdGVfY2hhbm5lbHMoc3RydWN0IGRldmljZV9ub2RlICpucCkKIAkJICov CiAJCW9mX21zaV9jb25maWd1cmUoJm5ld19wZGV2LT5kZXYsIGNoaWxkKTsKIAkJb2Zfbm9kZV9w dXQoY2hpbGQpOwotCQlrZnJlZShyZXMpOwotCQlyZXMgPSBOVUxMOwogCX0KIG91dDoKIAlrZnJl ZShyZXMpOwo=