From mboxrd@z Thu Jan 1 00:00:00 1970 From: Archit Taneja Subject: [PATCH v3 06/12] drm/msm/dsi: Parse bus clocks from a list Date: Tue, 1 Dec 2015 15:30:04 +0530 Message-ID: <1448964010-18207-7-git-send-email-architt@codeaurora.org> References: <1447844131-4182-1-git-send-email-architt@codeaurora.org> <1448964010-18207-1-git-send-email-architt@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1448964010-18207-1-git-send-email-architt@codeaurora.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, robdclark@gmail.com Cc: linux-arm-msm@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org RFNJIGJ1cyBjbG9ja3Mgc2VlbSB0byB2YXJ5IGJldHdlZW4gZGlmZmVyZW50IERTSSBob3N0IHZl cnNpb25zLCBhbmQgdGhlClNPQyB0byB3aGljaCB0aGV5IGJlbG9uZy4gRXZlbiB0aGUgZW5hYmxl L2Rpc2FibGUgc2VxdWVuY2UgdmFyaWVzLgoKUHJvdmlkZSBhIGxpc3Qgb2YgYnVzIGNsb2NrIG5h bWVzIGluIGRzaV9jZmcuIFRoZSBkcml2ZXIgd2lsbCB1c2UgdGhpcyB0bwpyZXRyaWV2ZSB0aGUg Y2xvY2tzLCBhbmQgZW5hYmxlL2Rpc2FibGUgdGhlbS4KCkFkZCBidXMgY2xvY2sgbGlzdHMgZm9y IERTSTZHLCBhbmQgRFNJIGZvciBNU004OTE2KHRoaXMgaXMgRFNJNkcgdG9vLCBidXQKdGhlcmUg aXMgbm8gTU1TU19DQyBzcGVjaWZpYyBjbG9jayBzaW5jZSB0aGVyZSBpcyBubyBNTVNTIGNsb2Nr IGNvbnRyb2xsZXIKb24gODkxNikuCgpTaWduZWQtb2ZmLWJ5OiBBcmNoaXQgVGFuZWphIDxhcmNo aXR0QGNvZGVhdXJvcmEub3JnPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaS5oICAg ICAgfCAgIDEgKwogZHJpdmVycy9ncHUvZHJtL21zbS9kc2kvZHNpX2NmZy5jICB8ICAxNiArKysr Ky0KIGRyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaV9jZmcuaCAgfCAgIDIgKwogZHJpdmVycy9n cHUvZHJtL21zbS9kc2kvZHNpX2hvc3QuYyB8IDEwNyArKysrKysrKysrKystLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiA0IGZpbGVzIGNoYW5nZWQsIDUzIGluc2VydGlvbnMoKyksIDczIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaS5oIGIvZHJp dmVycy9ncHUvZHJtL21zbS9kc2kvZHNpLmgKaW5kZXggODE0MGU4Yi4uNzMzNmI1NSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kc2kvZHNpLmgKKysrIGIvZHJpdmVycy9ncHUvZHJt L21zbS9kc2kvZHNpLmgKQEAgLTM2LDYgKzM2LDcgQEAgZW51bSBtc21fZHNpX3BoeV90eXBlIHsK IH07CiAKICNkZWZpbmUgRFNJX0RFVl9SRUdVTEFUT1JfTUFYCTgKKyNkZWZpbmUgRFNJX0JVU19D TEtfTUFYCQk0CiAKIC8qIFJlZ3VsYXRvcnMgZm9yIERTSSBkZXZpY2VzICovCiBzdHJ1Y3QgZHNp X3JlZ19lbnRyeSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2RzaS9kc2lfY2Zn LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2RzaS9kc2lfY2ZnLmMKaW5kZXggNTg3MmQ1ZS4uYzQw MDQ0ZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kc2kvZHNpX2NmZy5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaV9jZmcuYwpAQCAtMTgsNiArMTgsMTAgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBtc21fZHNpX2NvbmZpZyBkc2lfdjJfY2ZnID0gewogCS5pb19vZmZz ZXQgPSAwLAogfTsKIAorc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBkc2lfNmdfYnVzX2Nsa19u YW1lc1tdID0geworCSJtZHBfY29yZV9jbGsiLCAiaWZhY2VfY2xrIiwgImJ1c19jbGsiLCAiY29y ZV9tbXNzX2NsayIsCit9OworCiBzdGF0aWMgY29uc3Qgc3RydWN0IG1zbV9kc2lfY29uZmlnIG1z bTg5NzRfYXBxODA4NF9kc2lfY2ZnID0gewogCS5pb19vZmZzZXQgPSBEU0lfNkdfUkVHX1NISUZU LAogCS5yZWdfY2ZnID0gewpAQCAtMjksNiArMzMsMTIgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBt c21fZHNpX2NvbmZpZyBtc204OTc0X2FwcTgwODRfZHNpX2NmZyA9IHsKIAkJCXsidmRkaW8iLCAx ODAwMDAwLCAxODAwMDAwLCAxMDAwMDAsIDEwMH0sCiAJCX0sCiAJfSwKKwkuYnVzX2Nsa19uYW1l cyA9IGRzaV82Z19idXNfY2xrX25hbWVzLAorCS5udW1fYnVzX2Nsa3MgPSBBUlJBWV9TSVpFKGRz aV82Z19idXNfY2xrX25hbWVzKSwKK307CisKK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3QgZHNp Xzg5MTZfYnVzX2Nsa19uYW1lc1tdID0geworCSJtZHBfY29yZV9jbGsiLCAiaWZhY2VfY2xrIiwg ImJ1c19jbGsiLAogfTsKIAogc3RhdGljIGNvbnN0IHN0cnVjdCBtc21fZHNpX2NvbmZpZyBtc204 OTE2X2RzaV9jZmcgPSB7CkBAIC00Miw2ICs1Miw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXNt X2RzaV9jb25maWcgbXNtODkxNl9kc2lfY2ZnID0gewogCQkJeyJ2ZGRpbyIsIDE4MDAwMDAsIDE4 MDAwMDAsIDEwMDAwMCwgMTAwfSwKIAkJfSwKIAl9LAorCS5idXNfY2xrX25hbWVzID0gZHNpXzg5 MTZfYnVzX2Nsa19uYW1lcywKKwkubnVtX2J1c19jbGtzID0gQVJSQVlfU0laRShkc2lfODkxNl9i dXNfY2xrX25hbWVzKSwKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXNtX2RzaV9jb25maWcg bXNtODk5NF9kc2lfY2ZnID0gewpAQCAtNTcsNyArNjksOSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0 IG1zbV9kc2lfY29uZmlnIG1zbTg5OTRfZHNpX2NmZyA9IHsKIAkJCXsibGFiX3JlZyIsIC0xLCAt MSwgLTEsIC0xfSwKIAkJCXsiaWJiX3JlZyIsIC0xLCAtMSwgLTEsIC0xfSwKIAkJfSwKLQl9CisJ fSwKKwkuYnVzX2Nsa19uYW1lcyA9IGRzaV82Z19idXNfY2xrX25hbWVzLAorCS5udW1fYnVzX2Ns a3MgPSBBUlJBWV9TSVpFKGRzaV82Z19idXNfY2xrX25hbWVzKSwKIH07CiAKIHN0YXRpYyBjb25z dCBzdHJ1Y3QgbXNtX2RzaV9jZmdfaGFuZGxlciBkc2lfY2ZnX2hhbmRsZXJzW10gPSB7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2RzaS9kc2lfY2ZnLmggYi9kcml2ZXJzL2dwdS9k cm0vbXNtL2RzaS9kc2lfY2ZnLmgKaW5kZXggNGNmODg3Mi4uNWEzNjgzNiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL21zbS9kc2kvZHNpX2NmZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9t c20vZHNpL2RzaV9jZmcuaApAQCAtMzAsNiArMzAsOCBAQAogc3RydWN0IG1zbV9kc2lfY29uZmln IHsKIAl1MzIgaW9fb2Zmc2V0OwogCXN0cnVjdCBkc2lfcmVnX2NvbmZpZyByZWdfY2ZnOworCWNv bnN0IGNoYXIgKiBjb25zdCAqYnVzX2Nsa19uYW1lczsKKwljb25zdCBpbnQgbnVtX2J1c19jbGtz OwogfTsKIAogc3RydWN0IG1zbV9kc2lfY2ZnX2hhbmRsZXIgewpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL21zbS9kc2kvZHNpX2hvc3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2Rz aV9ob3N0LmMKaW5kZXggZjc4NzAyNC4uNTZjNzUzNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL21zbS9kc2kvZHNpX2hvc3QuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2RzaS9kc2lf aG9zdC5jCkBAIC0xMDMsMTAgKzEwMyw5IEBAIHN0cnVjdCBtc21fZHNpX2hvc3QgewogCiAJdm9p ZCBfX2lvbWVtICpjdHJsX2Jhc2U7CiAJc3RydWN0IHJlZ3VsYXRvcl9idWxrX2RhdGEgc3VwcGxp ZXNbRFNJX0RFVl9SRUdVTEFUT1JfTUFYXTsKLQlzdHJ1Y3QgY2xrICptZHBfY29yZV9jbGs7Ci0J c3RydWN0IGNsayAqYWhiX2NsazsKLQlzdHJ1Y3QgY2xrICpheGlfY2xrOwotCXN0cnVjdCBjbGsg Km1tc3NfbWlzY19haGJfY2xrOworCisJc3RydWN0IGNsayAqYnVzX2Nsa3NbRFNJX0JVU19DTEtf TUFYXTsKKwogCXN0cnVjdCBjbGsgKmJ5dGVfY2xrOwogCXN0cnVjdCBjbGsgKmVzY19jbGs7CiAJ c3RydWN0IGNsayAqcGl4ZWxfY2xrOwpAQCAtMzE5LDQwICszMTgsMjIgQEAgc3RhdGljIGludCBk c2lfcmVndWxhdG9yX2luaXQoc3RydWN0IG1zbV9kc2lfaG9zdCAqbXNtX2hvc3QpCiBzdGF0aWMg aW50IGRzaV9jbGtfaW5pdChzdHJ1Y3QgbXNtX2RzaV9ob3N0ICptc21faG9zdCkKIHsKIAlzdHJ1 Y3QgZGV2aWNlICpkZXYgPSAmbXNtX2hvc3QtPnBkZXYtPmRldjsKLQlpbnQgcmV0ID0gMDsKLQot CW1zbV9ob3N0LT5tZHBfY29yZV9jbGsgPSBkZXZtX2Nsa19nZXQoZGV2LCAibWRwX2NvcmVfY2xr Iik7Ci0JaWYgKElTX0VSUihtc21faG9zdC0+bWRwX2NvcmVfY2xrKSkgewotCQlyZXQgPSBQVFJf RVJSKG1zbV9ob3N0LT5tZHBfY29yZV9jbGspOwotCQlwcl9lcnIoIiVzOiBVbmFibGUgdG8gZ2V0 IG1kcCBjb3JlIGNsay4gcmV0PSVkXG4iLAotCQkJX19mdW5jX18sIHJldCk7Ci0JCWdvdG8gZXhp dDsKLQl9Ci0KLQltc21faG9zdC0+YWhiX2NsayA9IGRldm1fY2xrX2dldChkZXYsICJpZmFjZV9j bGsiKTsKLQlpZiAoSVNfRVJSKG1zbV9ob3N0LT5haGJfY2xrKSkgewotCQlyZXQgPSBQVFJfRVJS KG1zbV9ob3N0LT5haGJfY2xrKTsKLQkJcHJfZXJyKCIlczogVW5hYmxlIHRvIGdldCBtZHNzIGFo YiBjbGsuIHJldD0lZFxuIiwKLQkJCV9fZnVuY19fLCByZXQpOwotCQlnb3RvIGV4aXQ7Ci0JfQot Ci0JbXNtX2hvc3QtPmF4aV9jbGsgPSBkZXZtX2Nsa19nZXQoZGV2LCAiYnVzX2NsayIpOwotCWlm IChJU19FUlIobXNtX2hvc3QtPmF4aV9jbGspKSB7Ci0JCXJldCA9IFBUUl9FUlIobXNtX2hvc3Qt PmF4aV9jbGspOwotCQlwcl9lcnIoIiVzOiBVbmFibGUgdG8gZ2V0IGF4aSBidXMgY2xrLiByZXQ9 JWRcbiIsCi0JCQlfX2Z1bmNfXywgcmV0KTsKLQkJZ290byBleGl0OwotCX0KLQotCW1zbV9ob3N0 LT5tbXNzX21pc2NfYWhiX2NsayA9IGRldm1fY2xrX2dldChkZXYsICJjb3JlX21tc3NfY2xrIik7 Ci0JaWYgKElTX0VSUihtc21faG9zdC0+bW1zc19taXNjX2FoYl9jbGspKSB7Ci0JCXJldCA9IFBU Ul9FUlIobXNtX2hvc3QtPm1tc3NfbWlzY19haGJfY2xrKTsKLQkJcHJfZXJyKCIlczogVW5hYmxl IHRvIGdldCBtbXNzIG1pc2MgYWhiIGNsay4gcmV0PSVkXG4iLAotCQkJX19mdW5jX18sIHJldCk7 Ci0JCWdvdG8gZXhpdDsKKwljb25zdCBzdHJ1Y3QgbXNtX2RzaV9jb25maWcgKmNmZyA9IG1zbV9o b3N0LT5jZmdfaG5kLT5jZmc7CisJaW50IGksIHJldCA9IDA7CisKKwkvKiBnZXQgYnVzIGNsb2Nr cyAqLworCWZvciAoaSA9IDA7IGkgPCBjZmctPm51bV9idXNfY2xrczsgaSsrKSB7CisJCW1zbV9o b3N0LT5idXNfY2xrc1tpXSA9IGRldm1fY2xrX2dldChkZXYsCisJCQkJCQljZmctPmJ1c19jbGtf bmFtZXNbaV0pOworCQlpZiAoSVNfRVJSKG1zbV9ob3N0LT5idXNfY2xrc1tpXSkpIHsKKwkJCXJl dCA9IFBUUl9FUlIobXNtX2hvc3QtPmJ1c19jbGtzW2ldKTsKKwkJCXByX2VycigiJXM6IFVuYWJs ZSB0byBnZXQgJXMsIHJldCA9ICVkXG4iLAorCQkJCV9fZnVuY19fLCBjZmctPmJ1c19jbGtfbmFt ZXNbaV0sIHJldCk7CisJCQlnb3RvIGV4aXQ7CisJCX0KIAl9CiAKKwkvKiBnZXQgbGluayBhbmQg c291cmNlIGNsb2NrcyAqLwogCW1zbV9ob3N0LT5ieXRlX2NsayA9IGRldm1fY2xrX2dldChkZXYs ICJieXRlX2NsayIpOwogCWlmIChJU19FUlIobXNtX2hvc3QtPmJ5dGVfY2xrKSkgewogCQlyZXQg PSBQVFJfRVJSKG1zbV9ob3N0LT5ieXRlX2Nsayk7CkBAIC0zOTksNTUgKzM4MCwzNyBAQCBleGl0 OgogCiBzdGF0aWMgaW50IGRzaV9idXNfY2xrX2VuYWJsZShzdHJ1Y3QgbXNtX2RzaV9ob3N0ICpt c21faG9zdCkKIHsKLQlpbnQgcmV0OworCWNvbnN0IHN0cnVjdCBtc21fZHNpX2NvbmZpZyAqY2Zn ID0gbXNtX2hvc3QtPmNmZ19obmQtPmNmZzsKKwlpbnQgaSwgcmV0OwogCiAJREJHKCJpZD0lZCIs IG1zbV9ob3N0LT5pZCk7CiAKLQlyZXQgPSBjbGtfcHJlcGFyZV9lbmFibGUobXNtX2hvc3QtPm1k cF9jb3JlX2Nsayk7Ci0JaWYgKHJldCkgewotCQlwcl9lcnIoIiVzOiBmYWlsZWQgdG8gZW5hYmxl IG1kcF9jb3JlX2Nsb2NrLCAlZFxuIiwKLQkJCQkJCQkgX19mdW5jX18sIHJldCk7Ci0JCWdvdG8g Y29yZV9jbGtfZXJyOwotCX0KLQotCXJldCA9IGNsa19wcmVwYXJlX2VuYWJsZShtc21faG9zdC0+ YWhiX2Nsayk7Ci0JaWYgKHJldCkgewotCQlwcl9lcnIoIiVzOiBmYWlsZWQgdG8gZW5hYmxlIGFo YiBjbG9jaywgJWRcbiIsIF9fZnVuY19fLCByZXQpOwotCQlnb3RvIGFoYl9jbGtfZXJyOwotCX0K LQotCXJldCA9IGNsa19wcmVwYXJlX2VuYWJsZShtc21faG9zdC0+YXhpX2Nsayk7Ci0JaWYgKHJl dCkgewotCQlwcl9lcnIoIiVzOiBmYWlsZWQgdG8gZW5hYmxlIGFoYiBjbG9jaywgJWRcbiIsIF9f ZnVuY19fLCByZXQpOwotCQlnb3RvIGF4aV9jbGtfZXJyOwotCX0KLQotCXJldCA9IGNsa19wcmVw YXJlX2VuYWJsZShtc21faG9zdC0+bW1zc19taXNjX2FoYl9jbGspOwotCWlmIChyZXQpIHsKLQkJ cHJfZXJyKCIlczogZmFpbGVkIHRvIGVuYWJsZSBtbXNzIG1pc2MgYWhiIGNsaywgJWRcbiIsCi0J CQlfX2Z1bmNfXywgcmV0KTsKLQkJZ290byBtaXNjX2FoYl9jbGtfZXJyOworCWZvciAoaSA9IDA7 IGkgPCBjZmctPm51bV9idXNfY2xrczsgaSsrKSB7CisJCXJldCA9IGNsa19wcmVwYXJlX2VuYWJs ZShtc21faG9zdC0+YnVzX2Nsa3NbaV0pOworCQlpZiAocmV0KSB7CisJCQlwcl9lcnIoIiVzOiBm YWlsZWQgdG8gZW5hYmxlIGJ1cyBjbG9jayAlZCByZXQgJWRcbiIsCisJCQkJX19mdW5jX18sIGks IHJldCk7CisJCQlnb3RvIGVycjsKKwkJfQogCX0KIAogCXJldHVybiAwOworZXJyOgorCWZvciAo OyBpID4gMDsgaS0tKQorCQljbGtfZGlzYWJsZV91bnByZXBhcmUobXNtX2hvc3QtPmJ1c19jbGtz W2ldKTsKIAotbWlzY19haGJfY2xrX2VycjoKLQljbGtfZGlzYWJsZV91bnByZXBhcmUobXNtX2hv c3QtPmF4aV9jbGspOwotYXhpX2Nsa19lcnI6Ci0JY2xrX2Rpc2FibGVfdW5wcmVwYXJlKG1zbV9o b3N0LT5haGJfY2xrKTsKLWFoYl9jbGtfZXJyOgotCWNsa19kaXNhYmxlX3VucHJlcGFyZShtc21f aG9zdC0+bWRwX2NvcmVfY2xrKTsKLWNvcmVfY2xrX2VycjoKIAlyZXR1cm4gcmV0OwogfQogCiBz dGF0aWMgdm9pZCBkc2lfYnVzX2Nsa19kaXNhYmxlKHN0cnVjdCBtc21fZHNpX2hvc3QgKm1zbV9o b3N0KQogeworCWNvbnN0IHN0cnVjdCBtc21fZHNpX2NvbmZpZyAqY2ZnID0gbXNtX2hvc3QtPmNm Z19obmQtPmNmZzsKKwlpbnQgaTsKKwogCURCRygiIik7Ci0JY2xrX2Rpc2FibGVfdW5wcmVwYXJl KG1zbV9ob3N0LT5tbXNzX21pc2NfYWhiX2Nsayk7Ci0JY2xrX2Rpc2FibGVfdW5wcmVwYXJlKG1z bV9ob3N0LT5heGlfY2xrKTsKLQljbGtfZGlzYWJsZV91bnByZXBhcmUobXNtX2hvc3QtPmFoYl9j bGspOwotCWNsa19kaXNhYmxlX3VucHJlcGFyZShtc21faG9zdC0+bWRwX2NvcmVfY2xrKTsKKwor CWZvciAoaSA9IGNmZy0+bnVtX2J1c19jbGtzIC0gMTsgaSA+PSAwOyBpLS0pCisJCWNsa19kaXNh YmxlX3VucHJlcGFyZShtc21faG9zdC0+YnVzX2Nsa3NbaV0pOwogfQogCiBzdGF0aWMgaW50IGRz aV9saW5rX2Nsa19lbmFibGUoc3RydWN0IG1zbV9kc2lfaG9zdCAqbXNtX2hvc3QpCi0tIApUaGUg UXVhbGNvbW0gSW5ub3ZhdGlvbiBDZW50ZXIsIEluYy4gaXMgYSBtZW1iZXIgb2YgdGhlIENvZGUg QXVyb3JhIEZvcnVtLApob3N0ZWQgYnkgVGhlIExpbnV4IEZvdW5kYXRpb24KCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxp c3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==