Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751510AbdGREbb (ORCPT ); Tue, 18 Jul 2017 00:31:31 -0400 Received: from mail-bn3nam01on0064.outbound.protection.outlook.com ([104.47.33.64]:13600 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751372AbdGREam (ORCPT ); Tue, 18 Jul 2017 00:30:42 -0400 Authentication-Results: spf=softfail (sender IP is 192.88.158.2) smtp.mailfrom=gmail.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=gmail.com; Date: Tue, 18 Jul 2017 12:29:55 +0800 From: Peter Chen To: "Rafael J. Wysocki" CC: Peter Chen , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: Re: [PATCH v16 2/7] power: add power sequence library Message-ID: <20170718042955.GA12080@b29397-desktop> References: <1498027328-25078-1-git-send-email-peter.chen@nxp.com> <10723509.cz5GGA4OTz@aspire.rjw.lan> <20170710022815.GA8720@b29397-desktop> <2659617.dvNVihq86F@aspire.rjw.lan> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <2659617.dvNVihq86F@aspire.rjw.lan> User-Agent: Mutt/1.5.24 (2015-08-30) X-EOPAttributedMessage: 0 X-Matching-Connectors: 131448258405925071;(91ab9b29-cfa4-454e-5278-08d120cd25b8);() X-Forefront-Antispam-Report: CIP:192.88.158.2;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(336005)(39840400002)(39400400002)(39850400002)(39380400002)(39860400002)(39410400002)(39450400003)(2980300002)(189002)(24454002)(51914003)(199003)(9170700003)(93886004)(54906002)(105596002)(86362001)(2906002)(55016002)(106466001)(9686003)(626005)(6260500002)(73972006)(53936002)(39060400002)(46406003)(33656002)(8936002)(81166006)(189998001)(50466002)(76482006)(4326008)(6246003)(8676002)(38730400002)(110136004)(83322999)(77096006)(47776003)(97756001)(69596002)(5660300001)(7416002)(7406005)(8656003)(4001350100001)(104016004)(2950100002)(6666003)(87572001)(305945005)(83506001)(76176999)(23726003)(54356999)(50986999)(229853002)(73392002)(82202002)(1076002)(498600001)(33716001)(6916009)(81442002)(356003)(18370500001);DIR:OUT;SFP:1101;SCL:1;SRVR:BLUPR03MB472;H:az84smr01.freescale.net;FPR:;SPF:SoftFail;MLV:ovrnspm;MX:1;A:1;PTR:InfoDomainNonexistent;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11FD028;1:23Q2OBTeQ4vpWRZKF3uBT6qvY5GTUvjpu2W86dDii0DhV1jHnVIk+HPLzlKivsZbahGFT0Wm0WnccXvdM4IXj0e+X/Cq+I0/GuMm/O3sdgEhuJmCGqsCcVCYNRgTypPVjnp2mVOMHLVPBKsEpPIk21UZCMO0SNkIaAqqVm3oolyliTwIwymFXVdBz3fiIy8dOmQVClkAIdvzGau5pdOjfaRyCcaOEdAfTOvt0i/QoawVcUIk+obC07Xf8BcfYmLnxYGkMxGuNzotUqBemtj7ZwRZMQUVVSh6sWBf+mMKH/yXPaGl+zMU6gNHNd/fe9okYLzGmftQD4Ti+G14Hr4Y0Ou7Sxxk0l25rODI/FBMAxe088T6r5iFifkBp8GdFrIIWuRF743CmCZJplL2M7m986JThc0jyKcLupoJkC0dJ2yMfWqhnQr3E0LL75eq+Q2ezRtC/+cuc1D6hILtsKWdK03p9dEf5QLEDU/WC0n7m6fLM9PdTt3MEKX5TPHaS/FbgtPJNPm2QLLrSKE29eyEc3q4Hsn0367rGZ9AkMYGsD9GD5revXv79XcXbhQFEVs9S7cSaB2NihpSxzmhi1RnhfIxBMXSeNhgHHq5vUkW6iL9TSAJkgOyhcLSjH9pqZSBM5izxnbg14GPse+lk+bWxPgfNtnT0ehUgOcVkGZ7YHBDDpJUAnM44v6wU6AV9cNcoKPjWd+Yna/gjaSDKFWKRzzI1nUVqwILPY+9t9pswjOB2DT7ewFJzxo3Bg73Xup/cd6TtQ9yMqPbopMxmXWvP0HEwdlmCiSdEh4LHEnJCxtOW9AZW6h045POfOG11rn31LgrLorC3iaHVlGdPH88k8IOi/Qa1YTUB3uJQ194ydCm1MYArxsifVq8Eaeie/EJ+2ak9QqkBaeYeFtq01NVFyc5q4XWdqiN/PGO7Ywx18Q8TBBWd0AGdqrmKoxzUsII X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: dc63fd2e-1133-4161-9f6e-08d4cd95bf15 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(2017052603031)(201703131430075)(201703131517081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:BLUPR03MB472; X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB472;3:4hHhc8Uu/uExQQumZMqWtMiLPPJlJzxJO1v/xkqwTAZkj4/SvjsFAAFZjR0htVWW/VpdSdByBnS9EGNrZXCLhNnyk3qFys0ThQB6/fvWPiRqOYnQIBkHgPIEZ8dB6751wjCGdpv7MrweR+hU/cEiU54WAwa5ElEGZk3VC/x6SQxi+EVTAsFO3zm+kxiAI1MLHxwfgc6yxsvFF4FxKcHktC2HsKyk8uWfuFJj7UMJu5UGJCj07+hgIUBHPTc2XkGDiEeT1f+0pMvxmKPT0jc3e3WRJ77bqp+8i7IadexU502ttSPLwhVUFq/M4Qfbiw6NlqINc7H9ao5VRXFrG4YrGhyY84N+Cu3/Ww40slwCF7NTgxKzZuJqGgVUvupesixxrHnOZaHxld4wvQvgHIbFuJcwvUkfS3ghudotHrSn8fOGW/3nZloLVlGilolvv0hqhWUAPc5qrnzJSs+6/olRe9ZbFrLRJuglg4Cqg4D7ofoLeGqmbqK5udCBE1XQ47+lyImhfSEE3ykMlKd2yl+bUzOoSBjMIE6bnN63oA8yDxcxTZsmZWAFOhnJNXJxHY6hnPi8u+W/kXkx0o66RGqtfzHXETkYO7C+FYhmVm7R/Fq+D6SsWAFbXdgaXdPGPCefL7wAopxo7Om8/OG+4CdeOvzyM4qPs04cOqBTL8rj7fkpDiUi3CIl6sg9LcePum7gS0jBpRgTfP7RuKvnTeU2e7DtPmVV1HH0YsCGCvVcIRI+91AqwNbCosbZSM440LKhAtutCf1/MG0A+xn2TV4z/mv4BtghThyQcK4/UmGFnHeLORoW5LiH7PW/XkWXCJYtnpA1AI4RAdYVFLZq/AItC15Iecl1YbXQ7ZbnaB0Pckc= X-MS-TrafficTypeDiagnostic: BLUPR03MB472: X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB472;25:1RymXUqChLo4v2aHuM03Rd/Aa7zc4DVkQwboYNRe2fFusmJdNKyGWkQPd6++sYO5b7IKXL3JEQ6E6f74/AND5pYAymn0H3q0Cy9u5CEo1xa0vCHTVguHE2MnufZUfXTA5kRKEOHhcj2CA0/hwmFEN/Bxgxj8S3LiQ8aHQ4ALfitnGP2uCam1yZK+1evJ5MDXtkEanSomXJbyWCb/ahF9M7bPIKWxc/xE/PgFExtzAcbELW+8QDBNBwuyq4BSoLoFI0ZAG+TUCBEU0XlFziMuO8KefsempP+IMIpW468YYPpPXOS4EWFEjF175Of1I3C3xgtTqh7+s0ajGqdgeJK3pdHNuxSpGrBbWkzquALb+ltBp6IQguI+l99vlJn52L4irLcmaNVTXTamoURQfaOCVzK1GcdfbBy5FYxaUwRZYxL3oASdCJMJTDPXgue04UlRnTN4gCA4mAjwcGLaUeffDifD5D3EwvZaamkrA+ndC5cLeUC7DPeGt4ikTv75CwWSF3FCo8m7epVZFtaJc+LJjPEshukmGmkqyyq2CRoDhvzomh2qfn5CmCZz3iB76/9ov8K3x29+kY6ejyXMgDane0ZjeEWzBgWMuEc6KHHzB9bcEeDgPdTrkDnt1Nfm0tZsKd7Cmk0tathaS22QgLjBSIjrcycx/b2GSkMQjfEXexG8jJAg4Gddn9ag+cdz2whQ+nmxykmcUNIfdEI1NV4xncnrthViyoX+w3beAku05xfgb+PETREvQglVy/WkBtw5mfgMXlmixbkIiQeRtb4Hi8mTOLC9bzXZvd3N6TBcZNcMTkF2XZf/VGP+ZhGQOWmayUDg6URbDj8yNGoxxq5x7C+aSxv2ccS+5X8f3yY6kNGc9yBEWAFnLQi6Pgt6JwdzZ4D1jDwrI+RGfAjZTdFTmQQaxFxJ8NunjFIL2Lj5aXk= X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB472;31:fi+yrsesXQxQRTVTQ7IesfS/7tANWL8VaXdc1cVEykmoxXEHq1HtJ6Ex1WFZFfbcN+pa+rQQSS2OC2BeaG8hYa9sMtBHvQ3pNSvSQhQ8NlFkyR8l1xQa2lyBtbiZFW7aeIhljXAfKB5sJAcrnDaePHCrD1bGkZYVDV08xpDy1m6UByPgNHS35Gk7NGhcv6WRViiKhns6LiDUbvMzXDA2MeyF1rfaqpR08bWuCAwqGUVO9M9Fm0AGaWjiaYl0qo/jWfff2d3MHNWvR+RgFHL6dLeHDze9HqysMlheYTFkZWp7rKjDKXdK4cEWiUvKxdJFSCKNMSNV9/3AfaIXVA4y/ZxPHFZUhRXmTD0RM8T5zKJo2+jGoG2YWyZm8r5nMvZESdyKs2rPJR/vi87wW5o5pfimXhdTe2b3OddJKoxCPOCStjZWmPDDXZ258gUtM2I5ze1mxnRzEPkDvEiyAOeQSuer/syOwyohLYqLCyzjyfBAtH5sTkpIwpv2ZtjGxI5x9Wlmh+mWjJMXWetfphNd4hDqkJFX2bPEKcki5Mpr+qIAKdLo6dJ+67fv2WN9Mi6QKdvLwa0SzNZXIDYM8w2LTQHkT/SZL9aNegOPjv/u9VySr/K5W9d4bkPAxPW9ortXI6EZcmrvfh3HGh1jQItEWa9j3xgXFTdgyzT7brmLXqyJ44pevP1ADqSGDWSaRHOYXFR8l3VJFXKbVImj+l/lcw== X-Exchange-Antispam-Report-Test: UriScan:(236129657087228)(48057245064654)(148574349560750)(148744244958124)(247924648384137); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(601004)(2401047)(13018025)(2017060910075)(13016025)(5005006)(8121501046)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6096035)(20161123561025)(20161123563025)(20161123559100)(20161123565025)(20161123556025)(201703131430075)(201703131433075)(201703131441075)(201703131448075)(201703161259150)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:BLUPR03MB472;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:BLUPR03MB472; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BLUPR03MB472;4:nvARr6kTTcRxronInwEyVEOOb2kvv+mQ8kT1bWaJLu6?= =?us-ascii?Q?0oClJYokFKI898UNT0gVC36ZzikjA3kwFjRdbmnbbu5AVrL+KhcimywBIIG+?= =?us-ascii?Q?zMcBwgwNyQdmUTpMqhE9ZGehDfDBUFUnUi/nOAgKxzTYIhuZgDDGTQCd8Oiv?= =?us-ascii?Q?vdLXYczCaSOPYmUr1BRHSjTIfdHwWtGqH1mlj6H93zQ0WWTMvVgzX4GlC8c2?= =?us-ascii?Q?19YW6IBB1S5zYZwHmggkQ2RQW22iNY1k7GU5C4ap1No62tMMCrFfW+8R97yc?= =?us-ascii?Q?snLDNfgfqC5lpNlkx1DEOOGkznSt8E2rhAuh5OHevz+eUIC6YF4RDUknWjqj?= =?us-ascii?Q?RJkxEALUQvBJ3DAaxFGUJh9EcXUxCpuPnCgIUWPHG6ot0+Qfo8wzVrEcKA21?= =?us-ascii?Q?7/hddIs220C0kJyA2bsB6/box7068FjLILInLk09Qs7yrl0m8S0Xxj0HFIzd?= =?us-ascii?Q?lSeKNKigZiZu1CIGzCepX3Iy6b6FbQOdhY+GgO4kdj27GPPoGLTpls9u2He7?= =?us-ascii?Q?cjNVx37brQ09dNzTce2BECiV8yE+22lcynfYVbf+5yg7fW89zhmuDkX0tUa2?= =?us-ascii?Q?GdeVjjyeUKOSBwIFH7nTb1JVmeyEvQ7c0kqETEEGZs0cxLLlQchyAPM85lPf?= =?us-ascii?Q?c0DFAyb2wftxofxXWbuePWCjr8BeTZuehtrnvXWPDYkEvdgfabuc3GKNLdNU?= =?us-ascii?Q?xRcDjnlo/ILDkE0ZEEG5XbRudCqa4roTF9MCzplclzgqtfvD/0lXLvinGuf3?= =?us-ascii?Q?3jzRHASvCzBLTjtvXlBB23/+x3vQa9PWAAuH41VlSV8uAt1ydpkl14mSDcOD?= =?us-ascii?Q?WcRjdBSZSj9TQOlOKytMDJbwordxfLpoKJafBqKJ/Bo7TjKMyf3DgKA1TFus?= =?us-ascii?Q?LeMCpLFUMSHNaUiGiIWHBX/Aj/OjNOMUr+dOm6CDYhplU9Ylx7I3foKjnFMd?= =?us-ascii?Q?Vjb3R1HP4tdV5rkp2c1MoGX9Ov+g8d1UbfK2ilo4ybfccjaGkEiQA+LPqZFp?= =?us-ascii?Q?5g2Z/nn+eNornF4JwgfnqaTxmDQ7QM6wwDDSFdo/BAwl5/oqS42EVyMxbv4Q?= =?us-ascii?Q?MOm35POf6JMq9XZCp+AYzibAyTFXxC1wysxmcml6D0EDeZqQwm5nRHuYrIEI?= =?us-ascii?Q?tkZNLabA5KR5chgW3WMEnMQkm8jw4qrndjr/j7JZxB485/x75Ot/Qiuiv41X?= =?us-ascii?Q?+byW3ePw0atVpu4sDxGSA0qZ70DI1pjIpqNiqlj5hSNj1MOj09cvTHWh18vx?= =?us-ascii?Q?9QLXxhLdrDy2cWjjXFiF+PzHIK9Pv+vYJ1ubBv6NIGRpyhNjetAECIRut4PX?= =?us-ascii?Q?auW1q7INeh9QHy1a7RwCuWgbPPiOCtfUKiOpFxhvQfZ0PoG/tIMLZ0r7hoau?= =?us-ascii?Q?Ly5hNIaPfGLQO/ma0ClL9TETBMaTIjyjHP44l7AAfXzu5Dl5i+odE3WJ547b?= =?us-ascii?Q?6usBSZ97IqGPbkpx4QmqJ2LuddDE=3D?= X-Forefront-PRVS: 037291602B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BLUPR03MB472;23:j+XzQegydc5Ip1LP7VHYfV95Q4QYZ1S5zouYbC3YJ4?= =?us-ascii?Q?E6GgMM5EyhGDl1FD6kilCXfkpMSG/lHuYo+sQa6A6bGC30XIVCD7+YjKKoJ8?= =?us-ascii?Q?QsIECwqnoKPJhtWi8ybCKPzZFz8BxzYDAfmuFbBzdmMCO3ZTkh6QV+3nAUqq?= =?us-ascii?Q?P1Zv3gZjBw0y6V3dIFRYXpOnhvhwku047QW91YdShVK3pROt/Tua0teNaHGb?= =?us-ascii?Q?TjTiDj3vtXWiAGb5mW9BOr0BAJjx0+Tl9xFBZCgMrhQJHqn2bz0Cct0m0vnE?= =?us-ascii?Q?OMkosQsxPn4VOomQCuFSevb2wSe20DFQSUmvXVr0cR8QWxSZOaLU3kksGZtI?= =?us-ascii?Q?RA3C1YzrtIysh8G7qKfoojZpQwfFRyBG5Yoml6PjMY4zt/QXTlyGYjuU0+Vm?= =?us-ascii?Q?yaGXk/5QaBxY5GRlHM/wcuvLkEnakuZTI2Rud8H5TebGYcG93a9AoL6Rf6fL?= =?us-ascii?Q?LGIlCPekJp51yn9I+xYn/a4dwd0auWIp8gKVqqAwaB0d7AvgFF7AJWSgEk3V?= =?us-ascii?Q?a4u1+vaOjsP2Kn+kG1zgC7Tmtx6M53D/cqZlQIe+aEWfbue751U1yqZQUPiA?= =?us-ascii?Q?h6Ob+WsRQQchCN0IhQCpw7HsFN1li9FKrvpXeRCnt5lFvUV7ZDf8wAdOhaIx?= =?us-ascii?Q?nASPJ2bKiFzN+hDFYFdrDqlRWW6DjVSbZqJqsMbk9WtW78WyCn7ow+RPMaG9?= =?us-ascii?Q?UaR4DnRzCQbjsmIx9EqvNW7A++6htTAJ10Aw6scsv6OjAvz0K8gK4klNnxig?= =?us-ascii?Q?YqfjO5b9HEtm6PmNeimvfCiSC4gmUjE4tS+fgEaYRqT3ThafR04S1mydF0Ho?= =?us-ascii?Q?xyw+aWGFmsXCkI1Uw3JPWL/q09pf1Kc2XBHTR8CAVtQNRpAuIfAgd0+/25L6?= =?us-ascii?Q?EeO0iWM1AD4wZINBCmH9eG2KYcZB9FlHIkSgwGCDoSVDZ7MBKd1bsE0mMObx?= =?us-ascii?Q?B6WEPLygJC2+w9ojI0uV8GmG/4twcMOOuG0H+8myn9bQH2riVWv6Dj08mA0L?= =?us-ascii?Q?5l08E3YvHKj311c8TXqN35mq3KY2yM/dKhZfkKx6unSNlqk3W+j2itpggOW0?= =?us-ascii?Q?OnygTsSDsHnXCzPtkj//pRFL73sr62SBAk4/Z0aHxW15Ku9puMrusQkQa7lw?= =?us-ascii?Q?eG4GeBVeP1V2jlvnjjh+HsvqSpgAnLIxhS3l07or6QGGarz+bRDpDVox2iTL?= =?us-ascii?Q?WSHef8iCB7MvW/Qeg/xPzylETUURgIU8sYS9L14uMiM6WsX4fbTxHI39wacd?= =?us-ascii?Q?dxNZmjozCbMM4nQhIHrPZuYjcDYKxXiETdXtdBgxswleQycq4icKKFcUesel?= =?us-ascii?Q?ekl2c9SKp5w+GgjzA6kBwDFkFOdwc65HIQr33+Kfkxg/3exNA0F8fMOoPAeZ?= =?us-ascii?Q?tldQ11aPZ9Xxu70vcE/+Vy/LS5J2y4pt0Bz6GYC4hN+S5tgOsjntrNadGlfS?= =?us-ascii?Q?C2XJIxJrM6Hvt10Q0qi2cHTf0kLekt0hKMzB2KVnkyrzQkG0laU+hPX3usnE?= =?us-ascii?Q?qU9FVctDiqcfenP4ZEQZOrjKjze9AiJY8P9w51bA6yJrps6JZ7uAfIWjACzG?= =?us-ascii?Q?/0N4ZAe+tEnOAVfiyBM4zM+FNonaGb51SDCV+MBI6MEtMI2U4Ghz87KwUnqi?= =?us-ascii?Q?0rP6IUi63S3iPfOqaQ8XDr/m0e7nOrR5+yQeHSFWT5UYPm82K9nf0fq4W/02?= =?us-ascii?Q?HJ+G36iWXGQYcyH7lGiJCnMg=3D=3D?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BLUPR03MB472;6:WLH1g1jdLIiThWlARSDwL9ZZje1waXRaZYELfVr950U?= =?us-ascii?Q?Spy4nqReGIQljbm+lUKJNR0GwmQfelM1ijVlR9apM1WC+IhXSFpNwEtFPgt6?= =?us-ascii?Q?2zFdjicfR3qd3gH6BWCY5GyoxTS2hAZvyXiTv6/AtihFP3TOr1reB0Vki1AL?= =?us-ascii?Q?wdGTMksSc+VnPoz4eqtHvXBPEucdvLBRBXchd3LxKbZ3PLlxMKKysacRpoav?= =?us-ascii?Q?5unIH6n1mbN3U4RMQtKGLM3SUIcWRiuxuId8uuqiUGygAW9gWIOlM3qdmgCX?= =?us-ascii?Q?GRE8PpfrtjCYcgRSZBg78HaB2L6tbLWoZ1IM7dkmg9yS/3qLWg71HV0H9z9+?= =?us-ascii?Q?Jd8e/u8mk1LOHiS5PyKz93YY33YZb2ZT4fjuGS9JWi+KMiCZPEpWp5CHGa1w?= =?us-ascii?Q?UGpQskd5/c4gfXirHuhOhLRtId0EIPeFSzL754nRF0qSYmqCrRRk6u/ES8Bt?= =?us-ascii?Q?UhzH+hERvhSCci24ahKXwuW9ptDGASBj/oUJHJVoLKT54d4g1Ujo91mBwQ/N?= =?us-ascii?Q?ktc3VgDUn0+M2RWDlQb5yJPQJKdad8SMvi6ntFSb5u7e6wwsC4wkB9eCYtLF?= =?us-ascii?Q?TxJinxQBf3In+IlYZL6oCAoL5uaOMP/S3vuAnGb7wn+0zPTNSmhW4K7aNRrt?= =?us-ascii?Q?UojMTLu/5lk2Vtl1EL67QN8/wmc5Ds626nb+MpRO/zvOmnHJ1nv01cnkuQZ6?= =?us-ascii?Q?p/adWUuenHhIkI01sLK9S9NvTNRhPauO645kfzQzt1rUU2BgXXGdsdVFHjMD?= =?us-ascii?Q?//QYJ9ZwtyhSf4RjMx8vHGHhvQtFDz0fYMyB+CJotjgW6j7gEKqWgES4gMxK?= =?us-ascii?Q?CSPz7JD3xDQKC1gAqjjSAw+jbZds3OzwvFoAlLwJPr8hNWpI+IIyT+cpCsyd?= =?us-ascii?Q?p117Isl9gBNBZQEyEc/mmEwkd2ygcaR9s++HuDjg9OjhBSxSWCICjnclQcVu?= =?us-ascii?Q?0rtre4Lmnmc4M9pqddYrUYgyVrjS3MVME46IOER5ANJabXxSF5tr/qUsZ/mA?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB472;5:Ut40v8XbgGhBqw+2wkpX9vBz4E09TvjYeMc+kK822ZliOe1qj8usvRMqsxB6uZTmT9PvZANHblfsNPnqs6UPAcjGr4euLPVODJAU2rqYo8yvA+nHhAW+1q1SV/g4opniJBbR+WqMuMk8lsx1wojkW1bc1nANlKEInfLIjOP6qZmVEnHMXYAcXdhQc2JMf67hQgl8IJveA+u6l2TGp1pEUwGws3Iy8r1+BJxrb1VcWOb9CNC5F5JHEULf9h7gfnmLU6fgP8DsG36a/+RQmggUJymImVPaXbZhN79qbHjyHkGzPwp+tROC/jn+WEBq05yLcHw0QddXULfwes//iWXZe3yysxeNzDc4Eu9D5Av9ICB5S19qP0fAL7NKFNJekjqXUwbeNMy8+476K8oy2yExHD8wqIrFhCeC9X9EkfdJDJIsRYNUnJ2usegRqJVxuGbB/0Nj+atA3HH6lJ6TrGD++lUm/62WGTPn8kcExiBnNNd/2jPewTrLIh1yYZ3c3Gb5em1BdK7hBtIK1UVKKPuGDw==;24:blV51RcFD29Y8HM7F0Tz6ZkJ//LJjFeUli1o5JcylWmDuTRZr9oSR25wvDVimsxo460RNTsuCaIT+6xfCPLLsQFH4VDKRo/ptjlnotmUsPU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB472;7:r4Mq+/O+SHkOlg9vpAqmXCMjTXueEFLNQf/sgtxpls5SoQxCp4V6PXIHUjHZGuG8veWbDEYJjwlMRY07HNCljT3Cf2tQZMuQdKOTfdnmB6aWSl48t0l7TNtHnYhlBxs+hnlW1fbPOr4aMAL77tya8T2CS6rJqQs8pAFDyRCbyZdMozNaKT6nkfxsxby7CaYgERheGvErZxpylBd43l6+cyhIeVrKWMulvvEdsFs/BTj8aIcdA6tSJOLFERq8CtkrvgfQBDKXnoj1og+IuX8fMS+NyAd27c2G2rB4a7dc9iHVbaKriaicTSTRTXnfuACEOBDaiD3t8nrV2l9mFFFIHuW0+q6r4ylHdVBLJRCs1xJjDW/I1FsCi89I3+C5zw3lKG7AlujeAPnCZXPpmFlFIcAhVDSSWtX+GSwigONTo7IsgcFI4GvLp0kaEHM+m7xOoz8bFT3eBIhSyrrYYV8V90sws/qG/qCXeZtp2+3xgGhx7BtIiuQubaO0ET6+tJ6yC5RGaoMFxbmBq9X73D0xpEtLQ5RyyS0OQXufVaFGa4V4EyCEedVzUqUsZYVRUHCcSWV5UalQQol1d0BL2wvXxLgGbNq0nuLOrdg4c6BYS9jAEEpJFmM86IvSytUUas4iW3wpQ09K4W/DQhtCg692mGRlJ/wNh7AksG1/t+3cG+KPNzsBR8yEup1xEvmpUAH4sxJ0nTQ3LLtmdO/PlpUP+68uF5rRXJfX47J4IlkmAfX8r4aOjPIYEh4izsreIKG1irJEexpIDRjiNswqk9Z93qaOji3xLvqfsvANdOYOuKk= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2017 04:30:40.0465 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e;Ip=[192.88.158.2];Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR03MB472 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3104 Lines: 68 On Mon, Jul 17, 2017 at 03:39:07PM +0200, Rafael J. Wysocki wrote: > > Sorry, I should describe more. > > > > Let's take USB bus as an example, when the new USB device is at the > > host port, the device structure at device model is not created until > > it is discoverable by the USB bus. If this new USB device needs to be > > powered on before can be discoverable by the bus, the device structure > > will be not created without powering on operation. The code usb_alloc_dev > > (drivers/usb/core/usb.c) is only called for discoverable device. > > > > Unlike the other bus, eg, platform bus, it creates device structure > > according to DT node. The USB bus was designed for hot plug model, the > > device structure is for discoverable device. In recent years, we begin > > to have some hard-wired USB device, Eg, onboard USB-hub, onboard USB 4G > > Modem, etc at the market. It needs some board level power operation before > > it can be found by the USB bus. This patch set is designed primarily for > > fix this kind of problem. You will see at at pwrseq_generic.c, we use DT > > version clock API of_clk_get and DT version gpio API of_get_named_gpio_flags > > instead of device structure version, like devm_clk_get and > > devm_gpiod_get_optional. > > > > MMC system has similar use case, it creates power sequence platform > > device for this issue, but all those power stuffs (clock, gpio, etc) > > may not be suitable as a dedicated virtual device at DT, they are belonged > > to one physical device, so this patch set is created to see if this issue > > can be fixed better. > > OK, thanks for the explanation. > > The above needs to be part of your problem statement. Ok, I will add it to cover letter. > > > > The bus will power up all device nodes in this bus according to DT > > information, the device structure has not created at this time. > > OK > > I still think that the information on power resources depended on by devices > should be used for power management as well as for the initial power-up. > > The most straightforward way to arrange for that would be to make it possible > to find the DT node matching the device after the device has been discovered > and struct device created for it, say by USB. That would require adding some > more information on the device to the DT node, probably. After the device is created, the device node structure is under struct device, say dev->of_node. The most difficulty for this issue is the device creation is dynamic and is after the physical device is discovered by the bus, the initial power-up is needed before the device can be discovered by the bus. > > Then, the DT device nodes would be used for the initial power-up and next, after > discovering a device, you'd do a lookup in the DT, find the node matching it > and read the power resuources information from there to populate the device's > power state structure. From that point on you can simply use the interface I > suggested. > Just like I said above, without initial power-up, the device can't be discovered by the bus. -- Best Regards, Peter Chen