From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AA0B0C072B5 for ; Tue, 21 May 2019 20:42:03 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 7A540217D7 for ; Tue, 21 May 2019 20:42:03 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="JoU8nAUd"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=nxp.com header.i=@nxp.com header.b="imXx2Z8b" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7A540217D7 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-ID:In-Reply-To: References:Message-ID:Date:Subject:To:From:Reply-To:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=j65whIjXiBJGfwLdoYsxA2ztwK4iCwQ6T9ggg8Co/jk=; b=JoU8nAUdkf7MZ0 /I1YWCZaI4ny/eL0XSA57BLuCh6JXvKCm0rDPRYqPaD5IlbtW4o92Dox8Tbz0XY28SwizdKblRR9X 54J2bagVrBorRfDiZUtZEdhJSqHsXsM9EIGwgEFJ8247AB6Bmqwbs3Fk0hzfmD7tlPJp4bSE//g6J ehEaKvsejgmWCnzpCWObBPRFFmgaQwMYL3GX8pZ88pBes1sr+VfF3dCqKMgYMfcoK1m/MXZwBnr+F LGo8fxmKDdlyQMw4b8tKDXV74HUy2NmYi6aX2A+TBelQVjcC4/264ZPsmxQ9UpnM4+kcEkpL0o0tC Zp092Cv6u+rOGojP2Wig==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1hTBaC-00028L-7U; Tue, 21 May 2019 20:42:00 +0000 Received: from mail-eopbgr150057.outbound.protection.outlook.com ([40.107.15.57] helo=EUR01-DB5-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1hTBZY-0001HT-Mw for linux-arm-kernel@lists.infradead.org; Tue, 21 May 2019 20:41:24 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2way/9sIqRHHFbskkR8nNdMkVvpw/XzfR2NZesclsOg=; b=imXx2Z8btDSptZDw+w2fOs28MXYRYRwlma550KfnH6DZCUnTahUD6VvJGnlb2emFcXqkb8uDkTuYauHQ0FLuwjh9pQcMXuNqxr6IExYFDJRNUj7FF+18/shvnBfLc6kHbSs5TsF7z2H+ZQmkZl8o+0LoiKeQ3EFjFMgTf99UtP0= Received: from AM0PR04MB6434.eurprd04.prod.outlook.com (20.179.252.215) by AM0PR04MB3970.eurprd04.prod.outlook.com (52.134.92.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1922.15; Tue, 21 May 2019 20:41:15 +0000 Received: from AM0PR04MB6434.eurprd04.prod.outlook.com ([fe80::19be:75a:9fe:7cec]) by AM0PR04MB6434.eurprd04.prod.outlook.com ([fe80::19be:75a:9fe:7cec%7]) with mapi id 15.20.1900.020; Tue, 21 May 2019 20:41:14 +0000 From: Leonard Crestez To: Matti Vaittinen , Lee Jones , Mark Brown Subject: [PATCH v2 3/3] mfd: bd718x7: Make power button press duration configurable Thread-Topic: [PATCH v2 3/3] mfd: bd718x7: Make power button press duration configurable Thread-Index: AQHVEBWIEayFCadtqUGcm3gRPCBI7w== Date: Tue, 21 May 2019 20:41:14 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [89.37.124.34] x-mailer: git-send-email 2.17.1 x-clientproxiedby: LO2P265CA0430.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a0::34) To AM0PR04MB6434.eurprd04.prod.outlook.com (2603:10a6:208:16c::23) authentication-results: spf=none (sender IP is ) smtp.mailfrom=leonard.crestez@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ac29df6e-7913-4ded-9bb4-08d6de2caade x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600141)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB3970; x-ms-traffictypediagnostic: AM0PR04MB3970: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6790; x-forefront-prvs: 0044C17179 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(346002)(39860400002)(376002)(366004)(136003)(199004)(189003)(36756003)(86362001)(52116002)(25786009)(6116002)(14454004)(71190400001)(71200400001)(7736002)(5660300002)(2906002)(7416002)(6436002)(316002)(6486002)(66556008)(64756008)(66446008)(386003)(6506007)(3846002)(66946007)(6512007)(73956011)(66476007)(54906003)(118296001)(8676002)(44832011)(4326008)(81166006)(81156014)(76176011)(486006)(50226002)(2616005)(66066001)(8936002)(26005)(305945005)(14444005)(446003)(256004)(110136005)(11346002)(102836004)(68736007)(476003)(478600001)(53936002)(186003)(99286004); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB3970; H:AM0PR04MB6434.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: TegSCwZ8N3umeKdgSaet696x4H+/Z0EWwj3Jy/DcY3E1WI3a/R6veeKZJ7SjXQhFzDuT4c34M9Fz5Bi2+DnRPyUYDk8Q3Dn/MOWHtvcUdhtj451zaMWusaevo1igM/dkuYSHjU6LxLTD7HmZ7Z8lM6esjnEMy9M8vZTtEGtPD259UOsjcahDxow3fLzlXCTUQMSutwuNwBKze4xpnUZqvhRAxa++SkoP1InMLyQ2bDDwClg4iMhO8Jj4BTxEWRVfkpxTiWW/sv/V7qvpxES3c8+dtXiJnWEoBBpXwVkwxKixJKPyC/WfKSs6yw1GfnFsPnRkbRNvM9Y68XkwP5JTsg76RV5T0L9HEFcO1/Blu90TV3tBhgM0PkUeL3t6bPwIINZ/nhh/aIfCLaSesz6Dz/xGBTjBuU58lmnDCz45EEE= Content-ID: <16686B02C1EDC944B114614CB3353D50@eurprd04.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: ac29df6e-7913-4ded-9bb4-08d6de2caade X-MS-Exchange-CrossTenant-originalarrivaltime: 21 May 2019 20:41:14.8945 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB3970 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190521_134121_122408_D0B847EC X-CRM114-Status: GOOD ( 13.87 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , Aisheng Dong , "devicetree@vger.kernel.org" , Angus Ainslie , Rob Herring , dl-linux-imx , "kernel@pengutronix.de" , Fabio Estevam , Robin Gong , Shawn Guo , "linux-arm-kernel@lists.infradead.org" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org Allow overwriting the values in BD718XX_REG_PWRONCONFIG0 and BD718XX_REG_PWRONCONFIG1 via devicetree. Read values in milliseconds and attempt to round them to something supported by the hardware. Keep existing values (from bootloader or OTP) if property is not present. Signed-off-by: Leonard Crestez Reviewed-By: Matti Vaittinen --- drivers/mfd/rohm-bd718x7.c | 42 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/drivers/mfd/rohm-bd718x7.c b/drivers/mfd/rohm-bd718x7.c index cdbef83884f0..c061c3f421fc 100644 --- a/drivers/mfd/rohm-bd718x7.c +++ b/drivers/mfd/rohm-bd718x7.c @@ -79,10 +79,48 @@ static const struct regmap_config bd718xx_regmap_config = { .volatile_table = &volatile_regs, .max_register = BD718XX_MAX_REGISTER - 1, .cache_type = REGCACHE_RBTREE, }; +static int bd718xx_init_press_duration(struct bd718xx *bd718xx) +{ + struct device* dev = bd718xx->dev; + u32 short_press_ms, long_press_ms; + u32 short_press_value, long_press_value; + int ret; + + ret = of_property_read_u32(dev->of_node, "rohm,short-press-ms", + &short_press_ms); + if (!ret) { + short_press_value = min(15u, (short_press_ms + 250) / 500); + ret = regmap_update_bits(bd718xx->regmap, + BD718XX_REG_PWRONCONFIG0, + BD718XX_PWRBTN_PRESS_DURATION_MASK, + short_press_value); + if (ret) { + dev_err(dev, "Failed to init pwron short press\n"); + return ret; + } + } + + ret = of_property_read_u32(dev->of_node, "rohm,long-press-ms", + &long_press_ms); + if (!ret) { + long_press_value = min(15u, (long_press_ms + 500) / 1000); + ret = regmap_update_bits(bd718xx->regmap, + BD718XX_REG_PWRONCONFIG1, + BD718XX_PWRBTN_PRESS_DURATION_MASK, + long_press_value); + if (ret) { + dev_err(dev, "Failed to init pwron long press\n"); + return ret; + } + } + + return 0; +} + static int bd718xx_i2c_probe(struct i2c_client *i2c, const struct i2c_device_id *id) { struct bd718xx *bd718xx; int ret; @@ -115,10 +153,14 @@ static int bd718xx_i2c_probe(struct i2c_client *i2c, if (ret) { dev_err(&i2c->dev, "Failed to add irq_chip\n"); return ret; } + ret = bd718xx_init_press_duration(bd718xx); + if (ret) + return ret; + ret = regmap_irq_get_virq(bd718xx->irq_data, BD718XX_INT_PWRBTN_S); if (ret < 0) { dev_err(&i2c->dev, "Failed to get the IRQ\n"); return ret; -- 2.17.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel