From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sylwester Nawrocki Subject: [PATCH RFC 1/7] clk: samsung: Add enable/disable operation for PLL36XX clocks Date: Fri, 21 Apr 2017 19:19:45 +0200 Message-ID: <1492795191-31298-2-git-send-email-s.nawrocki@samsung.com> References: <1492795191-31298-1-git-send-email-s.nawrocki@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-reply-to: <1492795191-31298-1-git-send-email-s.nawrocki@samsung.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: linux-samsung-soc@vger.kernel.org, linux-clk@vger.kernel.org, dri-devel@lists.freedesktop.org, alsa-devel@alsa-project.org, devicetree@vger.kernel.org Cc: javier@osg.samsung.com, b.zolnierkie@samsung.com, sw0312.kim@samsung.com, krzk@kernel.org, cw00.choi@samsung.com, broonie@kernel.org, Sylwester Nawrocki , robh+dt@kernel.org List-Id: devicetree@vger.kernel.org VGhlIGV4aXN0aW5nIGVuYWJsZS9kaXNhYmxlIG9wcyBmb3IgUExMMzVYWCBhcmUgbWFkZSBtb3Jl IGdlbmVyaWMKYW5kIHVzZWQgYWxzbyBmb3IgUExMMzZYWC4gVGhpcyBmaXhlcyBpc3N1ZXMgaW4g dGhlIGtlcm5lbCB3aXRoClBMTDM2WFggUExMcyB3aGVuIHRoZSBQTEwgaGFzIG5vdCBiZWVuIGFs cmVhZHkgZW5hYmxlZCBieSBib290bG9hZGVyLgoKU2lnbmVkLW9mZi1ieTogU3lsd2VzdGVyIE5h d3JvY2tpIDxzLm5hd3JvY2tpQHNhbXN1bmcuY29tPgotLS0KIGRyaXZlcnMvY2xrL3NhbXN1bmcv Y2xrLXBsbC5jIHwgODUgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0t LQogMSBmaWxlIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKyksIDM2IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvY2xrL3NhbXN1bmcvY2xrLXBsbC5jIGIvZHJpdmVycy9jbGsvc2Ft c3VuZy9jbGstcGxsLmMKaW5kZXggNTIyOTA4OS4uMTBjNzZlYiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9jbGsvc2Ftc3VuZy9jbGstcGxsLmMKKysrIGIvZHJpdmVycy9jbGsvc2Ftc3VuZy9jbGstcGxs LmMKQEAgLTIzLDYgKzIzLDEwIEBAIHN0cnVjdCBzYW1zdW5nX2Nsa19wbGwgewogCXN0cnVjdCBj bGtfaHcJCWh3OwogCXZvaWQgX19pb21lbQkJKmxvY2tfcmVnOwogCXZvaWQgX19pb21lbQkJKmNv bl9yZWc7CisJLyogUExMIGVuYWJsZSBjb250cm9sIGJpdCBvZmZzZXQgaW4gQGNvbl9yZWcgcmVn aXN0ZXIgKi8KKwl1bnNpZ25lZCBzaG9ydAkJZW5hYmxlX29mZnM7CisJLyogUExMIGxvY2sgc3Rh dHVzIGJpdCBvZmZzZXQgaW4gQGNvbl9yZWcgcmVnaXN0ZXIgKi8KKwl1bnNpZ25lZCBzaG9ydAkJ bG9ja19vZmZzOwogCWVudW0gc2Ftc3VuZ19wbGxfdHlwZQl0eXBlOwogCXVuc2lnbmVkIGludAkJ cmF0ZV9jb3VudDsKIAljb25zdCBzdHJ1Y3Qgc2Ftc3VuZ19wbGxfcmF0ZV90YWJsZSAqcmF0ZV90 YWJsZTsKQEAgLTYxLDYgKzY1LDM0IEBAIHN0YXRpYyBsb25nIHNhbXN1bmdfcGxsX3JvdW5kX3Jh dGUoc3RydWN0IGNsa19odyAqaHcsCiAJcmV0dXJuIHJhdGVfdGFibGVbaSAtIDFdLnJhdGU7CiB9 CiAKK3N0YXRpYyBpbnQgc2Ftc3VuZ19wbGwzeHh4X2VuYWJsZShzdHJ1Y3QgY2xrX2h3ICpodykK K3sKKwlzdHJ1Y3Qgc2Ftc3VuZ19jbGtfcGxsICpwbGwgPSB0b19jbGtfcGxsKGh3KTsKKwl1MzIg dG1wOworCisJdG1wID0gcmVhZGxfcmVsYXhlZChwbGwtPmNvbl9yZWcpOworCXRtcCB8PSBCSVQo cGxsLT5lbmFibGVfb2Zmcyk7CisJd3JpdGVsX3JlbGF4ZWQodG1wLCBwbGwtPmNvbl9yZWcpOwor CisJLyogd2FpdCBsb2NrIHRpbWUgKi8KKwlkbyB7CisJCWNwdV9yZWxheCgpOworCQl0bXAgPSBy ZWFkbF9yZWxheGVkKHBsbC0+Y29uX3JlZyk7CisJfSB3aGlsZSAoISh0bXAgJiBCSVQocGxsLT5s b2NrX29mZnMpKSk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgc2Ftc3VuZ19wbGwz eHh4X2Rpc2FibGUoc3RydWN0IGNsa19odyAqaHcpCit7CisJc3RydWN0IHNhbXN1bmdfY2xrX3Bs bCAqcGxsID0gdG9fY2xrX3BsbChodyk7CisJdTMyIHRtcDsKKworCXRtcCA9IHJlYWRsX3JlbGF4 ZWQocGxsLT5jb25fcmVnKTsKKwl0bXAgfD0gQklUKHBsbC0+ZW5hYmxlX29mZnMpOworCXdyaXRl bF9yZWxheGVkKHRtcCwgcGxsLT5jb25fcmVnKTsKK30KKwogLyoKICAqIFBMTDIxMjYgQ2xvY2sg VHlwZQogICovCkBAIC0xNDIsMzQgKzE3NCw2IEBAIHN0YXRpYyB1bnNpZ25lZCBsb25nIHNhbXN1 bmdfcGxsMzAwMF9yZWNhbGNfcmF0ZShzdHJ1Y3QgY2xrX2h3ICpodywKICNkZWZpbmUgUExMMzVY WF9MT0NLX1NUQVRfU0hJRlQJKDI5KQogI2RlZmluZSBQTEwzNVhYX0VOQUJMRV9TSElGVAkoMzEp CiAKLXN0YXRpYyBpbnQgc2Ftc3VuZ19wbGwzNXh4X2VuYWJsZShzdHJ1Y3QgY2xrX2h3ICpodykK LXsKLQlzdHJ1Y3Qgc2Ftc3VuZ19jbGtfcGxsICpwbGwgPSB0b19jbGtfcGxsKGh3KTsKLQl1MzIg dG1wOwotCi0JdG1wID0gcmVhZGxfcmVsYXhlZChwbGwtPmNvbl9yZWcpOwotCXRtcCB8PSBCSVQo UExMMzVYWF9FTkFCTEVfU0hJRlQpOwotCXdyaXRlbF9yZWxheGVkKHRtcCwgcGxsLT5jb25fcmVn KTsKLQotCS8qIHdhaXRfbG9ja190aW1lICovCi0JZG8gewotCQljcHVfcmVsYXgoKTsKLQkJdG1w ID0gcmVhZGxfcmVsYXhlZChwbGwtPmNvbl9yZWcpOwotCX0gd2hpbGUgKCEodG1wICYgQklUKFBM TDM1WFhfTE9DS19TVEFUX1NISUZUKSkpOwotCi0JcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyB2b2lk IHNhbXN1bmdfcGxsMzV4eF9kaXNhYmxlKHN0cnVjdCBjbGtfaHcgKmh3KQotewotCXN0cnVjdCBz YW1zdW5nX2Nsa19wbGwgKnBsbCA9IHRvX2Nsa19wbGwoaHcpOwotCXUzMiB0bXA7Ci0KLQl0bXAg PSByZWFkbF9yZWxheGVkKHBsbC0+Y29uX3JlZyk7Ci0JdG1wICY9IH5CSVQoUExMMzVYWF9FTkFC TEVfU0hJRlQpOwotCXdyaXRlbF9yZWxheGVkKHRtcCwgcGxsLT5jb25fcmVnKTsKLX0KLQogc3Rh dGljIHVuc2lnbmVkIGxvbmcgc2Ftc3VuZ19wbGwzNXh4X3JlY2FsY19yYXRlKHN0cnVjdCBjbGtf aHcgKmh3LAogCQkJCXVuc2lnbmVkIGxvbmcgcGFyZW50X3JhdGUpCiB7CkBAIC0yMzksMTEgKzI0 MywxMSBAQCBzdGF0aWMgaW50IHNhbXN1bmdfcGxsMzV4eF9zZXRfcmF0ZShzdHJ1Y3QgY2xrX2h3 ICpodywgdW5zaWduZWQgbG9uZyBkcmF0ZSwKIAl3cml0ZWxfcmVsYXhlZCh0bXAsIHBsbC0+Y29u X3JlZyk7CiAKIAkvKiB3YWl0X2xvY2tfdGltZSBpZiBlbmFibGVkICovCi0JaWYgKHRtcCAmIEJJ VChQTEwzNVhYX0VOQUJMRV9TSElGVCkpIHsKKwlpZiAodG1wICYgQklUKHBsbC0+ZW5hYmxlX29m ZnMpKSB7CiAJCWRvIHsKIAkJCWNwdV9yZWxheCgpOwogCQkJdG1wID0gcmVhZGxfcmVsYXhlZChw bGwtPmNvbl9yZWcpOwotCQl9IHdoaWxlICghKHRtcCAmIEJJVChQTEwzNVhYX0xPQ0tfU1RBVF9T SElGVCkpKTsKKwkJfSB3aGlsZSAoISh0bXAgJiBCSVQocGxsLT5sb2NrX29mZnMpKSk7CiAJfQog CXJldHVybiAwOwogfQpAQCAtMjUyLDggKzI1Niw4IEBAIHN0YXRpYyBpbnQgc2Ftc3VuZ19wbGwz NXh4X3NldF9yYXRlKHN0cnVjdCBjbGtfaHcgKmh3LCB1bnNpZ25lZCBsb25nIGRyYXRlLAogCS5y ZWNhbGNfcmF0ZSA9IHNhbXN1bmdfcGxsMzV4eF9yZWNhbGNfcmF0ZSwKIAkucm91bmRfcmF0ZSA9 IHNhbXN1bmdfcGxsX3JvdW5kX3JhdGUsCiAJLnNldF9yYXRlID0gc2Ftc3VuZ19wbGwzNXh4X3Nl dF9yYXRlLAotCS5lbmFibGUgPSBzYW1zdW5nX3BsbDM1eHhfZW5hYmxlLAotCS5kaXNhYmxlID0g c2Ftc3VuZ19wbGwzNXh4X2Rpc2FibGUsCisJLmVuYWJsZSA9IHNhbXN1bmdfcGxsM3h4eF9lbmFi bGUsCisJLmRpc2FibGUgPSBzYW1zdW5nX3BsbDN4eHhfZGlzYWJsZSwKIH07CiAKIHN0YXRpYyBj b25zdCBzdHJ1Y3QgY2xrX29wcyBzYW1zdW5nX3BsbDM1eHhfY2xrX21pbl9vcHMgPSB7CkBAIC0y NzUsNiArMjc5LDcgQEAgc3RhdGljIGludCBzYW1zdW5nX3BsbDM1eHhfc2V0X3JhdGUoc3RydWN0 IGNsa19odyAqaHcsIHVuc2lnbmVkIGxvbmcgZHJhdGUsCiAjZGVmaW5lIFBMTDM2WFhfU0RJVl9T SElGVAkoMCkKICNkZWZpbmUgUExMMzZYWF9LRElWX1NISUZUCSgwKQogI2RlZmluZSBQTEwzNlhY X0xPQ0tfU1RBVF9TSElGVAkoMjkpCisjZGVmaW5lIFBMTDM2WFhfRU5BQkxFX1NISUZUCSgzMSkK IAogc3RhdGljIHVuc2lnbmVkIGxvbmcgc2Ftc3VuZ19wbGwzNnh4X3JlY2FsY19yYXRlKHN0cnVj dCBjbGtfaHcgKmh3LAogCQkJCXVuc2lnbmVkIGxvbmcgcGFyZW50X3JhdGUpCkBAIC0zNTQsMTAg KzM1OSwxMiBAQCBzdGF0aWMgaW50IHNhbXN1bmdfcGxsMzZ4eF9zZXRfcmF0ZShzdHJ1Y3QgY2xr X2h3ICpodywgdW5zaWduZWQgbG9uZyBkcmF0ZSwKIAl3cml0ZWxfcmVsYXhlZChwbGxfY29uMSwg cGxsLT5jb25fcmVnICsgNCk7CiAKIAkvKiB3YWl0X2xvY2tfdGltZSAqLwotCWRvIHsKLQkJY3B1 X3JlbGF4KCk7Ci0JCXRtcCA9IHJlYWRsX3JlbGF4ZWQocGxsLT5jb25fcmVnKTsKLQl9IHdoaWxl ICghKHRtcCAmICgxIDw8IFBMTDM2WFhfTE9DS19TVEFUX1NISUZUKSkpOworCWlmIChwbGxfY29u MCAmIEJJVChwbGwtPmVuYWJsZV9vZmZzKSkgeworCQlkbyB7CisJCQljcHVfcmVsYXgoKTsKKwkJ CXRtcCA9IHJlYWRsX3JlbGF4ZWQocGxsLT5jb25fcmVnKTsKKwkJfSB3aGlsZSAoISh0bXAgJiBC SVQoUExMMzZYWF9MT0NLX1NUQVRfU0hJRlQpKSk7CisJfQogCiAJcmV0dXJuIDA7CiB9CkBAIC0z NjYsNiArMzczLDggQEAgc3RhdGljIGludCBzYW1zdW5nX3BsbDM2eHhfc2V0X3JhdGUoc3RydWN0 IGNsa19odyAqaHcsIHVuc2lnbmVkIGxvbmcgZHJhdGUsCiAJLnJlY2FsY19yYXRlID0gc2Ftc3Vu Z19wbGwzNnh4X3JlY2FsY19yYXRlLAogCS5zZXRfcmF0ZSA9IHNhbXN1bmdfcGxsMzZ4eF9zZXRf cmF0ZSwKIAkucm91bmRfcmF0ZSA9IHNhbXN1bmdfcGxsX3JvdW5kX3JhdGUsCisJLmVuYWJsZSA9 IHNhbXN1bmdfcGxsM3h4eF9lbmFibGUsCisJLmRpc2FibGUgPSBzYW1zdW5nX3BsbDN4eHhfZGlz YWJsZSwKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgY2xrX29wcyBzYW1zdW5nX3BsbDM2eHhf Y2xrX21pbl9vcHMgPSB7CkBAIC0xMjg4LDYgKzEyOTcsOCBAQCBzdGF0aWMgdm9pZCBfX2luaXQg X3NhbXN1bmdfY2xrX3JlZ2lzdGVyX3BsbChzdHJ1Y3Qgc2Ftc3VuZ19jbGtfcHJvdmlkZXIgKmN0 eCwKIAljYXNlIHBsbF8xNDUweDoKIAljYXNlIHBsbF8xNDUxeDoKIAljYXNlIHBsbF8xNDUyeDoK KwkJcGxsLT5lbmFibGVfb2ZmcyA9IFBMTDM1WFhfRU5BQkxFX1NISUZUOworCQlwbGwtPmxvY2tf b2ZmcyA9IFBMTDM1WFhfTE9DS19TVEFUX1NISUZUOwogCQlpZiAoIXBsbC0+cmF0ZV90YWJsZSkK IAkJCWluaXQub3BzID0gJnNhbXN1bmdfcGxsMzV4eF9jbGtfbWluX29wczsKIAkJZWxzZQpAQCAt MTMwNiw2ICsxMzE3LDggQEAgc3RhdGljIHZvaWQgX19pbml0IF9zYW1zdW5nX2Nsa19yZWdpc3Rl cl9wbGwoc3RydWN0IHNhbXN1bmdfY2xrX3Byb3ZpZGVyICpjdHgsCiAJLyogY2xrX29wcyBmb3Ig MzZ4eCBhbmQgMjY1MCBhcmUgc2ltaWxhciAqLwogCWNhc2UgcGxsXzM2eHg6CiAJY2FzZSBwbGxf MjY1MDoKKwkJcGxsLT5lbmFibGVfb2ZmcyA9IFBMTDM2WFhfRU5BQkxFX1NISUZUOworCQlwbGwt PmxvY2tfb2ZmcyA9IFBMTDM2WFhfTE9DS19TVEFUX1NISUZUOwogCQlpZiAoIXBsbC0+cmF0ZV90 YWJsZSkKIAkJCWluaXQub3BzID0gJnNhbXN1bmdfcGxsMzZ4eF9jbGtfbWluX29wczsKIAkJZWxz ZQotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bAo=