From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= Subject: [PATCH 08/10] PM: earlysuspend: Removing dependence on console. Date: Tue, 10 Feb 2009 17:49:13 -0800 Message-ID: <1234316955-31304-9-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> <1234316955-31304-8-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-8-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, Rebecca Schultz List-Id: linux-pm@vger.kernel.org RnJvbTogUmViZWNjYSBTY2h1bHR6IDxyc2NodWx0ekBnb29nbGUuY29tPgoKUmF0aGVyIHRoYW4g c2lnbmFsaW5nIGEgZnVsbCB1cGRhdGUgb2YgdGhlIGRpc3BsYXkgZnJvbSB1c2Vyc3BhY2Ugdmlh IGEKY29uc29sZSBzd2l0Y2gsIHRoaXMgcGF0Y2ggaW50cm9kdWNlcyAyIGZpbGVzIGludCAvc3lz L3Bvd2VyLAp3YWl0X2Zvcl9mYl9zbGVlcCBhbmQgd2FpdF9mb3JfZmJfd2FrZS4gIFJlYWRpbmcg dGhlc2UgZmlsZXMgd2lsbCBibG9jawp1bnRpbCB0aGUgcmVxdWVzdGVkIHN0YXRlIGhhcyBiZWVu IGVudGVyZWQuICBXaGVuIGEgcmVhZCBmcm9tCndhaXRfZm9yX2ZiX3NsZWVwIHJldHVybnMgdXNl cnNwYWNlIHNob3VsZCBzdG9wIGRyYXdpbmcuICBXaGVuCndhaXRfZm9yX2ZiX3dha2UgcmV0dXJu cywgaXQgc2hvdWxkIGRvIGEgZnVsbCB1cGRhdGUuICBJZiBlaXRoZXIgYXJlIGNhbGxlZAp3aGVu IHRoZSBmYiBkcml2ZXIgaXMgYWxyZWFkeSBpbiB0aGUgcmVxdWVzdGVkIHN0YXRlLCB0aGV5IHdp bGwgcmV0dXJuCmltbWVkaWF0ZWx5LgoKU2lnbmVkLW9mZi1ieTogUmViZWNjYSBTY2h1bHR6IDxy c2NodWx0ekBnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBBcnZlIEhqw7hubmV2w6VnIDxhcnZl QGFuZHJvaWQuY29tPgotLS0KIGtlcm5lbC9wb3dlci9LY29uZmlnICAgICAgICAgIHwgICAgOSAr KysKIGtlcm5lbC9wb3dlci9NYWtlZmlsZSAgICAgICAgIHwgICAgMSArCiBrZXJuZWwvcG93ZXIv ZmJlYXJseXN1c3BlbmQuYyB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMTYzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25z KC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQga2VybmVsL3Bvd2VyL2ZiZWFybHlzdXNwZW5kLmMKCmRp ZmYgLS1naXQgYS9rZXJuZWwvcG93ZXIvS2NvbmZpZyBiL2tlcm5lbC9wb3dlci9LY29uZmlnCmlu ZGV4IDA0ZTZmYWQuLmEyMTRlZjIgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9wb3dlci9LY29uZmlnCisr KyBiL2tlcm5lbC9wb3dlci9LY29uZmlnCkBAIC0xNjEsNiArMTYxLDcgQEAgY29uZmlnIEVBUkxZ U1VTUEVORAogCiBjaG9pY2UKIAlwcm9tcHQgIlVzZXItc3BhY2Ugc2NyZWVuIGFjY2VzcyIKKwlk ZWZhdWx0IEZCX0VBUkxZU1VTUEVORCBpZiAhRlJBTUVCVUZGRVJfQ09OU09MRQogCWRlZmF1bHQg Q09OU09MRV9FQVJMWVNVU1BFTkQKIAlkZXBlbmRzIG9uIEVBUkxZU1VTUEVORAogCkBAIC0xNzQs NiArMTc1LDE0IEBAIGNob2ljZQogCQkgIFJlZ2lzdGVyIGVhcmx5IHN1c3BlbmQgaGFuZGxlciB0 byBwZXJmb3JtIGEgY29uc29sZSBzd2l0Y2gKIAkJICB3aGVuIHVzZXItc3BhY2Ugc2hvdWxkIHN0 b3AgZHJhd2luZyB0byB0aGUgc2NyZWVuIGFuZCBhIHN3aXRjaAogCQkgIGJhY2sgd2hlbiBpdCBz aG91bGQgcmVzdW1lLgorCisJY29uZmlnIEZCX0VBUkxZU1VTUEVORAorCQlib29sICJTeXNmcyBp bnRlcmZhY2UiCisJCWRlcGVuZHMgb24gRUFSTFlTVVNQRU5ECisJCS0tLWhlbHAtLS0KKwkJICBS ZWdpc3RlciBlYXJseSBzdXNwZW5kIGhhbmRsZXIgdGhhdCBub3RpZmllcyBhbmQgd2FpdHMgZm9y CisJCSAgdXNlci1zcGFjZSB0aHJvdWdoIHN5c2ZzIHdoZW4gdXNlci1zcGFjZSBzaG91bGQgc3Rv cCBkcmF3aW5nCisJCSAgdG8gdGhlIHNjcmVlbiBhbmQgbm90aWZpZXMgdXNlci1zcGFjZSB3aGVu IGl0IHNob3VsZCByZXN1bWUuCiBlbmRjaG9pY2UKIAogY29uZmlnIEhJQkVSTkFUSU9OCmRpZmYg LS1naXQgYS9rZXJuZWwvcG93ZXIvTWFrZWZpbGUgYi9rZXJuZWwvcG93ZXIvTWFrZWZpbGUKaW5k ZXggOGJmMjkzZC4uNWJlYWEyMSAxMDA2NDQKLS0tIGEva2VybmVsL3Bvd2VyL01ha2VmaWxlCisr KyBiL2tlcm5lbC9wb3dlci9NYWtlZmlsZQpAQCAtMTAsNiArMTAsNyBAQCBvYmotJChDT05GSUdf V0FLRUxPQ0spCQkrPSB3YWtlbG9jay5vCiBvYmotJChDT05GSUdfVVNFUl9XQUtFTE9DSykJKz0g dXNlcndha2Vsb2NrLm8KIG9iai0kKENPTkZJR19FQVJMWVNVU1BFTkQpCSs9IGVhcmx5c3VzcGVu ZC5vCiBvYmotJChDT05GSUdfQ09OU09MRV9FQVJMWVNVU1BFTkQpCSs9IGNvbnNvbGVlYXJseXN1 c3BlbmQubworb2JqLSQoQ09ORklHX0ZCX0VBUkxZU1VTUEVORCkJKz0gZmJlYXJseXN1c3BlbmQu bwogb2JqLSQoQ09ORklHX0hJQkVSTkFUSU9OKQkrPSBzd3N1c3AubyBkaXNrLm8gc25hcHNob3Qu byBzd2FwLm8gdXNlci5vCiAKIG9iai0kKENPTkZJR19NQUdJQ19TWVNSUSkJKz0gcG93ZXJvZmYu bwpkaWZmIC0tZ2l0IGEva2VybmVsL3Bvd2VyL2ZiZWFybHlzdXNwZW5kLmMgYi9rZXJuZWwvcG93 ZXIvZmJlYXJseXN1c3BlbmQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4x OWYzZTU0Ci0tLSAvZGV2L251bGwKKysrIGIva2VybmVsL3Bvd2VyL2ZiZWFybHlzdXNwZW5kLmMK QEAgLTAsMCArMSwxNTMgQEAKKy8qIGtlcm5lbC9wb3dlci9mYmVhcmx5c3VzcGVuZC5jCisgKgor ICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMDggR29vZ2xlLCBJbmMuCisgKgorICogVGhpcyBzb2Z0 d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YworICogTGljZW5zZSB2ZXJzaW9uIDIsIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBhbmQKKyAqIG1heSBiZSBjb3BpZWQsIGRpc3RyaWJ1dGVkLCBhbmQgbW9k aWZpZWQgdW5kZXIgdGhvc2UgdGVybXMuCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1 dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBB TlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVS Q0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRo ZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisg Ki8KKworI2luY2x1ZGUgPGxpbnV4L2Vhcmx5c3VzcGVuZC5oPgorI2luY2x1ZGUgPGxpbnV4L21v ZHVsZS5oPgorI2luY2x1ZGUgPGxpbnV4L3dhaXQuaD4KKworI2luY2x1ZGUgInBvd2VyLmgiCisK K3N0YXRpYyB3YWl0X3F1ZXVlX2hlYWRfdCBmYl9zdGF0ZV93cTsKK3N0YXRpYyBERUZJTkVfU1BJ TkxPQ0soZmJfc3RhdGVfbG9jayk7CitzdGF0aWMgZW51bSB7CisJRkJfU1RBVEVfU1RPUFBFRF9E UkFXSU5HLAorCUZCX1NUQVRFX1JFUVVFU1RfU1RPUF9EUkFXSU5HLAorCUZCX1NUQVRFX0RSQVdJ TkdfT0ssCit9IGZiX3N0YXRlOworCisvKiB0ZWxsIHVzZXJzcGFjZSB0byBzdG9wIGRyYXdpbmcs IHdhaXQgZm9yIGl0IHRvIHN0b3AgKi8KK3N0YXRpYyB2b2lkIHN0b3BfZHJhd2luZ19lYXJseV9z dXNwZW5kKHN0cnVjdCBlYXJseV9zdXNwZW5kICpoKQoreworCWludCByZXQ7CisJdW5zaWduZWQg bG9uZyBpcnFfZmxhZ3M7CisKKwlzcGluX2xvY2tfaXJxc2F2ZSgmZmJfc3RhdGVfbG9jaywgaXJx X2ZsYWdzKTsKKwlmYl9zdGF0ZSA9IEZCX1NUQVRFX1JFUVVFU1RfU1RPUF9EUkFXSU5HOworCXNw aW5fdW5sb2NrX2lycXJlc3RvcmUoJmZiX3N0YXRlX2xvY2ssIGlycV9mbGFncyk7CisKKwl3YWtl X3VwX2FsbCgmZmJfc3RhdGVfd3EpOworCXJldCA9IHdhaXRfZXZlbnRfdGltZW91dChmYl9zdGF0 ZV93cSwKKwkJCQkgZmJfc3RhdGUgPT0gRkJfU1RBVEVfU1RPUFBFRF9EUkFXSU5HLAorCQkJCSBI Wik7CisJaWYgKHVubGlrZWx5KGZiX3N0YXRlICE9IEZCX1NUQVRFX1NUT1BQRURfRFJBV0lORykp CisJCXByX3dhcm5pbmcoInN0b3BfZHJhd2luZ19lYXJseV9zdXNwZW5kOiB0aW1lb3V0IHdhaXRp bmcgZm9yICIKKwkJCSAgICJ1c2Vyc3BhY2UgdG8gc3RvcCBkcmF3aW5nXG4iKTsKK30KKworLyog dGVsbCB1c2Vyc3BhY2UgdG8gc3RhcnQgZHJhd2luZyAqLworc3RhdGljIHZvaWQgc3RhcnRfZHJh d2luZ19sYXRlX3Jlc3VtZShzdHJ1Y3QgZWFybHlfc3VzcGVuZCAqaCkKK3sKKwl1bnNpZ25lZCBs b25nIGlycV9mbGFnczsKKworCXNwaW5fbG9ja19pcnFzYXZlKCZmYl9zdGF0ZV9sb2NrLCBpcnFf ZmxhZ3MpOworCWZiX3N0YXRlID0gRkJfU1RBVEVfRFJBV0lOR19PSzsKKwlzcGluX3VubG9ja19p cnFyZXN0b3JlKCZmYl9zdGF0ZV9sb2NrLCBpcnFfZmxhZ3MpOworCXdha2VfdXAoJmZiX3N0YXRl X3dxKTsKK30KKworc3RhdGljIHN0cnVjdCBlYXJseV9zdXNwZW5kIHN0b3BfZHJhd2luZ19lYXJs eV9zdXNwZW5kX2Rlc2MgPSB7CisJLmxldmVsID0gRUFSTFlfU1VTUEVORF9MRVZFTF9TVE9QX0RS QVdJTkcsCisJLnN1c3BlbmQgPSBzdG9wX2RyYXdpbmdfZWFybHlfc3VzcGVuZCwKKwkucmVzdW1l ID0gc3RhcnRfZHJhd2luZ19sYXRlX3Jlc3VtZSwKK307CisKK3N0YXRpYyBzc2l6ZV90IHdhaXRf Zm9yX2ZiX3NsZWVwX3Nob3coc3RydWN0IGtvYmplY3QgKmtvYmosCisJCQkJICAgICAgc3RydWN0 IGtvYmpfYXR0cmlidXRlICphdHRyLCBjaGFyICpidWYpCit7CisJY2hhciAqcyA9IGJ1ZjsKKwlp bnQgcmV0OworCisJcmV0ID0gd2FpdF9ldmVudF9pbnRlcnJ1cHRpYmxlKGZiX3N0YXRlX3dxLAor CQkJCSAgICAgICBmYl9zdGF0ZSAhPSBGQl9TVEFURV9EUkFXSU5HX09LKTsKKwlpZiAocmV0ICYm IGZiX3N0YXRlID09IEZCX1NUQVRFX0RSQVdJTkdfT0spCisJCXJldHVybiByZXQ7CisJZWxzZQor CQlzICs9IHNwcmludGYoYnVmLCAic2xlZXBpbmciKTsKKwlyZXR1cm4gcyAtIGJ1ZjsKK30KKwor c3RhdGljIHNzaXplX3Qgd2FpdF9mb3JfZmJfd2FrZV9zaG93KHN0cnVjdCBrb2JqZWN0ICprb2Jq LAorCQkJCSAgICAgc3RydWN0IGtvYmpfYXR0cmlidXRlICphdHRyLCBjaGFyICpidWYpCit7CisJ Y2hhciAqcyA9IGJ1ZjsKKwlpbnQgcmV0OworCXVuc2lnbmVkIGxvbmcgaXJxX2ZsYWdzOworCisJ c3Bpbl9sb2NrX2lycXNhdmUoJmZiX3N0YXRlX2xvY2ssIGlycV9mbGFncyk7CisJaWYgKGZiX3N0 YXRlID09IEZCX1NUQVRFX1JFUVVFU1RfU1RPUF9EUkFXSU5HKSB7CisJCWZiX3N0YXRlID0gRkJf U1RBVEVfU1RPUFBFRF9EUkFXSU5HOworCQl3YWtlX3VwKCZmYl9zdGF0ZV93cSk7CisJfQorCXNw aW5fdW5sb2NrX2lycXJlc3RvcmUoJmZiX3N0YXRlX2xvY2ssIGlycV9mbGFncyk7CisKKwlyZXQg PSB3YWl0X2V2ZW50X2ludGVycnVwdGlibGUoZmJfc3RhdGVfd3EsCisJCQkJICAgICAgIGZiX3N0 YXRlID09IEZCX1NUQVRFX0RSQVdJTkdfT0spOworCWlmIChyZXQgJiYgZmJfc3RhdGUgIT0gRkJf U1RBVEVfRFJBV0lOR19PSykKKwkJcmV0dXJuIHJldDsKKwllbHNlCisJCXMgKz0gc3ByaW50Zihi dWYsICJhd2FrZSIpOworCisJcmV0dXJuIHMgLSBidWY7Cit9CisKKyNkZWZpbmUgcG93ZXJfcm9f YXR0cihfbmFtZSkgXAorc3RhdGljIHN0cnVjdCBrb2JqX2F0dHJpYnV0ZSBfbmFtZSMjX2F0dHIg PSB7CVwKKwkuYXR0cgk9IHsJCQkJXAorCQkubmFtZSA9IF9fc3RyaW5naWZ5KF9uYW1lKSwJXAor CQkubW9kZSA9IDA0NDQsCQkJXAorCX0sCQkJCQlcCisJLnNob3cJPSBfbmFtZSMjX3Nob3csCQkJ XAorCS5zdG9yZQk9IE5VTEwsCQlcCit9CisKK3Bvd2VyX3JvX2F0dHIod2FpdF9mb3JfZmJfc2xl ZXApOworcG93ZXJfcm9fYXR0cih3YWl0X2Zvcl9mYl93YWtlKTsKKworc3RhdGljIHN0cnVjdCBh dHRyaWJ1dGUgKmdbXSA9IHsKKwkmd2FpdF9mb3JfZmJfc2xlZXBfYXR0ci5hdHRyLAorCSZ3YWl0 X2Zvcl9mYl93YWtlX2F0dHIuYXR0ciwKKwlOVUxMLAorfTsKKworc3RhdGljIHN0cnVjdCBhdHRy aWJ1dGVfZ3JvdXAgYXR0cl9ncm91cCA9IHsKKwkuYXR0cnMgPSBnLAorfTsKKworc3RhdGljIGlu dCBfX2luaXQgZmJfZWFybHlzdXNwZW5kX2luaXQodm9pZCkKK3sKKwlpbnQgcmV0OworCisJaW5p dF93YWl0cXVldWVfaGVhZCgmZmJfc3RhdGVfd3EpOworCWZiX3N0YXRlID0gRkJfU1RBVEVfRFJB V0lOR19PSzsKKworCXJldCA9IHN5c2ZzX2NyZWF0ZV9ncm91cChwb3dlcl9rb2JqLCAmYXR0cl9n cm91cCk7CisJaWYgKHJldCkgeworCQlwcl9lcnIoImZiX2Vhcmx5c3VzcGVuZF9pbml0OiBzeXNm c19jcmVhdGVfZ3JvdXAgZmFpbGVkXG4iKTsKKwkJcmV0dXJuIHJldDsKKwl9CisKKwlyZWdpc3Rl cl9lYXJseV9zdXNwZW5kKCZzdG9wX2RyYXdpbmdfZWFybHlfc3VzcGVuZF9kZXNjKTsKKwlyZXR1 cm4gMDsKK30KKworc3RhdGljIHZvaWQgIF9fZXhpdCBmYl9lYXJseXN1c3BlbmRfZXhpdCh2b2lk KQoreworCXVucmVnaXN0ZXJfZWFybHlfc3VzcGVuZCgmc3RvcF9kcmF3aW5nX2Vhcmx5X3N1c3Bl bmRfZGVzYyk7CisJc3lzZnNfcmVtb3ZlX2dyb3VwKHBvd2VyX2tvYmosICZhdHRyX2dyb3VwKTsK K30KKworbW9kdWxlX2luaXQoZmJfZWFybHlzdXNwZW5kX2luaXQpOworbW9kdWxlX2V4aXQoZmJf ZWFybHlzdXNwZW5kX2V4aXQpOworCi0tIAoxLjYuMQoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KbGludXgtcG0gbWFpbGluZyBsaXN0CmxpbnV4LXBtQGxp c3RzLmxpbnV4LWZvdW5kYXRpb24ub3JnCmh0dHBzOi8vbGlzdHMubGludXgtZm91bmRhdGlvbi5v cmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1wbQ==