From mboxrd@z Thu Jan 1 00:00:00 1970 From: MADHAV SINGHCHAUHAN Subject: [PATCH FINAL] sdhci-clk-gating-support Date: Fri, 09 Jul 2010 09:29:23 +0000 (GMT) Message-ID: <5005677.340441278667763470.JavaMail.weblogic@epml07> Reply-To: singh.madhav@samsung.com Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: base64 Return-path: Received: from mailout3.samsung.com ([203.254.224.33]:13941 "EHLO mailout3.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755231Ab0GIJ3Z (ORCPT ); Fri, 9 Jul 2010 05:29:25 -0400 Received: from ep_ms13_bk (mailout3.samsung.com [203.254.224.33]) by mailout3.samsung.com (Sun Java(tm) System Messaging Server 7u3-15.01 64bit (built Feb 12 2010)) with ESMTP id <0L5A00BAIACZU470@mailout3.samsung.com> for linux-mmc@vger.kernel.org; Fri, 09 Jul 2010 18:29:23 +0900 (KST) Received: from ep_spt02 (ms13.samsung.com [203.254.225.109]) by ms13.samsung.com (iPlanet Messaging Server 5.2 Patch 2 (built Jul 14 2004)) with ESMTP id <0L5A00MDLACZ6T@ms13.samsung.com> for linux-mmc@vger.kernel.org; Fri, 09 Jul 2010 18:29:23 +0900 (KST) Content-return: prohibited MIME-version: 1.0 Sender: linux-mmc-owner@vger.kernel.org List-Id: linux-mmc@vger.kernel.org To: Chris Ball Cc: "linux-mmc@vger.kernel.org" , Kyungmin Park SGkgQ2hyaXMgLA0KSSBoYXZlIHRha2VuIHVwIHlvdSBzdWdnZXN0aW9uIGFuZCBjb21pbmcgd2l0 aCBuZXcgcGF0Y2guQWxzbyB3ZSBoYXZlIGRvbmUgcGVyZnJvbWFuY2UgYW5hbHlzaXMNCnVzaW5n IGZpbGVvcC9pb3pvbmUgYW5kIHBlcmZvcm1hbmNlIGlzIG5vdCBlZmZlY3RlZCBieSB0aGlzIHBh dGNoLHJlZ2FyZGluZyB0aGUgcG93ZXIgY29uc3VtcHRpb24sDQphZnRlciBhcHBseWluZyBwYXRj aCBpdCBzYXZlcyAxNSBtQS4NCg0KRnJvbSAzNjYzZWU4NWNlNzE4Yzk2MDdiYzA5NjhhNTE0M2Uw MWQ4NjkxOWVkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogTWFkaGF2IENoYXVoYW4g PHNpbmdoLm1hZGhhdkBzYW1zdW5nLmNvbT4NCkRhdGU6IEZyaSwgOSBKdWwgMjAxMCAyMDowMjow NiArMDUzMA0KU3ViamVjdDogW1BBVENIXSBzZGhjaS1jbGstZ2F0aW5nLXN1cHBvcnQNCg0KVGhp cyBwYXRjaCBpbXBsZW1lbnRzIGNsb2NrIGdhdGluZyBzdXBwb3J0IGluIHNkaGNpIGxheWVyLiBJ dCB3aWxsDQplbmFibGUgdGhlIGNsb2NrIHdoZW4gaG9zdCBjb250cm9sbGVyIHN0YXJ0IHNlbmRp bmcgcmVxdWVzdA0KdG8gYXR0YWNoZWQgZGV2aWNlIGFuZCB3aWxsIGRpc2FibGUgaXQgb25jZSBp dCBmaW5pc2ggdGhlIGNvbW1hbmQuDQpOb3cgdGhpcyBwYXRjaCBwcm92aWRlcyBvcHRpb24gc28g dGhhdCBzb21lIGhvc3QgY29udHJvbGxlcnMNCmNhbiBiZSBhdm9pZGVkIHVzaW5nIHRoaXMgZnVu Y3Rpb25hbGl0eSB1c2luZyBtbWNfaG9zdCBjYXBzLg0KDQpTaWduZWQtb2ZmLWJ5OiBNYWRoYXYg Q2hhdWhhbiA8c2luZ2gubWFkaGF2QHNhbXN1bmcuY29tPiwgTml0aXNoIEFtYmFzdGhhIDxuaXRp c2guYUBzYW1zdW5nLmNvbT4NClNpZ25lZC1vZmYtYnk6IEt5dW5nbWluIFBhcmsgPGt5dW5nbWlu LnBhcmtAc2Ftc3VuZy5jb20+DQotLS0NCiBkcml2ZXJzL21tYy9ob3N0L3NkaGNpLmMgfCAgIDM1 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQogZHJpdmVycy9tbWMvaG9zdC9z ZGhjaS5oIHwgICAgNiArKysrKysNCiBpbmNsdWRlL2xpbnV4L21tYy9ob3N0LmggfCAgICAxICsN CiAzIGZpbGVzIGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pDQoNCmRp ZmYgLS1naXQgYS9kcml2ZXJzL21tYy9ob3N0L3NkaGNpLmMgYi9kcml2ZXJzL21tYy9ob3N0L3Nk aGNpLmMNCmluZGV4IGM2ZDFiZDguLjVlZDdjNTAgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL21tYy9o b3N0L3NkaGNpLmMNCisrKyBiL2RyaXZlcnMvbW1jL2hvc3Qvc2RoY2kuYw0KQEAgLTExMDMsNiAr MTEwMyw5IEBAIHN0YXRpYyB2b2lkIHNkaGNpX3JlcXVlc3Qoc3RydWN0IG1tY19ob3N0ICptbWMs IHN0cnVjdCBtbWNfcmVxdWVzdCAqbXJxKQ0KIA0KIAlzcGluX2xvY2tfaXJxc2F2ZSgmaG9zdC0+ bG9jaywgZmxhZ3MpOw0KIA0KKwlpZiAoaG9zdC0+bW1jLT5jYXBzICYgTU1DX0NBUF9DTE9DS19H QVRJTkcpDQorCQlzZGhjaV9jbGtfZW5hYmxlKGhvc3QpOwkvKkVuYWJsZSBjbG9jayBhcyB0cmFu c2ZlciBzdGFydHMgbm93Ki8NCisNCiAJV0FSTl9PTihob3N0LT5tcnEgIT0gTlVMTCk7DQogDQog I2lmbmRlZiBTREhDSV9VU0VfTEVEU19DTEFTUw0KQEAgLTEzMTAsNiArMTMxMywxMCBAQCBzdGF0 aWMgdm9pZCBzZGhjaV90YXNrbGV0X2ZpbmlzaCh1bnNpZ25lZCBsb25nIHBhcmFtKQ0KIAkJc2Ro Y2lfcmVzZXQoaG9zdCwgU0RIQ0lfUkVTRVRfREFUQSk7DQogCX0NCiANCisJaWYgKGhvc3QtPm1t Yy0+Y2FwcyAmIE1NQ19DQVBfQ0xPQ0tfR0FUSU5HKQ0KKwkJLypEaXNhYmxlIGNsb2NrIGFzIGNv bW1hbmQgaGFzIGJlZW4gcHJvY2Vzc2VkKi8NCisJCXNkaGNpX2Nsa19kaXNhYmxlKGhvc3QpOw0K Kw0KIAlob3N0LT5tcnEgPSBOVUxMOw0KIAlob3N0LT5jbWQgPSBOVUxMOw0KIAlob3N0LT5kYXRh ID0gTlVMTDsNCkBAIC0xNTk3LDYgKzE2MDQsOSBAQCBpbnQgc2RoY2lfc3VzcGVuZF9ob3N0KHN0 cnVjdCBzZGhjaV9ob3N0ICpob3N0LCBwbV9tZXNzYWdlX3Qgc3RhdGUpDQogDQogCXNkaGNpX2Rp c2FibGVfY2FyZF9kZXRlY3Rpb24oaG9zdCk7DQogDQorCWlmIChob3N0LT5tbWMtPmNhcHMgJiBN TUNfQ0FQX0NMT0NLX0dBVElORykNCisJCXNkaGNpX2Nsa19lbmFibGUoaG9zdCk7CS8qIEVuYWJs ZSBjbG9jayAqLw0KKw0KIAlyZXQgPSBtbWNfc3VzcGVuZF9ob3N0KGhvc3QtPm1tYyk7DQogCWlm IChyZXQpDQogCQlyZXR1cm4gcmV0Ow0KQEAgLTE2MjYsNiArMTYzNiwxMSBAQCBpbnQgc2RoY2lf cmVzdW1lX2hvc3Qoc3RydWN0IHNkaGNpX2hvc3QgKmhvc3QpDQogCW1taW93YigpOw0KIA0KIAly ZXQgPSBtbWNfcmVzdW1lX2hvc3QoaG9zdC0+bW1jKTsNCisNCisJaWYgKGhvc3QtPm1tYy0+Y2Fw cyAmIE1NQ19DQVBfQ0xPQ0tfR0FUSU5HKQ0KKwkJLypOb3cgZGV2aWNlIGhhcyB3YWtlIHVwIGRp c2FibGUgaXQqLw0KKwkJc2RoY2lfY2xrX2Rpc2FibGUoaG9zdCk7DQorDQogCXNkaGNpX2VuYWJs ZV9jYXJkX2RldGVjdGlvbihob3N0KTsNCiANCiAJcmV0dXJuIHJldDsNCkBAIC0xNjU0LDYgKzE2 NjksOSBAQCBzdHJ1Y3Qgc2RoY2lfaG9zdCAqc2RoY2lfYWxsb2NfaG9zdChzdHJ1Y3QgZGV2aWNl ICpkZXYsDQogCQlyZXR1cm4gRVJSX1BUUigtRU5PTUVNKTsNCiANCiAJaG9zdCA9IG1tY19wcml2 KG1tYyk7DQorDQorCWhvc3QtPmNsa19yZXN0b3JlID0gMDsJLyogRm9yIGNsb2NrIGdhdGluZyAq Lw0KKw0KIAlob3N0LT5tbWMgPSBtbWM7DQogDQogCXJldHVybiBob3N0Ow0KQEAgLTE5ODQsNiAr MjAwMiwyMyBAQCB2b2lkIHNkaGNpX2ZyZWVfaG9zdChzdHJ1Y3Qgc2RoY2lfaG9zdCAqaG9zdCkN CiANCiBFWFBPUlRfU1lNQk9MX0dQTChzZGhjaV9mcmVlX2hvc3QpOw0KIA0KK3ZvaWQgc2RoY2lf Y2xrX2VuYWJsZShzdHJ1Y3Qgc2RoY2lfaG9zdCAqaG9zdCkNCit7DQorCWlmIChob3N0LT5jbGtf cmVzdG9yZSAmJiBob3N0LT5jbG9jayA9PSAwKQ0KKwkJc2RoY2lfc2V0X2Nsb2NrKGhvc3QsIGhv c3QtPmNsa19yZXN0b3JlKTsNCit9DQorRVhQT1JUX1NZTUJPTF9HUEwoc2RoY2lfY2xrX2VuYWJs ZSk7DQorDQordm9pZCBzZGhjaV9jbGtfZGlzYWJsZShzdHJ1Y3Qgc2RoY2lfaG9zdCAqaG9zdCkN Cit7DQorCWlmIChob3N0LT5jbG9jayAhPSAwKSB7DQorCQlob3N0LT5jbGtfcmVzdG9yZSA9IGhv c3QtPmNsb2NrOw0KKwkJc2RoY2lfc2V0X2Nsb2NrKGhvc3QsIDApOw0KKwl9DQorfQ0KK0VYUE9S VF9TWU1CT0xfR1BMKHNkaGNpX2Nsa19kaXNhYmxlKTsNCisNCisNCiAvKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKipcDQogICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqDQogICogRHJpdmVyIGluaXQvZXhpdCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqDQpk aWZmIC0tZ2l0IGEvZHJpdmVycy9tbWMvaG9zdC9zZGhjaS5oIGIvZHJpdmVycy9tbWMvaG9zdC9z ZGhjaS5oDQppbmRleCBjODQ2ODEzLi41MDMxZDMzIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9tbWMv aG9zdC9zZGhjaS5oDQorKysgYi9kcml2ZXJzL21tYy9ob3N0L3NkaGNpLmgNCkBAIC0yOTIsNiAr MjkyLDggQEAgc3RydWN0IHNkaGNpX2hvc3Qgew0KIA0KIAlzdHJ1Y3QgdGltZXJfbGlzdAl0aW1l cjsJCS8qIFRpbWVyIGZvciB0aW1lb3V0cyAqLw0KIA0KKwl1bnNpZ25lZCBpbnQJCWNsa19yZXN0 b3JlOwkvKiBGb3IgQ2xvY2sgR2F0aW5nICovDQorDQogCXVuc2lnbmVkIGxvbmcJCXByaXZhdGVb MF0gX19fX2NhY2hlbGluZV9hbGlnbmVkOw0KIH07DQogDQpAQCAtNDEwLDYgKzQxMiwxMCBAQCBz dGF0aWMgaW5saW5lIHZvaWQgKnNkaGNpX3ByaXYoc3RydWN0IHNkaGNpX2hvc3QgKmhvc3QpDQog ZXh0ZXJuIGludCBzZGhjaV9hZGRfaG9zdChzdHJ1Y3Qgc2RoY2lfaG9zdCAqaG9zdCk7DQogZXh0 ZXJuIHZvaWQgc2RoY2lfcmVtb3ZlX2hvc3Qoc3RydWN0IHNkaGNpX2hvc3QgKmhvc3QsIGludCBk ZWFkKTsNCiANCisvKkZvciBDbG9jayBHYXRpbmcqLw0KK2V4dGVybiB2b2lkIHNkaGNpX2Nsa19l bmFibGUoc3RydWN0IHNkaGNpX2hvc3QgKmhvc3QpOw0KK2V4dGVybiB2b2lkIHNkaGNpX2Nsa19k aXNhYmxlKHN0cnVjdCBzZGhjaV9ob3N0ICpob3N0KTsNCisNCiAjaWZkZWYgQ09ORklHX1BNDQog ZXh0ZXJuIGludCBzZGhjaV9zdXNwZW5kX2hvc3Qoc3RydWN0IHNkaGNpX2hvc3QgKmhvc3QsIHBt X21lc3NhZ2VfdCBzdGF0ZSk7DQogZXh0ZXJuIGludCBzZGhjaV9yZXN1bWVfaG9zdChzdHJ1Y3Qg c2RoY2lfaG9zdCAqaG9zdCk7DQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9tbWMvaG9zdC5o IGIvaW5jbHVkZS9saW51eC9tbWMvaG9zdC5oDQppbmRleCBmNjU5MTNjLi5iNWMzNTYzIDEwMDY0 NA0KLS0tIGEvaW5jbHVkZS9saW51eC9tbWMvaG9zdC5oDQorKysgYi9pbmNsdWRlL2xpbnV4L21t Yy9ob3N0LmgNCkBAIC0xNTUsNiArMTU1LDcgQEAgc3RydWN0IG1tY19ob3N0IHsNCiAjZGVmaW5l IE1NQ19DQVBfRElTQUJMRQkJKDEgPDwgNykJLyogQ2FuIHRoZSBob3N0IGJlIGRpc2FibGVkICov DQogI2RlZmluZSBNTUNfQ0FQX05PTlJFTU9WQUJMRQkoMSA8PCA4KQkvKiBOb25yZW1vdmFibGUg ZS5nLiBlTU1DICovDQogI2RlZmluZSBNTUNfQ0FQX1dBSVRfV0hJTEVfQlVTWQkoMSA8PCA5KQkv KiBXYWl0cyB3aGlsZSBjYXJkIGlzIGJ1c3kgKi8NCisjZGVmaW5lIE1NQ19DQVBfQ0xPQ0tfR0FU SU5HCSgxIDw8IDEwKQkvKiBDbG9jayBHYXRpbmcgZmVhdHVyZSAqLw0KIA0KIAltbWNfcG1fZmxh Z190CQlwbV9jYXBzOwkvKiBzdXBwb3J0ZWQgcG0gZmVhdHVyZXMgKi8NCiANCi0tIA0KMS43LjAu NA0KDQoNCg0KDQo+ICsgICAgICAgaG9zdC0+dXNlciA9IDA7ICAgICAgICAgLypGb3IgQ2xvY2sg Z2F0aW5nKi8gDQo+ICsgICAgICAgaG9zdC0+Y2xrX3Jlc3RvcmUgPSAwOyANCg0KQWxzbywgaXQn cyBub3Qgb2J2aW91cyB0byBtZSB3aHkgdHdvIHZhcmlhYmxlcyBhcmUgbmVjZXNzYXJ5LiAgV2hh dCdzIA0Kd3Jvbmcgd2l0aCBqdXN0IHNldHRpbmcgaG9zdC0+Y2xrX3Jlc3RvcmUgd2hlbiBkaXNh YmxpbmcgY2xvY2ssIGFuZCANCnRlc3Rpbmcgd2hldGhlciBpdCdzIG5vbi16ZXJvIGluc3RlYWQg b2YgdGVzdGluZyBob3N0LT51c2VyPyANCihob3N0LT51c2VyIHdvdWxkIG5lZWQgYSBtb3JlIGRl c2NyaXB0aXZlIG5hbWUsIHRvby4pIA0KDQpUaGFua3MsIA0KDQotIENocmlzLiANCi0tICANCkNo cmlzIEJhbGwgICA8Y2piQGxhcHRvcC5vcmc+IA0KT25lIExhcHRvcCBQZXIgQ2hpbGQgDQoNCiAN CiANCiANCiANCg0KDQo=