From patchwork Thu Jul 26 11:47:24 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 949599 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="r4eKS2ab"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41bqvy6H74z9ryl for ; Thu, 26 Jul 2018 21:42:37 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 17339C21C93; Thu, 26 Jul 2018 11:42:27 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=BAD_ENC_HEADER, SPF_HELO_PASS, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 04FBBC21C2C; Thu, 26 Jul 2018 11:42:25 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 98C5FC21C2C; Thu, 26 Jul 2018 11:42:22 +0000 (UTC) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20086.outbound.protection.outlook.com [40.107.2.86]) by lists.denx.de (Postfix) with ESMTPS id 14D92C21BE5 for ; Thu, 26 Jul 2018 11:42:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=R/9gj6epsqx4wDxysx3HnOnYASow/Z182xFiFxGzYHI=; b=r4eKS2abgqzX93XlHZ8q8GJxB/weT1bTyK6UWDYwsN0+sVmxU2dsoPCrN+2AvHQW3pypItZ8HcPLSopG+RdsL6EEXzUX175tp/A+6xEJt4mDRUUnLeNj55OPf7sOiikSPe6DWs6W2/WVEkOx0iKRxi+F0evOenuzcIcRc6UrlQE= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=peng.fan@nxp.com; Received: from linux-u7w5.ap.freescale.net.net (92.121.68.129) by VI1PR04MB4493.eurprd04.prod.outlook.com (2603:10a6:803:69::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.973.20; Thu, 26 Jul 2018 11:42:18 +0000 From: Peng Fan To: sjg@chromium.org, trini@konsulko.com Date: Thu, 26 Jul 2018 19:47:24 +0800 Message-Id: <20180726114724.13199-1-peng.fan@nxp.com> X-Mailer: git-send-email 2.14.1 MIME-Version: 1.0 X-Originating-IP: [92.121.68.129] X-ClientProxiedBy: HK0P153CA0023.APCP153.PROD.OUTLOOK.COM (2603:1096:203:18::35) To VI1PR04MB4493.eurprd04.prod.outlook.com (2603:10a6:803:69::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4c937516-ac61-42ea-8a13-08d5f2ecd8c9 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600073)(711020)(4618075)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:VI1PR04MB4493; X-Microsoft-Exchange-Diagnostics: 1; VI1PR04MB4493; 3:zxvXYQFjinEKAyepqJ69ycABeKnrlfQg+vJDzdmuH6G8gvlwflOtlNw6JM5lhNyngf8VTYAEmX2IsP9Em2jPLzAz7mGoR42sY6yAjdkmjN9xRX70nUlCpy6ABt4FC1RZWd+9+tgd5vSgCUr22a6AWBUVVJ93K6VufZ4UYdNvTiILvSy//LRUlmIYZPEXylgrauQdZ9Aayz/7MbDkWjaFQm0dkbHZf7KqtdcLQCSXpbguBahUa+vpLsqF1cS4xcFI; 25:YuvNp783am4YYz0esDADbhCFx2Ft4B++REeTduXLmyeY4LotuI7i7rNOkE8bULM37Za9S7F9aTEa9rMKdyJVcjkIq4fOEsXzUA01maV1zOA1icLBYWQlVJDkcjVy6sXt4MIHaiLLu3i8VG0r5E5Zm4L0xqicJTvpK4QIRQbPrKUM6VJm7GFtBCpEC+iRd9v92kwRff3VqsWo3KhD1CGo+KhLIk8BDCXMQSdP1cADB7vrYKuAZuKmGDJ0R1nsARPqgwuwoD2G/3eu3HXOVdgkYg7g1EjqmwsFe7DE3fT8Irb23wMDP4pxBom9unSlsQq730NQhdy4CkvAXBkNHI4uTw==; 31:ZBKIiQQxtQKN0B9Xlp0Cn9SbT6NDLcF2fUKStxtZ+dmj2XmiotoCxEeHxbuOzCF4p0iJMct3i2eE0J3XBngC6FRsSyOyK27XwoDiLf+vFVrUeoVjuCDKGUczQCmDWI9lk9IiZeSEmfv4QU6X5DHXOxdTkvn+gho4+N3GyvTU7ZVWaL45H8Djjk8Vi+f0YnHVvDQQER5V7Cqf5GHYBRYpeWOu9UhtNSPhZAH/pTANHqA= X-MS-TrafficTypeDiagnostic: VI1PR04MB4493: X-Microsoft-Exchange-Diagnostics: 1; VI1PR04MB4493; 20:pK4TzJNXV3khzTcQjSe3bF+rpmB+P36aHBd0gAfGhX+5UEjTyg5Su7q+5o/xNhjuH/siDjNLUHB9c1OZ/x50TPOOxualRApi+OhwDpQWLOUdAZYZyq9ftOqiusMPC7po92VQzTzATEoV+Q5sOMqn+P+WJlEWai+821ywf1NWvqBj4MKcL8REyQOHSMgf3GV54qVapXMPFRMfhOtkFpXK0mlf8o/OUjPV4eSg203LqIP7N6w9XIjnbQ67XokAhx7LYjsYn0wksAAATSKQgNGYR3C8tyjzIEL8UKNJh6dt5Fl3jLHmWrnt5ND11Mamm+hgYXBmj1kJdkawh5tj6dN96CA2ukWRntDrxFC9gmH18qbFOJqAKRFf51hC6IyiP4NCfR5gnWel4OUN8pryRg8JPwAFZWYGV//KSU8L3DeKXE1ujlCq6XEJIbuu03/1ArggxtDGjeqkxm2LAjE8266FeDrDS7SmuCGU8vT/6XrcD4IjatN5HQPuXA17cAg3Zvx/; 4:tV/+GR9JDIqR3dTmzdkUzTOJhjXtnXrXOEVmPtXnx7+xR0441+/kr/l4S3XPo72ctiu2yi6D/FNavub09lrP02y0HgiGuRqt7JVQ3GHAx26RMWV/BQwr1sC4gm2MxR18jn5BE3HCjdnx0TUqjBKu8qawjiQMSabTldDaOGhHG8EZVyGYYMHLe3QopnJXb7N36ysUFr7HImY+3X6bV/IEua+1+N/REj+VXB/FpIIKyGdO0efR8RwpyShBnhELl1VLPouCEisSUcvt/N0NWhq86IHvb5yOxNgKDw+1Y3TtBvEiKs4oC46xHq/R61+MOBek X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231311)(944501410)(52105095)(93006095)(93001095)(3002001)(10201501046)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123560045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:VI1PR04MB4493; BCL:0; PCL:0; RULEID:; SRVR:VI1PR04MB4493; X-Forefront-PRVS: 07459438AA X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(39860400002)(396003)(376002)(346002)(136003)(366004)(189003)(199004)(478600001)(3846002)(6116002)(106356001)(1076002)(97736004)(105586002)(50226002)(25786009)(48376002)(5660300001)(86362001)(16586007)(316002)(47776003)(52116002)(68736007)(6666003)(51416003)(6486002)(44832011)(7736002)(81166006)(81156014)(2906002)(36756003)(486006)(956004)(53936002)(305945005)(476003)(386003)(6506007)(26005)(2616005)(4326008)(186003)(8936002)(66066001)(6512007)(8676002)(16526019)(50466002)(142933001); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR04MB4493; H:linux-u7w5.ap.freescale.net.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR04MB4493; 23:wqxKHJFu9SqzprOrI0Icx/ZD3+v/FBeWbc/yFQWoD?= fGuBRAUu/ikMqcMwkQcwQZjATzUnCkNlKPX4yuku4EmEdTVnUg6Uz/lMUP9Otu2fY+CAB9MvX9nYWk/eQV6gxVCAgtwl2YTIyD16NBOlabzz8/DfqiRdn42+SJSTtSmqVeufmaoA0xlfl/OP6wF1M45soXvcBbZWrdIzQSHBMsO1A603fMhbzQZIvZzU3UEDt9C3/G7gtRWYFwCilWcYR641EfHUqIjzmijCvCSI9ykgaUC3UOOSFX0w+SPungVnwIm7FZc5FHYi95ivlAVEOxTuMlret9IS+uMmXPU8C8Q0IuP0Lxb8DORnBPOlUtQOgntyVuXyvTAW98lg/TaJ4aES8+85vaYXyixcLJkEG+/oZnybYjP48DBry/YYjtNrGwSaYtGzhSbwAKEVoAeP6gwR+JAkSS9oL5aFNxVNFZs1Rz9gl8f4YuxT/4eytWsKZFEkEvMtzgfpRb7NEVFurSq6SA7oHfkGOH1LiveO5HK2Omo1UOJ8OyR5Ib4ABfsqsbaE/raUh4+Htl3GwkamauIDbQ4eTjf8z4e+0C84uhOVFmlYEcu5Jkp4gA5NQdzZH5PqrWpTcPsH9vgoYQAjnMAzOt5vxPAO3C63fn8IlkqIMXK4BI3ouNfuA5mogIVYigKlIROX1zNjoX2PlM/hPOuq257yWkSkQZPucVqrOa6rt+vCwq0v/eY512gEL+d30FvkboXCdeFPm/7hn8dqKm2fQ020ydbKQdk1w7Su2ZOyEplP/80cOfHeaPjAamrP5wFttcrnvcRF35gFbg/9eqe6VG/1c2f/k5D86hQd6pakT9aKxrMz+ZpeqUTn8m5sAym1/ml+gZjDJTBComXM43kwaLnlS6uasP/S6pu/FJz/U0Ytk9MGFboUI6TvBVmEnzW9bN7bRD1xSnfLkHCsjAhmj6+4uFbb5HgeIIkV8sNoC3uh3byM2N13sirGIrf39oUCHUIqONyBiIWLB+Nrqr7DCjCVAOqNBbtCUzf6ZUD+ZYaBVrtHEGHYf+votx8MeonKojwAObqu1KJLKJQKRhX1bla+TdsoU1OgpSdZbiNjxPFXjvL5FSSiq1xqtB4LNRPdAkErVRhRtXF/4zWvRh23g6H5TJhE+WXGQJOWKPvIw== X-Microsoft-Antispam-Message-Info: UWucul0BH9hN28ugyTD/xmq7ExNhmq2Alp6Mp3dqP2jkwf8vnAeiumr8zdTbyh+AeueGhK5UjPA1sjLm7x0ioktiUHT3Gma1aFjhZ5ni77uI10l2aKX269alDevjyFgEfCFmAnGFA5paWuiUMBuu1YT/tp34432SmZHYy/KAMFJIoUH2Xquj/9NSDmGeO+MEDpxlkggyqLAxm24p060LMy/ruu1DPjj2ntGLgnVhjnagPWHRGQge+Od0kloBVRLD87BQGR54QuU2y/EE1P125OR8o3oBrIGb9UIkaVjKt8ucW9NldJkY1a+LhrJ/sURd8GxMVK30vlEyzqWP01UupuyPV76lmbbS8c81P1QUQi0= X-Microsoft-Exchange-Diagnostics: 1; VI1PR04MB4493; 6:HjBFZdq2mT6z/wHSoQqjNkM5z1uiu1A4xs8z2QkVAmM/FhSsmoIlpfPlG5XC8OgF2IhIxgXSeHFZFD4EmeDWlB20HJQI2y+n0RXsMdfsYY3lZimm9K9E4rfINlEydDJsq4sNGa0jGNSFt/lZU4RxHjidM8plJsRoDEuWs0F/oPGInH/Y8DpGTYw61Z6DI/wzbsbqm4j1CtDXLwhnDVPjOURysiscnxC+Dx1sl2rwNc8WnScUZ5OOCV17iL5ky6hlaPxU28Z+FnfwyuzYP6hCdt/4M1gHEpsQACCIJ9TYNMegTBJ7pzHJQQEkuGQkMqdd4M6rK9xLZnh6pLxCarp6VpVW5+SuJ2Phx8ShAh7ZRWSpZk5rF83rj5JsUYoTzMrOkOvXQuutDOLArgJOUalQF8l8GYqR2qlh3rX4P2GDUOrP3obzbFbmBgGLSZsMBpFLtnUfk5Po/kNyNjPaqi7W5A==; 5:TxQ4P4S6hDH/QZS+ded7nxdA5igZb2rxohna9ywdOExoHl/NMUihiOHNrUs4b00OFV+YVh9YPPRZiKpyYZINgX5TPemGPtpyuw0Lz54G18UCUe2h544kURDCzGYRPcOHM35uIreXHxY4scSGOXT9dYJYGokXarCfiLaW54zusng=; 7:Pf4mbe58NezZIB7rtZJ/M6//qWXHR4lXFP7xl4SUCz14nF3c8yLqDlDZGL+HERcBMOy/jR71y3JBO6n2ZENkRk2fp+9JU+ek9II0RStYECB3BzH4r+XcW/9l73NHI/L+niNGQ/sd4ovd/fRj+zvPUHxswypDhN12IJTTRRkAOby1CVmvAD5GwhEb1iRwGfKFwzuDdmgMgQG8UGEL0Bkmw2XTn5YDpjCfn9KN5N3qucxn6bpYns8khKJ3M4To/wvq SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jul 2018 11:42:18.2016 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4c937516-ac61-42ea-8a13-08d5f2ecd8c9 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB4493 Cc: u-boot@lists.denx.de Subject: [U-Boot] [PATCH V2] drivers: regulator: fixed: add u-boot, off-on-delay-us X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add u-boot,off-on-delay-us for fixed regulator. Depends on board design, the gpio regulator sometimes connects with a big capacitance. When need to off, then on the regulator, if there is no enough delay, the voltage does not drop to 0, so introduce this property to handle such case. Signed-off-by: Peng Fan Reviewed-by: Simon Glass Cc: Masahiro Yamada --- V2: Moved device tree bindings to new directory. Simon, I keep you reviewed by tag. Thanks. doc/device-tree-bindings/regulator/fixed.txt | 1 + drivers/power/regulator/fixed.c | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/doc/device-tree-bindings/regulator/fixed.txt b/doc/device-tree-bindings/regulator/fixed.txt index 5fd9033fea..453d2bef44 100644 --- a/doc/device-tree-bindings/regulator/fixed.txt +++ b/doc/device-tree-bindings/regulator/fixed.txt @@ -11,6 +11,7 @@ Required properties: Optional properties: - gpio: GPIO to use for enable control - startup-delay-us: startup time in microseconds +- u-boot,off-on-delay-us: off delay time in microseconds - regulator constraints (binding info: regulator.txt) - enable-active-high: Polarity of GPIO is Active high. If this property is missing, the default assumed is Active low. diff --git a/drivers/power/regulator/fixed.c b/drivers/power/regulator/fixed.c index 0be5b7bd51..a99aa78310 100644 --- a/drivers/power/regulator/fixed.c +++ b/drivers/power/regulator/fixed.c @@ -16,6 +16,7 @@ struct fixed_regulator_platdata { struct gpio_desc gpio; /* GPIO for regulator enable control */ unsigned int startup_delay_us; + unsigned int off_on_delay_us; }; static int fixed_regulator_ofdata_to_platdata(struct udevice *dev) @@ -50,6 +51,8 @@ static int fixed_regulator_ofdata_to_platdata(struct udevice *dev) /* Get optional ramp up delay */ dev_pdata->startup_delay_us = dev_read_u32_default(dev, "startup-delay-us", 0); + dev_pdata->off_on_delay_us = + dev_read_u32_default(dev, "u-boot,off-on-delay-us", 0); return 0; } @@ -123,6 +126,9 @@ static int fixed_regulator_set_enable(struct udevice *dev, bool enable) udelay(dev_pdata->startup_delay_us); debug("%s: done\n", __func__); + if (!enable && dev_pdata->off_on_delay_us) + udelay(dev_pdata->off_on_delay_us); + return 0; }