From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= Subject: [PATCH 09/11] PM: earlysuspend: Removing dependence on console. Date: Tue, 13 Jan 2009 17:27:54 -0800 Message-ID: <1231896476-22445-10-git-send-email-arve@android.com> References: <1231896476-22445-1-git-send-email-arve@android.com> <1231896476-22445-2-git-send-email-arve@android.com> <1231896476-22445-3-git-send-email-arve@android.com> <1231896476-22445-4-git-send-email-arve@android.com> <1231896476-22445-5-git-send-email-arve@android.com> <1231896476-22445-6-git-send-email-arve@android.com> <1231896476-22445-7-git-send-email-arve@android.com> <1231896476-22445-8-git-send-email-arve@android.com> <1231896476-22445-9-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: <1231896476-22445-9-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: Rebecca Schultz , swetland@google.com List-Id: linux-pm@vger.kernel.org RnJvbTogUmViZWNjYSBTY2h1bHR6IDxyc2NodWx0ekBnb29nbGUuY29tPgoKUmF0aGVyIHRoYW4g c2lnbmFsaW5nIGEgZnVsbCB1cGRhdGUgb2YgdGhlIGRpc3BsYXkgZnJvbSB1c2Vyc3BhY2Ugdmlh IGEKY29uc29sZSBzd2l0Y2gsIHRoaXMgcGF0Y2ggaW50cm9kdWNlcyAyIGZpbGVzIGludCAvc3lz L3Bvd2VyLAp3YWl0X2Zvcl9mYl9zbGVlcCBhbmQgd2FpdF9mb3JfZmJfd2FrZS4gIFJlYWRpbmcg dGhlc2UgZmlsZXMgd2lsbCBibG9jawp1bnRpbCB0aGUgcmVxdWVzdGVkIHN0YXRlIGhhcyBiZWVu IGVudGVyZWQuICBXaGVuIGEgcmVhZCBmcm9tCndhaXRfZm9yX2ZiX3NsZWVwIHJldHVybnMgdXNl cnNwYWNlIHNob3VsZCBzdG9wIGRyYXdpbmcuICBXaGVuCndhaXRfZm9yX2ZiX3dha2UgcmV0dXJu cywgaXQgc2hvdWxkIGRvIGEgZnVsbCB1cGRhdGUuICBJZiBlaXRoZXIgYXJlIGNhbGxlZAp3aGVu IHRoZSBmYiBkcml2ZXIgaXMgYWxyZWFkeSBpbiB0aGUgcmVxdWVzdGVkIHN0YXRlLCB0aGV5IHdp bGwgcmV0dXJuCmltbWVkaWF0ZWx5LgoKU2lnbmVkLW9mZi1ieTogUmViZWNjYSBTY2h1bHR6IDxy c2NodWx0ekBnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBBcnZlIEhqw7hubmV2w6VnIDxhcnZl QGFuZHJvaWQuY29tPgotLS0KIGtlcm5lbC9wb3dlci9LY29uZmlnICAgICAgICAgIHwgICAgOSAr KysKIGtlcm5lbC9wb3dlci9NYWtlZmlsZSAgICAgICAgIHwgICAgMSArCiBrZXJuZWwvcG93ZXIv ZmJlYXJseXN1c3BlbmQuYyB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMTYzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25z KC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQga2VybmVsL3Bvd2VyL2ZiZWFybHlzdXNwZW5kLmMKCmRp ZmYgLS1naXQgYS9rZXJuZWwvcG93ZXIvS2NvbmZpZyBiL2tlcm5lbC9wb3dlci9LY29uZmlnCmlu ZGV4IDM2ZTQ0MmYuLjAxNWU2YWUgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9wb3dlci9LY29uZmlnCisr KyBiL2tlcm5lbC9wb3dlci9LY29uZmlnCkBAIC0xNTksNiArMTU5LDcgQEAgY29uZmlnIEVBUkxZ U1VTUEVORAogCiBjaG9pY2UKIAlwcm9tcHQgIlVzZXItc3BhY2Ugc2NyZWVuIGFjY2VzcyIKKwlk ZWZhdWx0IEZCX0VBUkxZU1VTUEVORCBpZiAhRlJBTUVCVUZGRVJfQ09OU09MRQogCWRlZmF1bHQg Q09OU09MRV9FQVJMWVNVU1BFTkQKIAlkZXBlbmRzIG9uIEhBU19FQVJMWVNVU1BFTkQKIApAQCAt MTcyLDYgKzE3MywxNCBAQCBjaG9pY2UKIAkJICBSZWdpc3RlciBlYXJseSBzdXNwZW5kIGhhbmRs ZXIgdG8gcGVyZm9ybSBhIGNvbnNvbGUgc3dpdGNoIHRvCiAJCSAgd2hlbiB1c2VyLXNwYWNlIHNo b3VsZCBzdG9wIGRyYXdpbmcgdG8gdGhlIHNjcmVlbiBhbmQgYSBzd2l0Y2gKIAkJICBiYWNrIHdo ZW4gaXQgc2hvdWxkIHJlc3VtZS4KKworCWNvbmZpZyBGQl9FQVJMWVNVU1BFTkQKKwkJYm9vbCAi U3lzZnMgaW50ZXJmYWNlIgorCQlkZXBlbmRzIG9uIEhBU19FQVJMWVNVU1BFTkQKKwkJLS0taGVs cC0tLQorCQkgIFJlZ2lzdGVyIGVhcmx5IHN1c3BlbmQgaGFuZGxlciB0aGF0IG5vdGlmaWVzIGFu ZCB3YWl0cyBmb3IKKwkJICB1c2VyLXNwYWNlIHRocm91Z2ggc3lzZnMgd2hlbiB1c2VyLXNwYWNl IHNob3VsZCBzdG9wIGRyYXdpbmcKKwkJICB0byB0aGUgc2NyZWVuIGFuZCBub3RpZmllcyB1c2Vy LXNwYWNlIHdoZW4gaXQgc2hvdWxkIHJlc3VtZS4KIGVuZGNob2ljZQogCiBjb25maWcgSElCRVJO QVRJT04KZGlmZiAtLWdpdCBhL2tlcm5lbC9wb3dlci9NYWtlZmlsZSBiL2tlcm5lbC9wb3dlci9N YWtlZmlsZQppbmRleCA1Yjc0MTMzLi43YjhiMmNjIDEwMDY0NAotLS0gYS9rZXJuZWwvcG93ZXIv TWFrZWZpbGUKKysrIGIva2VybmVsL3Bvd2VyL01ha2VmaWxlCkBAIC05LDYgKzksNyBAQCBvYmot JChDT05GSUdfV0FLRUxPQ0spCQkrPSB3YWtlbG9jay5vCiBvYmotJChDT05GSUdfVVNFUl9XQUtF TE9DSykJKz0gdXNlcndha2Vsb2NrLm8KIG9iai0kKENPTkZJR19FQVJMWVNVU1BFTkQpCSs9IGVh cmx5c3VzcGVuZC5vCiBvYmotJChDT05GSUdfQ09OU09MRV9FQVJMWVNVU1BFTkQpCSs9IGNvbnNv bGVlYXJseXN1c3BlbmQubworb2JqLSQoQ09ORklHX0ZCX0VBUkxZU1VTUEVORCkJKz0gZmJlYXJs eXN1c3BlbmQubwogb2JqLSQoQ09ORklHX0hJQkVSTkFUSU9OKQkrPSBzd3N1c3AubyBkaXNrLm8g c25hcHNob3QubyBzd2FwLm8gdXNlci5vCiAKIG9iai0kKENPTkZJR19NQUdJQ19TWVNSUSkJKz0g cG93ZXJvZmYubwpkaWZmIC0tZ2l0IGEva2VybmVsL3Bvd2VyL2ZiZWFybHlzdXNwZW5kLmMgYi9r ZXJuZWwvcG93ZXIvZmJlYXJseXN1c3BlbmQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi4xNTEzNzY1Ci0tLSAvZGV2L251bGwKKysrIGIva2VybmVsL3Bvd2VyL2ZiZWFybHlz dXNwZW5kLmMKQEAgLTAsMCArMSwxNTMgQEAKKy8qIGtlcm5lbC9wb3dlci9mYmVhcmx5c3VzcGVu ZC5jCisgKgorICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMDggR29vZ2xlLCBJbmMuCisgKgorICog VGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYworICogTGljZW5zZSB2ZXJzaW9uIDIsIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBhbmQKKyAqIG1heSBiZSBjb3BpZWQsIGRpc3RyaWJ1dGVk LCBhbmQgbW9kaWZpZWQgdW5kZXIgdGhvc2UgdGVybXMuCisgKgorICogVGhpcyBwcm9ncmFtIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQg V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBv ZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF LiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls cy4KKyAqCisgKi8KKworI2luY2x1ZGUgPGxpbnV4L2Vhcmx5c3VzcGVuZC5oPgorI2luY2x1ZGUg PGxpbnV4L21vZHVsZS5oPgorI2luY2x1ZGUgPGxpbnV4L3dhaXQuaD4KKworI2luY2x1ZGUgInBv d2VyLmgiCisKK3N0YXRpYyB3YWl0X3F1ZXVlX2hlYWRfdCBmYl9zdGF0ZV93cTsKK3N0YXRpYyBE RUZJTkVfU1BJTkxPQ0soZmJfc3RhdGVfbG9jayk7CitzdGF0aWMgZW51bSB7CisJRkJfU1RBVEVf U1RPUFBFRF9EUkFXSU5HLAorCUZCX1NUQVRFX1JFUVVFU1RfU1RPUF9EUkFXSU5HLAorCUZCX1NU QVRFX0RSQVdJTkdfT0ssCit9IGZiX3N0YXRlOworCisvKiB0ZWxsIHVzZXJzcGFjZSB0byBzdG9w IGRyYXdpbmcsIHdhaXQgZm9yIGl0IHRvIHN0b3AgKi8KK3N0YXRpYyB2b2lkIHN0b3BfZHJhd2lu Z19lYXJseV9zdXNwZW5kKHN0cnVjdCBlYXJseV9zdXNwZW5kICpoKQoreworCWludCByZXQ7CisJ dW5zaWduZWQgbG9uZyBpcnFfZmxhZ3M7CisKKwlzcGluX2xvY2tfaXJxc2F2ZSgmZmJfc3RhdGVf bG9jaywgaXJxX2ZsYWdzKTsKKwlmYl9zdGF0ZSA9IEZCX1NUQVRFX1JFUVVFU1RfU1RPUF9EUkFX SU5HOworCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmZiX3N0YXRlX2xvY2ssIGlycV9mbGFncyk7 CisKKwl3YWtlX3VwX2FsbCgmZmJfc3RhdGVfd3EpOworCXJldCA9IHdhaXRfZXZlbnRfdGltZW91 dChmYl9zdGF0ZV93cSwKKwkJCQkgZmJfc3RhdGUgPT0gRkJfU1RBVEVfU1RPUFBFRF9EUkFXSU5H LAorCQkJCSBIWik7CisJaWYgKHVubGlrZWx5KGZiX3N0YXRlICE9IEZCX1NUQVRFX1NUT1BQRURf RFJBV0lORykpCisJCXByX3dhcm5pbmcoInN0b3BfZHJhd2luZ19lYXJseV9zdXNwZW5kOiB0aW1l b3V0IHdhaXRpbmcgZm9yICIKKwkJCSAgICJ1c2Vyc3BhY2UgdG8gc3RvcCBkcmF3aW5nXG4iKTsK K30KKworLyogdGVsbCB1c2Vyc3BhY2UgdG8gc3RhcnQgZHJhd2luZyAqLworc3RhdGljIHZvaWQg c3RhcnRfZHJhd2luZ19sYXRlX3Jlc3VtZShzdHJ1Y3QgZWFybHlfc3VzcGVuZCAqaCkKK3sKKwl1 bnNpZ25lZCBsb25nIGlycV9mbGFnczsKKworCXNwaW5fbG9ja19pcnFzYXZlKCZmYl9zdGF0ZV9s b2NrLCBpcnFfZmxhZ3MpOworCWZiX3N0YXRlID0gRkJfU1RBVEVfRFJBV0lOR19PSzsKKwlzcGlu X3VubG9ja19pcnFyZXN0b3JlKCZmYl9zdGF0ZV9sb2NrLCBpcnFfZmxhZ3MpOworCXdha2VfdXAo JmZiX3N0YXRlX3dxKTsKK30KKworc3RhdGljIHN0cnVjdCBlYXJseV9zdXNwZW5kIHN0b3BfZHJh d2luZ19lYXJseV9zdXNwZW5kX2Rlc2MgPSB7CisJLmxldmVsID0gRUFSTFlfU1VTUEVORF9MRVZF TF9TVE9QX0RSQVdJTkcsCisJLnN1c3BlbmQgPSBzdG9wX2RyYXdpbmdfZWFybHlfc3VzcGVuZCwK KwkucmVzdW1lID0gc3RhcnRfZHJhd2luZ19sYXRlX3Jlc3VtZSwKK307CisKK3N0YXRpYyBzc2l6 ZV90IHdhaXRfZm9yX2ZiX3NsZWVwX3Nob3coc3RydWN0IGtvYmplY3QgKmtvYmosCisJCQkJICAg ICAgc3RydWN0IGtvYmpfYXR0cmlidXRlICphdHRyLCBjaGFyICpidWYpCit7CisJY2hhciAqcyA9 IGJ1ZjsKKwlpbnQgcmV0OworCisJcmV0ID0gd2FpdF9ldmVudF9pbnRlcnJ1cHRpYmxlKGZiX3N0 YXRlX3dxLAorCQkJCSAgICAgICBmYl9zdGF0ZSAhPSBGQl9TVEFURV9EUkFXSU5HX09LKTsKKwlp ZiAocmV0ICYmIGZiX3N0YXRlID09IEZCX1NUQVRFX0RSQVdJTkdfT0spCisJCXJldHVybiByZXQ7 CisJZWxzZQorCQlzICs9IHNwcmludGYoYnVmLCAic2xlZXBpbmciKTsKKwlyZXR1cm4gcyAtIGJ1 ZjsKK30KKworc3RhdGljIHNzaXplX3Qgd2FpdF9mb3JfZmJfd2FrZV9zaG93KHN0cnVjdCBrb2Jq ZWN0ICprb2JqLAorCQkJCSAgICAgc3RydWN0IGtvYmpfYXR0cmlidXRlICphdHRyLCBjaGFyICpi dWYpCit7CisJY2hhciAqcyA9IGJ1ZjsKKwlpbnQgcmV0OworCXVuc2lnbmVkIGxvbmcgaXJxX2Zs YWdzOworCisJc3Bpbl9sb2NrX2lycXNhdmUoJmZiX3N0YXRlX2xvY2ssIGlycV9mbGFncyk7CisJ aWYgKGZiX3N0YXRlID09IEZCX1NUQVRFX1JFUVVFU1RfU1RPUF9EUkFXSU5HKSB7CisJCWZiX3N0 YXRlID0gRkJfU1RBVEVfU1RPUFBFRF9EUkFXSU5HOworCQl3YWtlX3VwKCZmYl9zdGF0ZV93cSk7 CisJfQorCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmZiX3N0YXRlX2xvY2ssIGlycV9mbGFncyk7 CisKKwlyZXQgPSB3YWl0X2V2ZW50X2ludGVycnVwdGlibGUoZmJfc3RhdGVfd3EsCisJCQkJICAg ICAgIGZiX3N0YXRlID09IEZCX1NUQVRFX0RSQVdJTkdfT0spOworCWlmIChyZXQgJiYgZmJfc3Rh dGUgIT0gRkJfU1RBVEVfRFJBV0lOR19PSykKKwkJcmV0dXJuIHJldDsKKwllbHNlCisJCXMgKz0g c3ByaW50ZihidWYsICJhd2FrZSIpOworCisJcmV0dXJuIHMgLSBidWY7Cit9CisKKyNkZWZpbmUg cG93ZXJfcm9fYXR0cihfbmFtZSkgXAorc3RhdGljIHN0cnVjdCBrb2JqX2F0dHJpYnV0ZSBfbmFt ZSMjX2F0dHIgPSB7CVwKKwkuYXR0cgk9IHsJCQkJXAorCQkubmFtZSA9IF9fc3RyaW5naWZ5KF9u YW1lKSwJXAorCQkubW9kZSA9IDA0NDQsCQkJXAorCX0sCQkJCQlcCisJLnNob3cJPSBfbmFtZSMj X3Nob3csCQkJXAorCS5zdG9yZQk9IE5VTEwsCQlcCit9CisKK3Bvd2VyX3JvX2F0dHIod2FpdF9m b3JfZmJfc2xlZXApOworcG93ZXJfcm9fYXR0cih3YWl0X2Zvcl9mYl93YWtlKTsKKworc3RhdGlj IHN0cnVjdCBhdHRyaWJ1dGUgKmdbXSA9IHsKKwkmd2FpdF9mb3JfZmJfc2xlZXBfYXR0ci5hdHRy LAorCSZ3YWl0X2Zvcl9mYl93YWtlX2F0dHIuYXR0ciwKKwlOVUxMLAorfTsKKworc3RhdGljIHN0 cnVjdCBhdHRyaWJ1dGVfZ3JvdXAgYXR0cl9ncm91cCA9IHsKKwkuYXR0cnMgPSBnLAorfTsKKwor c3RhdGljIGludCBfX2luaXQgYW5kcm9pZF9wb3dlcl9pbml0KHZvaWQpCit7CisJaW50IHJldDsK KworCWluaXRfd2FpdHF1ZXVlX2hlYWQoJmZiX3N0YXRlX3dxKTsKKwlmYl9zdGF0ZSA9IEZCX1NU QVRFX0RSQVdJTkdfT0s7CisKKwlyZXQgPSBzeXNmc19jcmVhdGVfZ3JvdXAocG93ZXJfa29iaiwg JmF0dHJfZ3JvdXApOworCWlmIChyZXQpIHsKKwkJcHJfZXJyKCJhbmRyb2lkX3Bvd2VyX2luaXQ6 IHN5c2ZzX2NyZWF0ZV9ncm91cCBmYWlsZWRcbiIpOworCQlyZXR1cm4gcmV0OworCX0KKworCXJl Z2lzdGVyX2Vhcmx5X3N1c3BlbmQoJnN0b3BfZHJhd2luZ19lYXJseV9zdXNwZW5kX2Rlc2MpOwor CXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCAgX19leGl0IGFuZHJvaWRfcG93ZXJfZXhpdCh2 b2lkKQoreworCXVucmVnaXN0ZXJfZWFybHlfc3VzcGVuZCgmc3RvcF9kcmF3aW5nX2Vhcmx5X3N1 c3BlbmRfZGVzYyk7CisJc3lzZnNfcmVtb3ZlX2dyb3VwKHBvd2VyX2tvYmosICZhdHRyX2dyb3Vw KTsKK30KKworbW9kdWxlX2luaXQoYW5kcm9pZF9wb3dlcl9pbml0KTsKK21vZHVsZV9leGl0KGFu ZHJvaWRfcG93ZXJfZXhpdCk7CisKLS0gCjEuNi4xCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1wbSBtYWlsaW5nIGxpc3QKbGludXgtcG1AbGlz dHMubGludXgtZm91bmRhdGlvbi5vcmcKaHR0cHM6Ly9saXN0cy5saW51eC1mb3VuZGF0aW9uLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXBt