Received: by 2002:a05:7412:f589:b0:e2:908c:2ebd with SMTP id eh9csp212108rdb; Tue, 31 Oct 2023 05:42:03 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGz2u6RMzm/0eDT66zmcAyypa+1XVDE3SpTFYUMBLfsFSIc1le9qCjAm/Nu+vDUPBKAb+Vi X-Received: by 2002:a17:90a:8584:b0:27c:f1f8:2628 with SMTP id m4-20020a17090a858400b0027cf1f82628mr9980076pjn.47.1698756122500; Tue, 31 Oct 2023 05:42:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698756122; cv=none; d=google.com; s=arc-20160816; b=KIUEfRICMs24VRveQCMkS4ezMlqbTOktANmU6MKfCpZX7nXi/48iCzK3dPm3KH+Pj/ Mve27AuMK05goL+5cfIv9U8UyVfzGLqx7nV3parUfb/g7tdsCFxQSCkRTyo4aBo432L1 T5HJBLCkRLSEvX6M2YPqC9CK5PwqQsFZhFemQ11hcA6mnJScj2/izRLYI0PddCq68u/C TtkO64QZLQb1dzvYrkSKUKcdT+/oMfTmz5SJqH1BaL1qd4Y8WJ/571h4xXV34yIwTLj3 2F44JXzPE8w6Hf6T9ly178p04VBxMJ3aXl8Dur6vpsH6ziAadCqG2rqoby1GpsPsicIJ Ta2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=bdtoEvgaBLFI/VXqN/OoV6g03OnEl9sMgJYNO3VKM3k=; fh=y8pzFhG07a5bhEWrRfmo6KOtJY9P7iz95EmY1WTfxVw=; b=vYiXtToYEYfmHU7XBwPHfaFmvmIpDD59jeOuHu9an8ytHvHCJ/iayx1E0nrXzCHTvF P2FmPzMApFiJMeZF31qjvPgNt9zfFWiPKHYpnonA3UvsZ5GPvu5I6VllTPo+6qFexGna 4qvbaYfcqv34SPPBfYHf+jQ7CQ2UbtuqIvgn8oWKGyQxDA6rRvWUQdRPOmg4BCWO0+jh u+POympHCww0XXbWbxY1kHl8qHLmlttSZSQTEiGvKJsgetpvNQz4OLnlFso+pxZtLsf6 Qgqd3a707E+jFPTnTRqqFIzoQ/3zoq7rqUvPjpHADSSGTczBgIDdfxBPLgPusGLh5z89 3B0Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="U4pmJS/F"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id lo16-20020a170903435000b001ca8f6b3b8fsi955432plb.266.2023.10.31.05.42.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 31 Oct 2023 05:42:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="U4pmJS/F"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id BC5B980A90DA; Tue, 31 Oct 2023 05:41:59 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344290AbjJaMlx (ORCPT + 99 others); Tue, 31 Oct 2023 08:41:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56134 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344246AbjJaMlw (ORCPT ); Tue, 31 Oct 2023 08:41:52 -0400 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0F8FB97 for ; Tue, 31 Oct 2023 05:41:50 -0700 (PDT) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B6B07C433C7; Tue, 31 Oct 2023 12:41:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1698756109; bh=zWSLV7OqTO7fjuZ1oF+Fq43mMRHT9MLHeYnDIzIn1ag=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=U4pmJS/F2FQlIrYRIY4eD0PK3/c1vIp8rPVgaBVutzEfL+WdmPYp46dxtwdg6QGSf hrva00UzYQeAnEyQznB2v+H9b3rtcC2sJ7TMN1huk3iuIn9gs0l8Y82j/IHQRvMyZ3 vMKkq/BCE4k+jBiBmuITYQvYKGWUJnibTy93NIDt6ZPkzixB/zyjZ5lAAkhcyuXmz2 BFs8d2Y6+Hrdp50LHG61aUeSb2dy5zXqn4klqGzxyaJRtqpw2P3nY87oDSFJcpFe/5 2K1NUm4Xqamre0Z4TPPzer7ZYANaWrNtWsYjQrvDZ8B53poSmCQTNQEfBHKKJHhcM8 k/xJon0UObhXg== Date: Tue, 31 Oct 2023 12:41:43 +0000 From: Mark Brown To: Artur Weber Cc: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Liam Girdwood , Stanislav Jakubek , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v2 5/6] regulator: bcm590xx: Add support for BCM59054 Message-ID: <53aae3a6-9e6f-4156-b807-082d11d858ed@sirena.org.uk> References: <20231030-bcm59054-v2-0-5fa4011aa5ba@gmail.com> <20231030-bcm59054-v2-5-5fa4011aa5ba@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="UpRfkmziJnKTBjHv" Content-Disposition: inline In-Reply-To: <20231030-bcm59054-v2-5-5fa4011aa5ba@gmail.com> X-Cookie: Is it clean in other dimensions? X-Spam-Status: No, score=-1.7 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,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 groat.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 (groat.vger.email [0.0.0.0]); Tue, 31 Oct 2023 05:42:00 -0700 (PDT) --UpRfkmziJnKTBjHv Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Mon, Oct 30, 2023 at 08:41:47PM +0100, Artur Weber wrote: > The BCM59054 is fairly similar in terms of regulators to the already > supported BCM59056, as included in the BCM590XX driver. > Add support for the BCM59054's regulators to the BCM590XX driver. > Switch from using defines for common checks to using functions which > return different values depending on the identified MFD model. > While we're at it, fix a bug where the enable/vsel register > offsets for GPLDO and LDO regulators were calculated incorrectly. > Also, change the regulator enable bitmask to cover the entire PMMODE > register. As is very clear from the commit log this is a whole bunch of changes which really should be split out into multiple patches. There's the bug fix, there's the multiple refactorings to support the new device and the new device itself. As covered in submitting-patches.rst you should do one change per patch, this makes things much easier to follow. > + if (pmu->mfd->device_type == BCM59054_TYPE) { > + info = bcm59054_regs; > + n_regulators = BCM59054_NUM_REGS; > + } else if (pmu->mfd->device_type == BCM59056_TYPE) { > + info = bcm59056_regs; > + n_regulators = BCM59056_NUM_REGS; > + } There's no error handling here if there's an unknown type. > - if ((BCM590XX_REG_IS_LDO(i)) || (BCM590XX_REG_IS_GPLDO(i))) { > + if (bcm590xx_reg_is_ldo(pmu, i) || \ > + bcm590xx_reg_is_gpldo(pmu, i)) { > pmu->desc[i].ops = &bcm590xx_ops_ldo; > pmu->desc[i].vsel_mask = BCM590XX_LDO_VSEL_MASK; > - } else if (BCM590XX_REG_IS_VBUS(i)) > - pmu->desc[i].ops = &bcm590xx_ops_vbus; > - else { > + } else if (bcm590xx_reg_is_static(pmu, i)) { > + pmu->desc[i].ops = &bcm590xx_ops_static; > + } else { > pmu->desc[i].ops = &bcm590xx_ops_dcdc; > pmu->desc[i].vsel_mask = BCM590XX_SR_VSEL_MASK; > } It seems like everything would be a lot simpler and clearer to just have tables of regulators per device rather than have all these conditionals. --UpRfkmziJnKTBjHv Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAmVA9gcACgkQJNaLcl1U h9AgHAf/fXAIYfkZOEjidR1JA8aj8T+gmmVW38F5iafSQpIYGKnkq58f+AZTAJa8 apU9HeN3u8zGGeKDwEbVR77SOBZFeBiVrWOcuPgV2iHt6rjcZarVJo6xdt/SNMlu rz35kfi3w8R27zzgT3q5V/7WWpfE0KxJwj7E+DWqVO7rKEwVtxEh0APHDy7WRVg6 6KZxHMZj3/4iTfA1j4Q+i6qz5aMhy0GRZrBpke3zocc5qbZlccFOVkXIWNRgKm0I l/NSor7QAq7jg5YIEF74ITxsAjFYaIKf0ZUbqMSGITOUubpGH3J6MwyC3y4iWJf3 r0wQxybrqX+ffkM5vu56fafygzUmgA== =8PAM -----END PGP SIGNATURE----- --UpRfkmziJnKTBjHv--