Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp4424703rdb; Mon, 11 Dec 2023 21:05:35 -0800 (PST) X-Google-Smtp-Source: AGHT+IHsfJHAEU4kNmkC59nJAnjLOxIz9Ar8h5wxdzG+r7GEPTDi3Ey4S7WISIWlWXZwAEVM0d6P X-Received: by 2002:a05:6a20:9497:b0:190:228e:4c25 with SMTP id hs23-20020a056a20949700b00190228e4c25mr6300656pzb.47.1702357534758; Mon, 11 Dec 2023 21:05:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702357534; cv=none; d=google.com; s=arc-20160816; b=BrHGTmTthcOKTik6heW//fm/bVnrc9LLbXKCDL0GU32FI7dmScPTDnqL2sgx749She 9nLDxWT7CPeeP3VWPQz5UJ3OpzqktCjO+18720hMNqZJV3Z8GwviRvpi1162jlS5lokR EMkqRuT9AhWds4voG0nFeTS18nqxRqydmIf+FeSswnOdj+O2/ixEZFx152IOLTOLjESn /bOv3GXXd6V05fVz9IwD7VU2sKiDn4l2w3LkBnAz8B5ERElnIJQq+OI4Ai9mBtLAVSkJ ofyZEblMdBWg6at7PR7Y5ifFufSwrpQ7pNDjyn/CeosZcIIrw87oShLf0GTTJtRk0xMP ABLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=p08chQNSh3PD1wtmZIuc6+rRft68Xk8lY5p5BHfJ4CM=; fh=BVPrJrfabkTJGDD05P5s+DtC85TFMr4On1YG6yL151Q=; b=oAxK4NIlTdlOhQSCFv6IhuolWXleFxY0pQ5tlLlQGGHFj1Wyq0ou0X2Ouf9RHTqoWP a1lt+3fISScre/uQk5/XIZ1Z6RhCkG/SKXF+etOBeE0xghd0hglhkWr3cRl3Lb2hHL/A 3axvNRyvokYyP1B2j5el69QjjugtSSAR9ib47ktud9zHHQDUEbFAphnk9p6qBc2pIofB GUZp84v6Oy2t6Y82ZXe49BHH6oYaWq4nBtUyfyI3JYAl7s+bWjN6Crk25v4CEPBT3hCg SV5Tm4M5y/Y/pK5RVRXWZsXncDwCUSluXVZ4XjIPKihi0Upva4l1KliEincLTONveBwG vbxw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=cB725xNf; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from agentk.vger.email (agentk.vger.email. [2620:137:e000::3:2]) by mx.google.com with ESMTPS id z4-20020a056a00240400b006cdd1748a04si7191617pfh.126.2023.12.11.21.05.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 Dec 2023 21:05:34 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) client-ip=2620:137:e000::3:2; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=cB725xNf; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by agentk.vger.email (Postfix) with ESMTP id 9276280789FC; Mon, 11 Dec 2023 21:05:22 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at agentk.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229536AbjLLFE7 (ORCPT + 99 others); Tue, 12 Dec 2023 00:04:59 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53928 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229455AbjLLFE6 (ORCPT ); Tue, 12 Dec 2023 00:04:58 -0500 Received: from mail-oa1-x2b.google.com (mail-oa1-x2b.google.com [IPv6:2001:4860:4864:20::2b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4B111BF for ; Mon, 11 Dec 2023 21:05:05 -0800 (PST) Received: by mail-oa1-x2b.google.com with SMTP id 586e51a60fabf-1feeea75fbfso3483851fac.3 for ; Mon, 11 Dec 2023 21:05:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702357504; x=1702962304; darn=vger.kernel.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=p08chQNSh3PD1wtmZIuc6+rRft68Xk8lY5p5BHfJ4CM=; b=cB725xNfqkrANU+C79zGrLlh38FoqFm9V/G7vPcjGITQxd4JVjqsBJbwj1FTvfeWYk 6FgctPgv5nCiJ4jnUlzFlITwIeyEg+QvaMGfPYL02ejLN3+r17OfMnvF91ANTmOSVGBK QLZ2eXQqHZr4WxqPp22yt4CtgdtC93+9mgmNCN5uNDlzMyM28HlaOwTmxB1KxQz3yNMh 67HOYAgwdZX+yvcWrjV8fUKIHK7kq7Iewdbs+U0NF2+DznnjohVcWfce5tbRD+mqwpsB l2EBWkeLIno9I3lwMRdxHiIVbie3gipYKqZFF3PGyuhWBUtBL7FCi1PBLeYujumD4BcP S31Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702357504; x=1702962304; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=p08chQNSh3PD1wtmZIuc6+rRft68Xk8lY5p5BHfJ4CM=; b=HcfoLBgRQYNwXzpv9baW9xlDq6bRjt8Dwa9sVMOGp1tTj5Tu8rybBBstlMvM4A3ADW 3eSeiQ2eqlbQ4sjoz96l3Glbe+yadz+lJWvYlcXSgroh+ELOKnjyzVRGckEHwoY6CLua 0OjHAO3wVZhzPN74tHz0Kz6bNi6DGE8hOOnk7oCnKjRBwRLUhslK0kD6JPk0TLmOwRl3 mI64ZHavrnzrmZrMlI1pGohjDWt4wrH1jLRrCaxPFlSulb8cFv+V6upLs0RV2b0mka6t qCGbHcUaqJHYmUqKjpGPEcutZ8xghXe/fcLvr5FKVWpx8aCYsJ8bBGjpvjqUI6ygGORO gzSg== X-Gm-Message-State: AOJu0YzHRle0/UdBpVkZvuoU7kMpQgXObiDStNkCUyvg78o1NmWZN9M9 ltbqXJUZFGfXZHVtIXIiwzXV+zrnKhTLAIkW7UM= X-Received: by 2002:a05:6870:d8b:b0:1e9:96c6:e04c with SMTP id mj11-20020a0568700d8b00b001e996c6e04cmr5320921oab.32.1702357503830; Mon, 11 Dec 2023 21:05:03 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Bret Joseph Date: Tue, 12 Dec 2023 07:04:51 +0200 Message-ID: Subject: Re: [PATCH v3 3/3] regulator: mt6358: Add output voltage fine tuning to variable LDOs To: Chen-Yu Tsai Cc: AngeloGioacchino Del Regno , Mark Brown , Matthias Brugger , LKML , Zhiyong Tao , "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" , "moderated list:ARM/Mediatek SoC support" Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-0.6 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on agentk.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (agentk.vger.email [0.0.0.0]); Mon, 11 Dec 2023 21:05:22 -0800 (PST) For the LDO regulators that were not probing, I changed the pickable regmap to just a regmap function. In static int mt6358_get_buck_voltage_sel(struct regulator_dev *rdev){} For LDO1 ret = (regval & info->da_vsel_mask) >> (ffs(info->da_vsel_mask) - 1); returns [ 3.470672] shift exponent -1 is negative [ 3.470910] CPU: 7 PID: 63 Comm: kworker/u16:2 Not tainted 6.7.0-rc5 #3 [ 3.471278] Hardware name: MT6769H (DT) [ 3.471521] Workqueue: events_unbound async_run_entry_fn fixed by adding .da_vsel_shift = 8 --- linux-6.7.0-rc5/drivers/regulator/mt6358-regulator.c 2023-12-12 05:32:19.703310500 +0200 +++ linux/drivers/regulator/mt6358-regulator.c 2023-12-12 06:25:06.855132318 +0200 @@ -27,6 +27,7 @@ u32 qi; u32 da_vsel_reg; u32 da_vsel_mask; + u32 da_vsel_shift; u32 modeset_reg; u32 modeset_mask; }; @@ -108,6 +109,7 @@ }, \ .da_vsel_reg = _da_vsel_reg, \ .da_vsel_mask = _da_vsel_mask, \ + .da_vsel_shift = 8, \ .status_reg = MT6358_LDO_##vreg##_DBG1, \ .qi = BIT(0), \ } @@ -209,6 +211,7 @@ }, \ .da_vsel_reg = _da_vsel_reg, \ .da_vsel_mask = _da_vsel_mask, \ + .da_vsel_shift = 8, \ .status_reg = MT6358_LDO_##vreg##_DBG1, \ .qi = BIT(0), \ } @@ -381,7 +384,7 @@ return ret; } - ret = (regval & info->da_vsel_mask) >> (ffs(info->da_vsel_mask) - 1); + ret = (regval >> info->da_vsel_shift) & info->da_vsel_mask; return ret; } @@ -478,8 +481,8 @@ static const struct regulator_ops mt6358_volt_table_ops = { .list_voltage = regulator_list_voltage_pickable_linear_range, .map_voltage = regulator_map_voltage_pickable_linear_range, - .set_voltage_sel = regulator_set_voltage_sel_pickable_regmap, - .get_voltage_sel = regulator_get_voltage_sel_pickable_regmap, + .set_voltage_sel = regulator_set_voltage_sel_regmap, + .get_voltage_sel = regulator_get_voltage_sel_regmap, .set_voltage_time_sel = regulator_set_voltage_time_sel, .enable = regulator_enable_regmap, .disable = regulator_disable_regmap,