From patchwork Thu Jul 13 00:49:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Brown X-Patchwork-Id: 119460 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a6b2:0:b0:3e4:2afc:c1 with SMTP id c18csp1522931vqm; Wed, 12 Jul 2023 18:22:53 -0700 (PDT) X-Google-Smtp-Source: APBJJlEa65Ac8a1EuXTyu1RlNLQPz0HfWP349ZgfbTJ8XkhIwBrWg0KUUbh0kDjaLNEbWmu0vOEi X-Received: by 2002:a17:903:22c5:b0:1b8:870c:4ce8 with SMTP id y5-20020a17090322c500b001b8870c4ce8mr713231plg.18.1689211373249; Wed, 12 Jul 2023 18:22:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689211373; cv=none; d=google.com; s=arc-20160816; b=ODJ0gsE8+4Zs7rz0W04DY9gBnjfkElQaaV++OBNuYCRFBmIyzxvqorzOMqBswqEwDh sMZ8w9yW6YvMWPF0tiRFYHjaZE+4U029+orwidaLNNY08EJCQiGZ6HpwlKdkoRk1A8XU LpDOlPt94h2s7NIYMa7xvRd5E7CpzrOA5EfSFVjBIp1Hk5buPZ5ahIaT1XA0yR96CwmI rz3X6HFGT0RUbRqqz5qTCYSByOnoWbAabpndSPCZUEiJASAm0hxDwmySOleORvoF39PH GaJTlOUaiXMDJdIdU1s56qgXgWO6YP9F9Y6Z+ujbzSsIhbxtPj7TD7Nm2QHec4MGtp/P G9Dg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:from :dkim-signature; bh=olSTHE95wLy6VXnOSBACSaMHuePdFzkuA4wWY45yWQw=; fh=dOxFUzZCNbe5xMYraRYkMHf2W14njpUxK2j3f3I+S7c=; b=e/RMjEjoq7+C5nxg9KfZbCrjAKzZ+sAsat1LVqdoON7YxF5w2x/4X9YLoMutor1eCE OpzmRxbb/lKKiUcFGlaxdTJ1RpzyHmCsMgWOHcn6mWx/zsmNMIDYa3pz4ujk/QvRKQAV nKhqCVEaT2Wsnllowp0AoApW0g0I/ZQF6sfVZ+1/gL3Snqf7X4uqd4+l4M4BBAOHbQ6p a05m+RXZf/coVrUa+CYJUhP8nr1kmXUhe9ABzxpBqwd+RVYXcJTsohIqQYLwCakZcVmO Wo+TUuQEwG/1ygao7Qf9PqOOYDPaqmjI11Bp7IZtXLgowHelY7tJ5BOlrF2hoCnm1URu WtiA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=FTuivQKQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id p18-20020a170902ebd200b001b50cc75c2dsi4255779plg.611.2023.07.12.18.22.40; Wed, 12 Jul 2023 18:22:53 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=FTuivQKQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233420AbjGMAyK (ORCPT + 99 others); Wed, 12 Jul 2023 20:54:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48278 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233418AbjGMAyF (ORCPT ); Wed, 12 Jul 2023 20:54:05 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0E0AC2690 for ; Wed, 12 Jul 2023 17:53:55 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 2D59561804 for ; Thu, 13 Jul 2023 00:53:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 057FFC433CB; Thu, 13 Jul 2023 00:53:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1689209634; bh=fh6MWW5xM6TIC1bWh50RDviYmRNKAyHpmR3q/bXKhDU=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=FTuivQKQBdt9UEsyx3/KpaT+faJpV+JSsnAAwPop5YbJJYWUkWn/K4QpSk04+p20u aFcmRSQGqyVZjTwCWyj33IYTru5TLRdrcJlODIdMwZ6I/TjL+J1O7GkMrKKJkPvgvq uwJhZanwGJmFbLmMzYzWQcj6YRwcBbd0/zHNUvVWtXeA+vISR9B9fw6wTIq7b531bC Zylttd3FFis7CwFQLQvooiCj8OpOnbe/itPpz16AwdJXPh30hpA+MP55EbsYigBtpm MsMXNMzwrEUNxfnGDEgZ6h1D33Puwpj+tzgxkzKUJhZCYm8iBMM5C1LgXyecAbRjje 9iNnXxM8wR5Dg== From: Mark Brown Date: Thu, 13 Jul 2023 01:49:24 +0100 Subject: [PATCH 06/11] mfd: cs47l92: Update to use maple tree register cache MIME-Version: 1.0 Message-Id: <20230713-mfd-cirrus-maple-v1-6-16dacae402a8@kernel.org> References: <20230713-mfd-cirrus-maple-v1-0-16dacae402a8@kernel.org> In-Reply-To: <20230713-mfd-cirrus-maple-v1-0-16dacae402a8@kernel.org> To: Charles Keepax , Richard Fitzgerald , Lee Jones Cc: alsa-devel@alsa-project.org, patches@opensource.cirrus.com, linux-kernel@vger.kernel.org, Mark Brown X-Mailer: b4 0.13-dev-099c9 X-Developer-Signature: v=1; a=openpgp-sha256; l=2135; i=broonie@kernel.org; h=from:subject:message-id; bh=fh6MWW5xM6TIC1bWh50RDviYmRNKAyHpmR3q/bXKhDU=; b=owEBbQGS/pANAwAKASTWi3JdVIfQAcsmYgBkr0sON5sQREXOfKHsvrHnNJcEcMKpCwbhosYs8 g5ElL14lkWJATMEAAEKAB0WIQSt5miqZ1cYtZ/in+ok1otyXVSH0AUCZK9LDgAKCRAk1otyXVSH 0OHKB/9UmALu5xfiHKHx2GCR8b42sDK88pzDGhSp5VuvDZXe7Ow2s4KY3YVMU1Bv4cYvmbkUGRW KUoMeLFpCijKt0BSTIDlxQJqgEPpAvnyKznAmjf89d+pXiozENzEKja4Q3YITNkDsic3OtXFl2u 7fS0m6LoSLV338UYq/8AdF8w1qpBJIFdsUMgbvtEfOcA6GsshfkgzCRcHCTPsuhuqWRqXKw6qQc oo2+BkYUly/Kja62upqHODZnYo+ZQUmA+fW3+GLtH+NmIYaVJSCyv4fx1TY5/jyMRZnRbb8roVx nPG1eIIMlTkf0hOesZpPI1PDGpUk+Hywph9oBAtgwpOLzycZ X-Developer-Key: i=broonie@kernel.org; a=openpgp; fpr=3F2568AAC26998F9E813A1C5C3F436CA30F5D8EB X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771266504881190964 X-GMAIL-MSGID: 1771266504881190964 The maple tree register cache is based on a much more modern data structure than the rbtree cache and makes optimisation choices which are probably more appropriate for modern systems than those made by the rbtree cache. In v6.5 it has also acquired the ability to generate multi-register writes in sync operations, bringing performance up to parity with the rbtree cache there. Update the cs47l92 driver to use the more modern data structure. Signed-off-by: Mark Brown --- drivers/mfd/cs47l92-tables.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/mfd/cs47l92-tables.c b/drivers/mfd/cs47l92-tables.c index f296e355df4d..4d9ba865aaf6 100644 --- a/drivers/mfd/cs47l92-tables.c +++ b/drivers/mfd/cs47l92-tables.c @@ -1890,7 +1890,7 @@ const struct regmap_config cs47l92_16bit_spi_regmap = { .readable_reg = &cs47l92_16bit_readable_register, .volatile_reg = &cs47l92_16bit_volatile_register, - .cache_type = REGCACHE_RBTREE, + .cache_type = REGCACHE_MAPLE, .reg_defaults = cs47l92_reg_default, .num_reg_defaults = ARRAY_SIZE(cs47l92_reg_default), }; @@ -1907,7 +1907,7 @@ const struct regmap_config cs47l92_16bit_i2c_regmap = { .readable_reg = &cs47l92_16bit_readable_register, .volatile_reg = &cs47l92_16bit_volatile_register, - .cache_type = REGCACHE_RBTREE, + .cache_type = REGCACHE_MAPLE, .reg_defaults = cs47l92_reg_default, .num_reg_defaults = ARRAY_SIZE(cs47l92_reg_default), }; @@ -1926,7 +1926,7 @@ const struct regmap_config cs47l92_32bit_spi_regmap = { .readable_reg = &cs47l92_32bit_readable_register, .volatile_reg = &cs47l92_32bit_volatile_register, - .cache_type = REGCACHE_RBTREE, + .cache_type = REGCACHE_MAPLE, }; EXPORT_SYMBOL_GPL(cs47l92_32bit_spi_regmap); @@ -1942,6 +1942,6 @@ const struct regmap_config cs47l92_32bit_i2c_regmap = { .readable_reg = &cs47l92_32bit_readable_register, .volatile_reg = &cs47l92_32bit_volatile_register, - .cache_type = REGCACHE_RBTREE, + .cache_type = REGCACHE_MAPLE, }; EXPORT_SYMBOL_GPL(cs47l92_32bit_i2c_regmap);