From mboxrd@z Thu Jan 1 00:00:00 1970 From: "james qian wang (Arm Technology China)" Subject: [PATCH v4 4/9] drm/komeda: Add DT parsing Date: Thu, 3 Jan 2019 11:40:38 +0000 Message-ID: <20190103113841.15403-5-james.qian.wang@arm.com> References: <20190103113841.15403-1-james.qian.wang@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190103113841.15403-1-james.qian.wang@arm.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Liviu Dudau , "daniel.vetter@ffwll.ch" , "rdunlap@infradead.org" , "robh+dt@kernel.org" Cc: Mark Rutland , "linux-doc@vger.kernel.org" , "maxime.ripard@bootlin.com" , "Jonathan Chai (Arm Technology China)" , Alexandru-Cosmin Gheorghe , "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" , "yamada.masahiro@socionext.com" , "Yiqi Kang (Arm Technology China)" , "mchehab+samsung@kernel.org" , "Tiannan Zhu (Arm Technology China)" , "corbet@lwn.net" , "airlied@linux.ie" , "malidp@foss.arm.com" , "thomas Sun (Arm Technology China)" , Ayan Halder , devicetree List-Id: devicetree@vger.kernel.org RnJvbTogImphbWVzIHFpYW4gd2FuZyAoQXJtIFRlY2hub2xvZ3kgQ2hpbmEpIiA8amFtZXMucWlh bi53YW5nQGFybS5jb20+CgpQYXJzZSBEVCBhbmQgaW5pdGlhbGl6ZSBjb3JyZXNwb25kaW5nIGRl di9waXBlbGluZSBhdHRyaWJ1dGVzLgoKQ2hhbmdlcyBpbiB2NDoKLSBSZWJhc2UuCgpDaGFuZ2Vz IGluIHYzOgotIEZpeGVkIHN0eWxlIHByb2JsZW0gZm91bmQgYnkgY2hlY2twYXRjaC5wbCAtLXN0 cmljdC4KCkNoYW5nZXMgaW4gdjI6Ci0gVW5pZmllZCBhYmJyZXZpYXRpb24gb2YgInBpcGVsaW5l IiB0byAicGlwZSIuCgpTaWduZWQtb2ZmLWJ5OiBKYW1lcyBRaWFuIFdhbmcgKEFybSBUZWNobm9s b2d5IENoaW5hKSA8amFtZXMucWlhbi53YW5nQGFybS5jb20+CkFja2VkLWJ5OiBMaXZpdSBEdWRh dSA8bGl2aXUuZHVkYXVAYXJtLmNvbT4KLS0tCiAuLi4vZ3B1L2RybS9hcm0vZGlzcGxheS9rb21l ZGEva29tZWRhX2Rldi5jICAgfCA3NiArKysrKysrKysrKysrKysrKysrCiAuLi4vZ3B1L2RybS9h cm0vZGlzcGxheS9rb21lZGEva29tZWRhX2Rldi5oICAgfCAgMyArCiAuLi4vZHJtL2FybS9kaXNw bGF5L2tvbWVkYS9rb21lZGFfcGlwZWxpbmUuYyAgfCAgNCArCiAuLi4vZHJtL2FybS9kaXNwbGF5 L2tvbWVkYS9rb21lZGFfcGlwZWxpbmUuaCAgfCAgNyArKwogNCBmaWxlcyBjaGFuZ2VkLCA5MCBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tv bWVkYS9rb21lZGFfZGV2LmMgYi9kcml2ZXJzL2dwdS9kcm0vYXJtL2Rpc3BsYXkva29tZWRhL2tv bWVkYV9kZXYuYwppbmRleCA0ZGVjMjU5Y2VjYWMuLjcyNTcyNDg0NjNiYyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfZGV2LmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfZGV2LmMKQEAgLTksNiArOSw3 NiBAQAogI2luY2x1ZGUgPGxpbnV4L29mX2dyYXBoLmg+CiAjaW5jbHVkZSAia29tZWRhX2Rldi5o IgogCitzdGF0aWMgaW50IGtvbWVkYV9wYXJzZV9waXBlX2R0KHN0cnVjdCBrb21lZGFfZGV2ICpt ZGV2LCBzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wKQoreworCXN0cnVjdCBrb21lZGFfcGlwZWxpbmUg KnBpcGU7CisJc3RydWN0IGNsayAqY2xrOworCXUzMiBwaXBlX2lkOworCWludCByZXQgPSAwOwor CisJcmV0ID0gb2ZfcHJvcGVydHlfcmVhZF91MzIobnAsICJyZWciLCAmcGlwZV9pZCk7CisJaWYg KHJldCAhPSAwIHx8IHBpcGVfaWQgPj0gbWRldi0+bl9waXBlbGluZXMpCisJCXJldHVybiAtRUlO VkFMOworCisJcGlwZSA9IG1kZXYtPnBpcGVsaW5lc1twaXBlX2lkXTsKKworCWNsayA9IG9mX2Ns a19nZXRfYnlfbmFtZShucCwgImFjbGsiKTsKKwlpZiAoSVNfRVJSKGNsaykpIHsKKwkJRFJNX0VS Uk9SKCJnZXQgYWNsayBmb3IgcGlwZWxpbmUgJWQgZmFpbGVkIVxuIiwgcGlwZV9pZCk7CisJCXJl dHVybiBQVFJfRVJSKGNsayk7CisJfQorCXBpcGUtPmFjbGsgPSBjbGs7CisKKwljbGsgPSBvZl9j bGtfZ2V0X2J5X25hbWUobnAsICJweGNsayIpOworCWlmIChJU19FUlIoY2xrKSkgeworCQlEUk1f RVJST1IoImdldCBweGNsayBmb3IgcGlwZWxpbmUgJWQgZmFpbGVkIVxuIiwgcGlwZV9pZCk7CisJ CXJldHVybiBQVFJfRVJSKGNsayk7CisJfQorCXBpcGUtPnB4bGNsayA9IGNsazsKKworCS8qIGVu dW0gcG9ydHMgKi8KKwlwaXBlLT5vZl9vdXRwdXRfZGV2ID0KKwkJb2ZfZ3JhcGhfZ2V0X3JlbW90 ZV9ub2RlKG5wLCBLT01FREFfT0ZfUE9SVF9PVVRQVVQsIDApOworCXBpcGUtPm9mX291dHB1dF9w b3J0ID0KKwkJb2ZfZ3JhcGhfZ2V0X3BvcnRfYnlfaWQobnAsIEtPTUVEQV9PRl9QT1JUX09VVFBV VCk7CisKKwlwaXBlLT5vZl9ub2RlID0gbnA7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGlu dCBrb21lZGFfcGFyc2VfZHQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3Qga29tZWRhX2RldiAq bWRldikKK3sKKwlzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2ID0gdG9fcGxhdGZvcm1fZGV2 aWNlKGRldik7CisJc3RydWN0IGRldmljZV9ub2RlICpjaGlsZCwgKm5wID0gZGV2LT5vZl9ub2Rl OworCXN0cnVjdCBjbGsgKmNsazsKKwlpbnQgcmV0OworCisJY2xrID0gZGV2bV9jbGtfZ2V0KGRl diwgIm1jbGsiKTsKKwlpZiAoSVNfRVJSKGNsaykpCisJCXJldHVybiBQVFJfRVJSKGNsayk7CisK KwltZGV2LT5tY2xrID0gY2xrOworCW1kZXYtPmlycSAgPSBwbGF0Zm9ybV9nZXRfaXJxKHBkZXYs IDApOworCWlmIChtZGV2LT5pcnEgPCAwKSB7CisJCURSTV9FUlJPUigiY291bGQgbm90IGdldCBJ UlEgbnVtYmVyLlxuIik7CisJCXJldHVybiBtZGV2LT5pcnE7CisJfQorCisJZm9yX2VhY2hfYXZh aWxhYmxlX2NoaWxkX29mX25vZGUobnAsIGNoaWxkKSB7CisJCWlmIChvZl9ub2RlX2NtcChjaGls ZC0+bmFtZSwgInBpcGVsaW5lIikgPT0gMCkgeworCQkJcmV0ID0ga29tZWRhX3BhcnNlX3BpcGVf ZHQobWRldiwgY2hpbGQpOworCQkJaWYgKHJldCkgeworCQkJCURSTV9FUlJPUigicGFyc2UgcGlw ZWxpbmUgZHQgZXJyb3IhXG4iKTsKKwkJCQlvZl9ub2RlX3B1dChjaGlsZCk7CisJCQkJYnJlYWs7 CisJCQl9CisJCX0KKwl9CisKKwlyZXR1cm4gcmV0OworfQorCiBzdHJ1Y3Qga29tZWRhX2RldiAq a29tZWRhX2Rldl9jcmVhdGUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBwbGF0Zm9y bV9kZXZpY2UgKnBkZXYgPSB0b19wbGF0Zm9ybV9kZXZpY2UoZGV2KTsKQEAgLTcxLDYgKzE0MSwx MiBAQCBzdHJ1Y3Qga29tZWRhX2RldiAqa29tZWRhX2Rldl9jcmVhdGUoc3RydWN0IGRldmljZSAq ZGV2KQogCQlnb3RvIGVycl9jbGVhbnVwOwogCX0KIAorCWVyciA9IGtvbWVkYV9wYXJzZV9kdChk ZXYsIG1kZXYpOworCWlmIChlcnIpIHsKKwkJRFJNX0VSUk9SKCJwYXJzZSBkZXZpY2UgdHJlZSBm YWlsZWQuXG4iKTsKKwkJZ290byBlcnJfY2xlYW51cDsKKwl9CisKIAlyZXR1cm4gbWRldjsKIAog ZXJyX2NsZWFudXA6CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYXJtL2Rpc3BsYXkva29t ZWRhL2tvbWVkYV9kZXYuaCBiL2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21lZGEva29t ZWRhX2Rldi5oCmluZGV4IGI0OGQ3MTEwNzFiZS4uOWM0MzU2NWZlYzJhIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vYXJtL2Rpc3BsYXkva29tZWRhL2tvbWVkYV9kZXYuaAorKysgYi9kcml2 ZXJzL2dwdS9kcm0vYXJtL2Rpc3BsYXkva29tZWRhL2tvbWVkYV9kZXYuaApAQCAtNzIsNiArNzIs OSBAQCBzdHJ1Y3Qga29tZWRhX2RldiB7CiAJLyoqIEBtY2s6IEhXIG1haW4gZW5naW5lIGNsayAq LwogCXN0cnVjdCBjbGsgKm1jbGs7CiAKKwkvKiogQGlycTogaXJxIG51bWJlciAqLworCXUzMiBp cnE7CisKIAlpbnQgbl9waXBlbGluZXM7CiAJc3RydWN0IGtvbWVkYV9waXBlbGluZSAqcGlwZWxp bmVzW0tPTUVEQV9NQVhfUElQRUxJTkVTXTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfcGlwZWxpbmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9h cm0vZGlzcGxheS9rb21lZGEva29tZWRhX3BpcGVsaW5lLmMKaW5kZXggMTc5MTIyZmM5M2ZmLi5l ZGIxY2Q3Nzk1ZjkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21l ZGEva29tZWRhX3BpcGVsaW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tv bWVkYS9rb21lZGFfcGlwZWxpbmUuYwpAQCAtNTMsNiArNTMsMTAgQEAgdm9pZCBrb21lZGFfcGlw ZWxpbmVfZGVzdHJveShzdHJ1Y3Qga29tZWRhX2RldiAqbWRldiwKIAljbGtfcHV0KHBpcGUtPnB4 bGNsayk7CiAJY2xrX3B1dChwaXBlLT5hY2xrKTsKIAorCW9mX25vZGVfcHV0KHBpcGUtPm9mX291 dHB1dF9kZXYpOworCW9mX25vZGVfcHV0KHBpcGUtPm9mX291dHB1dF9wb3J0KTsKKwlvZl9ub2Rl X3B1dChwaXBlLT5vZl9ub2RlKTsKKwogCWRldm1fa2ZyZWUobWRldi0+ZGV2LCBwaXBlKTsKIH0K IApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFf cGlwZWxpbmUuaCBiL2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21lZGEva29tZWRhX3Bp cGVsaW5lLmgKaW5kZXggN2RhYmEwZTE5NDZiLi5kMjIyMmU0NmIxMGIgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21lZGEva29tZWRhX3BpcGVsaW5lLmgKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfcGlwZWxpbmUuaApAQCAt Mjg4LDYgKzI4OCwxMyBAQCBzdHJ1Y3Qga29tZWRhX3BpcGVsaW5lIHsKIAlzdHJ1Y3Qga29tZWRh X2ltcHJvYyAqaW1wcm9jOwogCXN0cnVjdCBrb21lZGFfdGltaW5nX2N0cmxyICpjdHJscjsKIAlz dHJ1Y3Qga29tZWRhX3BpcGVsaW5lX2Z1bmNzICpmdW5jczsgLyogcHJpdmF0ZSBwaXBlbGluZSBm dW5jdGlvbnMgKi8KKworCS8qKiBAb2Zfbm9kZTogcGlwZWxpbmUgZHQgbm9kZSAqLworCXN0cnVj dCBkZXZpY2Vfbm9kZSAqb2Zfbm9kZTsKKwkvKiogQG9mX291dHB1dF9wb3J0OiBwaXBlbGluZSBv dXRwdXQgcG9ydCAqLworCXN0cnVjdCBkZXZpY2Vfbm9kZSAqb2Zfb3V0cHV0X3BvcnQ7CisJLyoq IEBvZl9vdXRwdXRfZGV2OiBvdXRwdXQgY29ubmVjdG9yIGRldmljZSBub2RlICovCisJc3RydWN0 IGRldmljZV9ub2RlICpvZl9vdXRwdXRfZGV2OwogfTsKIAogLyoqCi0tIAoyLjE3LjEKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWls aW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=