From patchwork Fri Apr 21 16:35:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Brown X-Patchwork-Id: 86429 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1211290vqo; Fri, 21 Apr 2023 10:00:44 -0700 (PDT) X-Google-Smtp-Source: AKy350aEeVeMIheueTmbR71OqYAmE06w5tAbRY1A2/FHf7j3SsMkat/wwJwkZOecPCXSeYIOAmuq X-Received: by 2002:a05:6a21:3815:b0:ef:c4f6:912f with SMTP id yi21-20020a056a21381500b000efc4f6912fmr5437445pzb.43.1682096443496; Fri, 21 Apr 2023 10:00:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1682096443; cv=none; d=google.com; s=arc-20160816; b=lfeeyOMb6Ald8hY5NAuisP6wF/eRWpgXdEPzmnFx7Pzz3vbMqpIvWfFu4SReGPsqqa XwmtsKRQpT1ilm216jQdrkbL3T/UXVwSTKoBygA7PIhiSQXofpddDyfOy0n7Pb1I7sAw mY04fAeDvN60y8mWKVzUXRYStlSRBOAj2GZKCesg45ybcQppsRNCKsnRBREgai949kpD 3Qtp+tm952DfOQU+xwdHEACIYQCML7fTqkoAPLOFeIrx2wTOCu25OOZakKr6+HIF9df9 UV+AG5RS6IgrfF/u4MTQDJuEgdW4CccC5JxHJbR9vXZiGl0MtaUaVZP9D3Xa6ugTKXs6 O0Ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:message-id:content-transfer-encoding :mime-version:subject:date:from:dkim-signature; bh=DgwjOs/tdHyNqYn58PbspamAk16TWwEp/VBcLoXPHy8=; b=AA+gy9xqF1Adm3FBzlJq6LN+LTejuuvk+2dcMf4MKFV69I02hEO3llurMXraaXKNWm wZIvhjwG23S8f1HyNHRFU4WeJozmcaDCK0yzolbx1OTKut+HMPPJju9LKWjZmEVY5epN nD2j0Yv+3a/TqcGAO6lMXJiqVdnGqMma2L+aTj8Iq6EPWJqcpgjzlqeTssP7p4trLYDy SKak9ZQ/WnKNUMdNsXj1OzqEnivTl16x3A9SgxnwF+gtkaY+tKBmHFqecPOikcPFLZPC KS2/IHwMeee8JUnDpxTTBVPndoGNpVgCFWMIS+u37oJvLgzRVQ2Q4bE1hkCUKyw8FvEk 6G1A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=Oa81Pmy3; 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 7-20020a630207000000b005139713f0ffsi4639053pgc.805.2023.04.21.10.00.25; Fri, 21 Apr 2023 10:00:43 -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=Oa81Pmy3; 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 S233146AbjDUQfz (ORCPT + 99 others); Fri, 21 Apr 2023 12:35:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48456 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232770AbjDUQfy (ORCPT ); Fri, 21 Apr 2023 12:35:54 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 47CEE1FFE for ; Fri, 21 Apr 2023 09:35:53 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id D3DC861090 for ; Fri, 21 Apr 2023 16:35:52 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id EDF72C433EF; Fri, 21 Apr 2023 16:35:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1682094952; bh=nnUrL2/uCxS1kaZARBS1+/ZTmFCyuJT0YgKCTa+rc1g=; h=From:Date:Subject:To:Cc:From; b=Oa81Pmy3R2FzPb3k/KG/nWj6IlSwMJ7NpIjZdt1utIKibjgjnTzUHUV1gAKlxmQL/ CgQ6IJwt3sxQdUMkz7dW++gGosGQQ1I6igW/9R98B2jPLDZ7sJnL+AdfryeANEZWE3 hDDvrLh35ESpbmSn5xof/ETumu3bZpxSlBTESGw9UiIox/bjDZf8JIkg2VZcx5n3xk bRyV2I3HivhYPjDFCRS7TwrOXBLGn9Obban7QRufTu3DM9JCvf7nCp5zVjAfSX7nJK u7DBg69vu6uTlkfJlJAEt0ych7FmnUfi6cm6eyIM8ZvPrMt76F3wvbo7xao2BCiUvq 9K/kjvZzIQMIw== From: Mark Brown Date: Fri, 21 Apr 2023 17:35:46 +0100 Subject: [PATCH] ASoC: rt715: Use maple tree register cache MIME-Version: 1.0 Message-Id: <20230412-asoc-rt715-maple-v1-1-200a84835fde@kernel.org> X-B4-Tracking: v=1; b=H4sIAGG7QmQC/x2NQQrCMBAAv1L27EKSNq34FfGwjRsb1KTsihZK/ 97U4wwMs4KyJFa4NCsIf5OmkivYUwNhovxgTPfK4IxrTWcdkpaA8hmsxzfNL0Z79rH3g+nb2EH NRlLGUSiH6Qh/RZ6HnoVjWv6n623bdks+sW95AAAA To: Oder Chiou , Liam Girdwood Cc: Pierre-Louis Bossart , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, Mark Brown X-Mailer: b4 0.13-dev-00e42 X-Developer-Signature: v=1; a=openpgp-sha256; l=1913; i=broonie@kernel.org; h=from:subject:message-id; bh=nnUrL2/uCxS1kaZARBS1+/ZTmFCyuJT0YgKCTa+rc1g=; b=owEBbQGS/pANAwAKASTWi3JdVIfQAcsmYgBkQrtltH1fl6yvBPtXjhXRlZ1zgP5vCxhZcVu6cD56 RfcmX/SJATMEAAEKAB0WIQSt5miqZ1cYtZ/in+ok1otyXVSH0AUCZEK7ZQAKCRAk1otyXVSH0KlrB/ 49Gq1y9hogSCIsLazNSRxQbxeJYozgzfG7fANMEvvEEfGwvVjVnmwPBmtCp6++gdwCgKM37WesTggA Va3K2bbARKdoiMg3RAfbn7vryLJ77BsgTz+7S+wQTmHhCOpSvE8h8bmngxWmgrjZxMhGyRjulKyglX IHwD/woeBOy0Ca3n8HsBbhlpDIowhkPP+spxtB2uYJmKwjb+/4j5B3SqxJKK0+2gR3FmRq1QnLQKlH nwzagIYK9LGkEenmK3cT4qoM86f5/QbFZFFQkC1ABxDuHqfa4p3JnvtsxCkUkL1EbEGVaR8Fi7030s 0HuPbvvvECWiU+5sjLkNjyUr1YhYj4 X-Developer-Key: i=broonie@kernel.org; a=openpgp; fpr=3F2568AAC26998F9E813A1C5C3F436CA30F5D8EB X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1763805960431396742?= X-GMAIL-MSGID: =?utf-8?q?1763805960431396742?= regmap has introduced a maple tree based register cache which makes use of this more advanced data structure which has been added to the kernel recently. Maple trees are much flatter than rbtrees, meaning that they do not grow to such depths when the register map is sparse which makes access a bit more efficient. The maple tree cache type is still a bit of a work in progress but should be effective for some devices already. RT715 seems like a good candidate for maple tree. It is a SoundWire MBQ device and therefore supports only single register read/write operations which do not use raw I/O and will therefore save the cost of converting to and from device native format when accessing the cache while not having a negative impact from the current lack of bulk operations in maple tree cache sync. It has a moderately large and quite sparse register map which is a good fit for storing in a maple tree. Convert to use maple tree. There should be little if any visible difference at runtime. Signed-off-by: Mark Brown --- sound/soc/codecs/rt715-sdw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- base-commit: f033c26de5a5734625d2dd1dc196745fae186f1b change-id: 20230412-asoc-rt715-maple-185f657063f4 Best regards, diff --git a/sound/soc/codecs/rt715-sdw.c b/sound/soc/codecs/rt715-sdw.c index 4e61e16470ed..5ffe9a00dfd8 100644 --- a/sound/soc/codecs/rt715-sdw.c +++ b/sound/soc/codecs/rt715-sdw.c @@ -354,7 +354,7 @@ static const struct regmap_config rt715_regmap = { .max_register = 0x752039, /* Maximum number of register */ .reg_defaults = rt715_reg_defaults, /* Defaults */ .num_reg_defaults = ARRAY_SIZE(rt715_reg_defaults), - .cache_type = REGCACHE_RBTREE, + .cache_type = REGCACHE_MAPLE, .use_single_read = true, .use_single_write = true, .reg_read = rt715_sdw_read,