From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= Subject: [PATCH 07/10] PM: earlysuspend: Add console switch when user requested sleep state changes. Date: Tue, 10 Feb 2009 17:49:12 -0800 Message-ID: <1234316955-31304-8-git-send-email-arve@android.com> References: <1234316955-31304-1-git-send-email-arve@android.com> <1234316955-31304-2-git-send-email-arve@android.com> <1234316955-31304-3-git-send-email-arve@android.com> <1234316955-31304-4-git-send-email-arve@android.com> <1234316955-31304-5-git-send-email-arve@android.com> <1234316955-31304-6-git-send-email-arve@android.com> <1234316955-31304-7-git-send-email-arve@android.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1234316955-31304-7-git-send-email-arve@android.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-pm-bounces@lists.linux-foundation.org Errors-To: linux-pm-bounces@lists.linux-foundation.org To: linux-pm@lists.linux-foundation.org Cc: ncunningham@crca.org.au, u.luckas@road.de, swetland@google.com List-Id: linux-pm@vger.kernel.org V2hlbiBlYXJseS1zdXNwZW5kIGlzIGVuYWJsZWQsIHRoZSBmcmFtZWJ1ZmZlciBpcyB0dXJuZWQg b2ZmIGF0CmVhcmx5LXN1c3BlbmQuIElmIENPTlNPTEVfRUFSTFlTVVNQRU5EIGlzIGVuYWJsZWQs IGEgY29uc29sZSBzd2l0Y2gKaXMgdXNlZCB0byBub3RpZnkgdXNlciBzcGFjZSB0aGF0IGl0IHNo b3VsZCBzdG9wIGRyYXdpbmcgYmVmb3JlCnRoZSBmcmFtZWJ1ZmZlciBpcyBkaXNhYmxlZCwgYW5k IHRoYXQgaXQgc2hvdWxkIHJlcGFpbnQgYW5kIHJlc3VtZQpkcmF3aW5nIGFmdGVyIHRoZSBmcmFt ZWJ1ZmZlciBpcyB0dXJuZWQgYmFjayBvbi4KClNpZ25lZC1vZmYtYnk6IEFydmUgSGrDuG5uZXbD pWcgPGFydmVAYW5kcm9pZC5jb20+Ci0tLQoga2VybmVsL3Bvd2VyL0tjb25maWcgICAgICAgICAg ICAgICB8ICAgMTcgKysrKysrKysKIGtlcm5lbC9wb3dlci9NYWtlZmlsZSAgICAgICAgICAgICAg fCAgICAxICsKIGtlcm5lbC9wb3dlci9jb25zb2xlZWFybHlzdXNwZW5kLmMgfCAgIDc4ICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA5NiBpbnNl cnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGtlcm5lbC9wb3dl ci9jb25zb2xlZWFybHlzdXNwZW5kLmMKCmRpZmYgLS1naXQgYS9rZXJuZWwvcG93ZXIvS2NvbmZp ZyBiL2tlcm5lbC9wb3dlci9LY29uZmlnCmluZGV4IGNjYzU1YmUuLjA0ZTZmYWQgMTAwNjQ0Ci0t LSBhL2tlcm5lbC9wb3dlci9LY29uZmlnCisrKyBiL2tlcm5lbC9wb3dlci9LY29uZmlnCkBAIC0x NTksNiArMTU5LDIzIEBAIGNvbmZpZyBFQVJMWVNVU1BFTkQKIAkgIENhbGwgZWFybHkgc3VzcGVu ZCBoYW5kbGVycyB3aGVuIHRoZSB1c2VyIHJlcXVlc3RlZCBzbGVlcCBzdGF0ZQogCSAgY2hhbmdl cy4KIAorY2hvaWNlCisJcHJvbXB0ICJVc2VyLXNwYWNlIHNjcmVlbiBhY2Nlc3MiCisJZGVmYXVs dCBDT05TT0xFX0VBUkxZU1VTUEVORAorCWRlcGVuZHMgb24gRUFSTFlTVVNQRU5ECisKKwljb25m aWcgTk9fVVNFUl9TUEFDRV9TQ1JFRU5fQUNDRVNTX0NPTlRST0wKKwkJYm9vbCAiTm9uZSIKKwor CWNvbmZpZyBDT05TT0xFX0VBUkxZU1VTUEVORAorCQlib29sICJDb25zb2xlIHN3aXRjaCBvbiBl YXJseS1zdXNwZW5kIgorCQlkZXBlbmRzIG9uIEVBUkxZU1VTUEVORCAmJiBWVAorCQktLS1oZWxw LS0tCisJCSAgUmVnaXN0ZXIgZWFybHkgc3VzcGVuZCBoYW5kbGVyIHRvIHBlcmZvcm0gYSBjb25z b2xlIHN3aXRjaAorCQkgIHdoZW4gdXNlci1zcGFjZSBzaG91bGQgc3RvcCBkcmF3aW5nIHRvIHRo ZSBzY3JlZW4gYW5kIGEgc3dpdGNoCisJCSAgYmFjayB3aGVuIGl0IHNob3VsZCByZXN1bWUuCitl bmRjaG9pY2UKKwogY29uZmlnIEhJQkVSTkFUSU9OCiAJYm9vbCAiSGliZXJuYXRpb24gKGFrYSAn c3VzcGVuZCB0byBkaXNrJykiCiAJZGVwZW5kcyBvbiBQTSAmJiBTV0FQICYmIEFSQ0hfSElCRVJO QVRJT05fUE9TU0lCTEUKZGlmZiAtLWdpdCBhL2tlcm5lbC9wb3dlci9NYWtlZmlsZSBiL2tlcm5l bC9wb3dlci9NYWtlZmlsZQppbmRleCBkMzQ2N2IzLi44YmYyOTNkIDEwMDY0NAotLS0gYS9rZXJu ZWwvcG93ZXIvTWFrZWZpbGUKKysrIGIva2VybmVsL3Bvd2VyL01ha2VmaWxlCkBAIC05LDYgKzks NyBAQCBvYmotJChDT05GSUdfRlJFRVpFUikJCSs9IHByb2Nlc3Mubwogb2JqLSQoQ09ORklHX1dB S0VMT0NLKQkJKz0gd2FrZWxvY2subwogb2JqLSQoQ09ORklHX1VTRVJfV0FLRUxPQ0spCSs9IHVz ZXJ3YWtlbG9jay5vCiBvYmotJChDT05GSUdfRUFSTFlTVVNQRU5EKQkrPSBlYXJseXN1c3BlbmQu bworb2JqLSQoQ09ORklHX0NPTlNPTEVfRUFSTFlTVVNQRU5EKQkrPSBjb25zb2xlZWFybHlzdXNw ZW5kLm8KIG9iai0kKENPTkZJR19ISUJFUk5BVElPTikJKz0gc3dzdXNwLm8gZGlzay5vIHNuYXBz aG90Lm8gc3dhcC5vIHVzZXIubwogCiBvYmotJChDT05GSUdfTUFHSUNfU1lTUlEpCSs9IHBvd2Vy b2ZmLm8KZGlmZiAtLWdpdCBhL2tlcm5lbC9wb3dlci9jb25zb2xlZWFybHlzdXNwZW5kLmMgYi9r ZXJuZWwvcG93ZXIvY29uc29sZWVhcmx5c3VzcGVuZC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLmE4YmVmYjQKLS0tIC9kZXYvbnVsbAorKysgYi9rZXJuZWwvcG93ZXIvY29u c29sZWVhcmx5c3VzcGVuZC5jCkBAIC0wLDAgKzEsNzggQEAKKy8qIGtlcm5lbC9wb3dlci9jb25z b2xlZWFybHlzdXNwZW5kLmMKKyAqCisgKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAwOCBHb29nbGUs IEluYy4KKyAqCisgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIHZlcnNpb24gMiwgYXMgcHVibGlz aGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGFuZAorICogbWF5IGJlIGNvcGll ZCwgZGlzdHJpYnV0ZWQsIGFuZCBtb2RpZmllZCB1bmRlciB0aG9zZSB0ZXJtcy4KKyAqCisgKiBU aGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVz ZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBs aWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJU SUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm b3IgbW9yZSBkZXRhaWxzLgorICoKKyAqLworCisjaW5jbHVkZSA8bGludXgvY29uc29sZS5oPgor I2luY2x1ZGUgPGxpbnV4L2Vhcmx5c3VzcGVuZC5oPgorI2luY2x1ZGUgPGxpbnV4L2tiZF9rZXJu Lmg+CisjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+CisjaW5jbHVkZSA8bGludXgvdnRfa2Vybi5o PgorI2luY2x1ZGUgPGxpbnV4L3dhaXQuaD4KKworI2RlZmluZSBFQVJMWV9TVVNQRU5EX0NPTlNP TEUJKE1BWF9OUl9DT05TT0xFUy0xKQorCitzdGF0aWMgaW50IG9yaWdfZmdjb25zb2xlOworc3Rh dGljIHZvaWQgY29uc29sZV9lYXJseV9zdXNwZW5kKHN0cnVjdCBlYXJseV9zdXNwZW5kICpoKQor eworCWFjcXVpcmVfY29uc29sZV9zZW0oKTsKKwlvcmlnX2ZnY29uc29sZSA9IGZnX2NvbnNvbGU7 CisJaWYgKHZjX2FsbG9jYXRlKEVBUkxZX1NVU1BFTkRfQ09OU09MRSkpCisJCWdvdG8gZXJyOwor CWlmIChzZXRfY29uc29sZShFQVJMWV9TVVNQRU5EX0NPTlNPTEUpKQorCQlnb3RvIGVycjsKKwly ZWxlYXNlX2NvbnNvbGVfc2VtKCk7CisKKwlpZiAodnRfd2FpdGFjdGl2ZShFQVJMWV9TVVNQRU5E X0NPTlNPTEUpKQorCQlwcl93YXJuaW5nKCJjb25zb2xlX2Vhcmx5X3N1c3BlbmQ6IENhbid0IHN3 aXRjaCBWQ3MuXG4iKTsKKwlyZXR1cm47CitlcnI6CisJcHJfd2FybmluZygiY29uc29sZV9lYXJs eV9zdXNwZW5kOiBDYW4ndCBzZXQgY29uc29sZVxuIik7CisJcmVsZWFzZV9jb25zb2xlX3NlbSgp OworfQorCitzdGF0aWMgdm9pZCBjb25zb2xlX2xhdGVfcmVzdW1lKHN0cnVjdCBlYXJseV9zdXNw ZW5kICpoKQoreworCWludCByZXQ7CisJYWNxdWlyZV9jb25zb2xlX3NlbSgpOworCXJldCA9IHNl dF9jb25zb2xlKG9yaWdfZmdjb25zb2xlKTsKKwlyZWxlYXNlX2NvbnNvbGVfc2VtKCk7CisJaWYg KHJldCkgeworCQlwcl93YXJuaW5nKCJjb25zb2xlX2xhdGVfcmVzdW1lOiBDYW4ndCBzZXQgY29u c29sZS5cbiIpOworCQlyZXR1cm47CisJfQorCisJaWYgKHZ0X3dhaXRhY3RpdmUob3JpZ19mZ2Nv bnNvbGUpKQorCQlwcl93YXJuaW5nKCJjb25zb2xlX2xhdGVfcmVzdW1lOiBDYW4ndCBzd2l0Y2gg VkNzLlxuIik7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgZWFybHlfc3VzcGVuZCBjb25zb2xlX2Vhcmx5 X3N1c3BlbmRfZGVzYyA9IHsKKwkubGV2ZWwgPSBFQVJMWV9TVVNQRU5EX0xFVkVMX1NUT1BfRFJB V0lORywKKwkuc3VzcGVuZCA9IGNvbnNvbGVfZWFybHlfc3VzcGVuZCwKKwkucmVzdW1lID0gY29u c29sZV9sYXRlX3Jlc3VtZSwKK307CisKK3N0YXRpYyBpbnQgX19pbml0IGNvbnNvbGVfZWFybHlf c3VzcGVuZF9pbml0KHZvaWQpCit7CisJcmVnaXN0ZXJfZWFybHlfc3VzcGVuZCgmY29uc29sZV9l YXJseV9zdXNwZW5kX2Rlc2MpOworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCAgX19leGl0 IGNvbnNvbGVfZWFybHlfc3VzcGVuZF9leGl0KHZvaWQpCit7CisJdW5yZWdpc3Rlcl9lYXJseV9z dXNwZW5kKCZjb25zb2xlX2Vhcmx5X3N1c3BlbmRfZGVzYyk7Cit9CisKK21vZHVsZV9pbml0KGNv bnNvbGVfZWFybHlfc3VzcGVuZF9pbml0KTsKK21vZHVsZV9leGl0KGNvbnNvbGVfZWFybHlfc3Vz cGVuZF9leGl0KTsKKwotLSAKMS42LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmxpbnV4LXBtIG1haWxpbmcgbGlzdApsaW51eC1wbUBsaXN0cy5saW51 eC1mb3VuZGF0aW9uLm9yZwpodHRwczovL2xpc3RzLmxpbnV4LWZvdW5kYXRpb24ub3JnL21haWxt YW4vbGlzdGluZm8vbGludXgtcG0=