From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: Re: [PATCH v6 09/14] memory: tegra: Add EMC scaling support code for Tegra210 Date: Tue, 14 Apr 2020 17:02:19 +0200 Message-ID: <20200414150219.GK3593749@ulmo> References: <20200409175238.3586487-1-thierry.reding@gmail.com> <20200409175238.3586487-10-thierry.reding@gmail.com> <3e518dfa-cb3d-e2ce-a9b8-5e143e02fc61@gmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="fLj60tP2PZ34xyqD" Return-path: Content-Disposition: inline In-Reply-To: <3e518dfa-cb3d-e2ce-a9b8-5e143e02fc61-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> Sender: linux-tegra-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Dmitry Osipenko Cc: Rob Herring , Jon Hunter , Michael Turquette , Stephen Boyd , Joseph Lo , linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-clk-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org List-Id: linux-tegra@vger.kernel.org --fLj60tP2PZ34xyqD Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Apr 10, 2020 at 02:56:53AM +0300, Dmitry Osipenko wrote: > 09.04.2020 20:52, Thierry Reding =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > ... > > +#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC 0x19c > ... > > +#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC_DLL 0x664 >=20 > I'd suggest to double check all the macros and remove everything unused, > to not pollute the code. I recall checking most of these, but I'll make another pass to see if I can spot more that I can drop. > ... > > +#define TRIM_REG(chan, rank, reg, byte) \ > > + (((EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte ## _MASK & \ > > + next->trim_regs[EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## \ > > + rank ## _ ## reg ## _INDEX]) >> \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte ## _SHIFT) \ > > + + \ > > + (((EMC_DATA_BRLSHFT_ ## rank ## _RANK ## rank ## _BYTE ## \ > > + byte ## _DATA_BRLSHFT_MASK & \ > > + next->trim_perch_regs[EMC ## chan ## \ > > + _EMC_DATA_BRLSHFT_ ## rank ## _INDEX]) >> \ > > + EMC_DATA_BRLSHFT_ ## rank ## _RANK ## rank ## _BYTE ## \ > > + byte ## _DATA_BRLSHFT_SHIFT) * 64)) > > + > > +#define CALC_TEMP(rank, reg, byte1, byte2, n) \ > > + (((new[n] << EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## \ > > + reg ## _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte1 ## _SHIFT) = & \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte1 ## _MASK) \ > > + | \ > > + ((new[n + 1] << EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ##\ > > + reg ## _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte2 ## _SHIFT) = & \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte2 ## _MASK)) >=20 > My eyes.. :P Heh... yes, this is pretty bad. At least the code at the callsites is clean. Thierry --fLj60tP2PZ34xyqD Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAl6V0HsACgkQ3SOs138+ s6FXCg/7B0bMQSGWtJXVBNJfMTn8M0O+JF56fTgGvLoz+9OjrduZ3flJ5t1MVTvp o+MoMG4zK2JjlnMcMLG5o/6hSbLU0kAKJ7BlHbwgV252liWGABe3h0xV8923aWRi vbm8f1v9sab2U/KJGUdZxeSZ9NfrVzCzGzBlZmynLF6fKhnymS1usyKChKqwlvv2 PZAZKF4hNDizXxy1ZpmSJHoZRsZ94qSj2NuAvLxMjx0Hmv6jJ8D7AZuY/GKeCZPN ByuGMahGXXaE8JaOzgxsfHx0TEC1hKb4Y017xgHpZzMU50ck4eqFJb/nHXBVddPH KjYmaDzYIfSqtYRrmPVmloUBVjb9Y1EDspe+5TbQvpSwSLjNFPeM0z5dZXrZU4w0 W4bvghLzaZvgvC9thmTZur7QTcOOco3BRTIxv8hzA/2FO/oWX9p1CGbR6Ddsg/ly SzhUu5CUKCrKdob6YRTpfT+5CN+zCzR7dt+XJ2LcR1lg0UnCCMnmyf2kJUNdkwZp lWQQTm4pFrHNRv0a8DNN6ma4fK0yyS//7bJQVM/sGJZ8hnloT6skT8hUyfre9d9f AzpQypnVyqMv2PTFYthPYkF6CaLHHgE/NU4yUyQHyNIBCQT4OHZZZXBlS42azM10 6/79zjdxTiIR6C0mHgIWY6kgTNiL7RiU9ctwpI9vnCrp+YzPfy0= =SSdO -----END PGP SIGNATURE----- --fLj60tP2PZ34xyqD-- 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=-2.1 required=3.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, USER_AGENT_SANE_1 autolearn=no 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 06378C38A29 for ; Tue, 14 Apr 2020 15:02:30 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id DA56B20768 for ; Tue, 14 Apr 2020 15:02:29 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="gxQ2m3DR" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2405587AbgDNPC2 (ORCPT ); Tue, 14 Apr 2020 11:02:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43476 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2405562AbgDNPCX (ORCPT ); Tue, 14 Apr 2020 11:02:23 -0400 Received: from mail-wr1-x441.google.com (mail-wr1-x441.google.com [IPv6:2a00:1450:4864:20::441]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A9F04C061A0C; Tue, 14 Apr 2020 08:02:22 -0700 (PDT) Received: by mail-wr1-x441.google.com with SMTP id a25so14727343wrd.0; Tue, 14 Apr 2020 08:02:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=ViI/byXYkNTTv5WozqHMnLuUZ5EboqYJdzyRMLlG4+I=; b=gxQ2m3DRGB6KjDN+/gGk/ABqsAvAFy8Q4jvwgUUVnBmQQPs22L+air6X+vbNaFjrG+ m4BazoDB9Mb8bLYUOVCrdxHbqQ1y4dzM+Pr66Ieb/1Zo6Cp8blP2LKu60alUspymuN4K DsLEmtbTiR1f/OzFQAx/TLHlzhaWdB7AwFV7w3JSqpxXeAItCpkfm7mQ/16goxGzsmfe E3A5W7R1FJTkBvUdq2JHuj/VvWZcGiu7gmL99+jvy3TFxDmMzqdpww2yxXj2qjxCPqxv 3XBMMFkQ6IJErv8H8BBWoxmdMJY+y2cihEFkFyLkZiQECDZvXuA4odCeXWYUMHqvywvv QU2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=ViI/byXYkNTTv5WozqHMnLuUZ5EboqYJdzyRMLlG4+I=; b=PG1yPavt5QCPQ/U/Wp+FUMK1mjUpFRrYv4qhFl/5ObKvuEOpa5KzSxJzkWDeIMx8yD j7W1B6RdWfzH2+wpndP8JY4Yib7l9+YAN4zfVcInSPJWpsqDnvglUcixAGKk14/XYwec 8HsW/uc3ySbJhQDYROkgL+lXPiTDNdGqRKUdp5YbQiWtxV98rw69DM0TYfHPk6HTSMPQ +HcjSqdaKOdXWNucBRRLR0HdvUiJeWAlQ9Tw10m59IXwEYlACs8+dgqhqmo4ctxr0CGF 3o9n20ec4/LmTsNrCpAAuwTKVLTuAAB3EVEdz2R0gUn4yYDRof474410Jm8JWzNz3rUZ jeOQ== X-Gm-Message-State: AGi0PuZKRI9AzvKL14z+reY5rKHa2XMpQwYjK0QC53HOEKdL9CFg+cIC AkLMdlrf2Gm3BZQ3ngNxQZ0= X-Google-Smtp-Source: APiQypK4+NIRYHEoApUJZAfNPlDoh2Xh3fKIbelUsv2sesJnlhQa+MjZoKcEwDhkrZyCCyBsPmqPEQ== X-Received: by 2002:adf:8149:: with SMTP id 67mr25052146wrm.60.1586876541371; Tue, 14 Apr 2020 08:02:21 -0700 (PDT) Received: from localhost (pD9E51D62.dip0.t-ipconnect.de. [217.229.29.98]) by smtp.gmail.com with ESMTPSA id y9sm18508247wmm.26.2020.04.14.08.02.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2020 08:02:20 -0700 (PDT) Date: Tue, 14 Apr 2020 17:02:19 +0200 From: Thierry Reding To: Dmitry Osipenko Cc: Rob Herring , Jon Hunter , Michael Turquette , Stephen Boyd , Joseph Lo , linux-tegra@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v6 09/14] memory: tegra: Add EMC scaling support code for Tegra210 Message-ID: <20200414150219.GK3593749@ulmo> References: <20200409175238.3586487-1-thierry.reding@gmail.com> <20200409175238.3586487-10-thierry.reding@gmail.com> <3e518dfa-cb3d-e2ce-a9b8-5e143e02fc61@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="fLj60tP2PZ34xyqD" Content-Disposition: inline In-Reply-To: <3e518dfa-cb3d-e2ce-a9b8-5e143e02fc61@gmail.com> User-Agent: Mutt/1.13.1 (2019-12-14) Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org --fLj60tP2PZ34xyqD Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Apr 10, 2020 at 02:56:53AM +0300, Dmitry Osipenko wrote: > 09.04.2020 20:52, Thierry Reding =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > ... > > +#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC 0x19c > ... > > +#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC_DLL 0x664 >=20 > I'd suggest to double check all the macros and remove everything unused, > to not pollute the code. I recall checking most of these, but I'll make another pass to see if I can spot more that I can drop. > ... > > +#define TRIM_REG(chan, rank, reg, byte) \ > > + (((EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte ## _MASK & \ > > + next->trim_regs[EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## \ > > + rank ## _ ## reg ## _INDEX]) >> \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte ## _SHIFT) \ > > + + \ > > + (((EMC_DATA_BRLSHFT_ ## rank ## _RANK ## rank ## _BYTE ## \ > > + byte ## _DATA_BRLSHFT_MASK & \ > > + next->trim_perch_regs[EMC ## chan ## \ > > + _EMC_DATA_BRLSHFT_ ## rank ## _INDEX]) >> \ > > + EMC_DATA_BRLSHFT_ ## rank ## _RANK ## rank ## _BYTE ## \ > > + byte ## _DATA_BRLSHFT_SHIFT) * 64)) > > + > > +#define CALC_TEMP(rank, reg, byte1, byte2, n) \ > > + (((new[n] << EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## \ > > + reg ## _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte1 ## _SHIFT) = & \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte1 ## _MASK) \ > > + | \ > > + ((new[n + 1] << EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ##\ > > + reg ## _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte2 ## _SHIFT) = & \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte2 ## _MASK)) >=20 > My eyes.. :P Heh... yes, this is pretty bad. At least the code at the callsites is clean. Thierry --fLj60tP2PZ34xyqD Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAl6V0HsACgkQ3SOs138+ s6FXCg/7B0bMQSGWtJXVBNJfMTn8M0O+JF56fTgGvLoz+9OjrduZ3flJ5t1MVTvp o+MoMG4zK2JjlnMcMLG5o/6hSbLU0kAKJ7BlHbwgV252liWGABe3h0xV8923aWRi vbm8f1v9sab2U/KJGUdZxeSZ9NfrVzCzGzBlZmynLF6fKhnymS1usyKChKqwlvv2 PZAZKF4hNDizXxy1ZpmSJHoZRsZ94qSj2NuAvLxMjx0Hmv6jJ8D7AZuY/GKeCZPN ByuGMahGXXaE8JaOzgxsfHx0TEC1hKb4Y017xgHpZzMU50ck4eqFJb/nHXBVddPH KjYmaDzYIfSqtYRrmPVmloUBVjb9Y1EDspe+5TbQvpSwSLjNFPeM0z5dZXrZU4w0 W4bvghLzaZvgvC9thmTZur7QTcOOco3BRTIxv8hzA/2FO/oWX9p1CGbR6Ddsg/ly SzhUu5CUKCrKdob6YRTpfT+5CN+zCzR7dt+XJ2LcR1lg0UnCCMnmyf2kJUNdkwZp lWQQTm4pFrHNRv0a8DNN6ma4fK0yyS//7bJQVM/sGJZ8hnloT6skT8hUyfre9d9f AzpQypnVyqMv2PTFYthPYkF6CaLHHgE/NU4yUyQHyNIBCQT4OHZZZXBlS42azM10 6/79zjdxTiIR6C0mHgIWY6kgTNiL7RiU9ctwpI9vnCrp+YzPfy0= =SSdO -----END PGP SIGNATURE----- --fLj60tP2PZ34xyqD-- 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=-2.0 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no 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 DCD0DC3815B for ; Tue, 14 Apr 2020 15:02:58 +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 A1D16214D8 for ; Tue, 14 Apr 2020 15:02:58 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="aK0k5oJT"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="gxQ2m3DR" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A1D16214D8 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.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-Type:Cc: List-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id: In-Reply-To:MIME-Version:References:Message-ID:Subject:To:From:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=0H+TYvPXyAL7yJYQuDHiIkn0Vdxf9wCyTxL3UL9sQtw=; b=aK0k5oJTWoWScFjKquUx7giy2 3QzlsHVT3o5SoRYGXBCP84xW47bRdkTOB8HgXlslwdiM0Q9EMg56xOq4gJY8849KrTtruu8nSXs6y 0oe7wgPo/coTwdhpcAzOzIfqEkB3ZccLu7fz5/Msdf3LdnsD1PYVFsSD3VsnFzlTvkmsF511L4Lzv Dq7r6v83oPisXnDqZKGu45XalisGScpJ+8RSB8oa/GrBFR/cBUoXSuekKUxpbDhvA94TeEp/jeXj4 w3dZqp27f9yZgHGJAXsh8PCy29z0PzsTUteaVGk3qHJcv2OFperqDvct7azHP4a9DhCuWFxOTPgJw U84KURV+A==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jON5T-0006Xf-NZ; Tue, 14 Apr 2020 15:02:55 +0000 Received: from mail-wr1-x444.google.com ([2a00:1450:4864:20::444]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jON4x-0006Lk-9D for linux-arm-kernel@lists.infradead.org; Tue, 14 Apr 2020 15:02:24 +0000 Received: by mail-wr1-x444.google.com with SMTP id b11so3320670wrs.6 for ; Tue, 14 Apr 2020 08:02:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=ViI/byXYkNTTv5WozqHMnLuUZ5EboqYJdzyRMLlG4+I=; b=gxQ2m3DRGB6KjDN+/gGk/ABqsAvAFy8Q4jvwgUUVnBmQQPs22L+air6X+vbNaFjrG+ m4BazoDB9Mb8bLYUOVCrdxHbqQ1y4dzM+Pr66Ieb/1Zo6Cp8blP2LKu60alUspymuN4K DsLEmtbTiR1f/OzFQAx/TLHlzhaWdB7AwFV7w3JSqpxXeAItCpkfm7mQ/16goxGzsmfe E3A5W7R1FJTkBvUdq2JHuj/VvWZcGiu7gmL99+jvy3TFxDmMzqdpww2yxXj2qjxCPqxv 3XBMMFkQ6IJErv8H8BBWoxmdMJY+y2cihEFkFyLkZiQECDZvXuA4odCeXWYUMHqvywvv QU2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=ViI/byXYkNTTv5WozqHMnLuUZ5EboqYJdzyRMLlG4+I=; b=WB83ztvHhdSUFp/arlf9s+kSuN+/QO+TQineEv91bFHfmTC4WYFsd3huhs4OWyeVym C864/hUnBaauBAuGKYMKvmoY2kY3OnCwoMkVTSNpTg0gBU8jSyiR/zBRHtV5r6h9GFJm ZWuVNxUVKhbiER6AXG3XCkzR8mCt5cZGsriGRt3mXLYxBmxDTUUJBnTj+jwYLpJIlMd7 uFyNLkaa6srty3UZgeHymdAkULLZ9WM6JLhLpa2K3kxdDISS65ArugBJzClcfHLQuLS4 hw0BYhvvhYi0kqtjKNBZbl8p+bDTIeqg50TiAfdm3dxt89MWaCVsRqZpLSLTSZSpthUo OWMw== X-Gm-Message-State: AGi0Publd/5kmC23Q0xKhUfT6Nnr3ikJkUbRnOp9HvRhl+56qBypSpsf DRnFX5lqfEGuQJtKDZ5eIEU= X-Google-Smtp-Source: APiQypK4+NIRYHEoApUJZAfNPlDoh2Xh3fKIbelUsv2sesJnlhQa+MjZoKcEwDhkrZyCCyBsPmqPEQ== X-Received: by 2002:adf:8149:: with SMTP id 67mr25052146wrm.60.1586876541371; Tue, 14 Apr 2020 08:02:21 -0700 (PDT) Received: from localhost (pD9E51D62.dip0.t-ipconnect.de. [217.229.29.98]) by smtp.gmail.com with ESMTPSA id y9sm18508247wmm.26.2020.04.14.08.02.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2020 08:02:20 -0700 (PDT) Date: Tue, 14 Apr 2020 17:02:19 +0200 From: Thierry Reding To: Dmitry Osipenko Subject: Re: [PATCH v6 09/14] memory: tegra: Add EMC scaling support code for Tegra210 Message-ID: <20200414150219.GK3593749@ulmo> References: <20200409175238.3586487-1-thierry.reding@gmail.com> <20200409175238.3586487-10-thierry.reding@gmail.com> <3e518dfa-cb3d-e2ce-a9b8-5e143e02fc61@gmail.com> MIME-Version: 1.0 In-Reply-To: <3e518dfa-cb3d-e2ce-a9b8-5e143e02fc61@gmail.com> User-Agent: Mutt/1.13.1 (2019-12-14) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200414_080223_347701_CDF17B69 X-CRM114-Status: GOOD ( 12.33 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Stephen Boyd , Michael Turquette , Jon Hunter , Rob Herring , Joseph Lo , linux-tegra@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Content-Type: multipart/mixed; boundary="===============4163998088704717173==" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org --===============4163998088704717173== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="fLj60tP2PZ34xyqD" Content-Disposition: inline --fLj60tP2PZ34xyqD Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Apr 10, 2020 at 02:56:53AM +0300, Dmitry Osipenko wrote: > 09.04.2020 20:52, Thierry Reding =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > ... > > +#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC 0x19c > ... > > +#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC_DLL 0x664 >=20 > I'd suggest to double check all the macros and remove everything unused, > to not pollute the code. I recall checking most of these, but I'll make another pass to see if I can spot more that I can drop. > ... > > +#define TRIM_REG(chan, rank, reg, byte) \ > > + (((EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte ## _MASK & \ > > + next->trim_regs[EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## \ > > + rank ## _ ## reg ## _INDEX]) >> \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte ## _SHIFT) \ > > + + \ > > + (((EMC_DATA_BRLSHFT_ ## rank ## _RANK ## rank ## _BYTE ## \ > > + byte ## _DATA_BRLSHFT_MASK & \ > > + next->trim_perch_regs[EMC ## chan ## \ > > + _EMC_DATA_BRLSHFT_ ## rank ## _INDEX]) >> \ > > + EMC_DATA_BRLSHFT_ ## rank ## _RANK ## rank ## _BYTE ## \ > > + byte ## _DATA_BRLSHFT_SHIFT) * 64)) > > + > > +#define CALC_TEMP(rank, reg, byte1, byte2, n) \ > > + (((new[n] << EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## \ > > + reg ## _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte1 ## _SHIFT) = & \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte1 ## _MASK) \ > > + | \ > > + ((new[n + 1] << EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ##\ > > + reg ## _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte2 ## _SHIFT) = & \ > > + EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ## rank ## _ ## reg ## \ > > + _OB_DDLL_LONG_DQ_RANK ## rank ## _BYTE ## byte2 ## _MASK)) >=20 > My eyes.. :P Heh... yes, this is pretty bad. At least the code at the callsites is clean. Thierry --fLj60tP2PZ34xyqD Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAl6V0HsACgkQ3SOs138+ s6FXCg/7B0bMQSGWtJXVBNJfMTn8M0O+JF56fTgGvLoz+9OjrduZ3flJ5t1MVTvp o+MoMG4zK2JjlnMcMLG5o/6hSbLU0kAKJ7BlHbwgV252liWGABe3h0xV8923aWRi vbm8f1v9sab2U/KJGUdZxeSZ9NfrVzCzGzBlZmynLF6fKhnymS1usyKChKqwlvv2 PZAZKF4hNDizXxy1ZpmSJHoZRsZ94qSj2NuAvLxMjx0Hmv6jJ8D7AZuY/GKeCZPN ByuGMahGXXaE8JaOzgxsfHx0TEC1hKb4Y017xgHpZzMU50ck4eqFJb/nHXBVddPH KjYmaDzYIfSqtYRrmPVmloUBVjb9Y1EDspe+5TbQvpSwSLjNFPeM0z5dZXrZU4w0 W4bvghLzaZvgvC9thmTZur7QTcOOco3BRTIxv8hzA/2FO/oWX9p1CGbR6Ddsg/ly SzhUu5CUKCrKdob6YRTpfT+5CN+zCzR7dt+XJ2LcR1lg0UnCCMnmyf2kJUNdkwZp lWQQTm4pFrHNRv0a8DNN6ma4fK0yyS//7bJQVM/sGJZ8hnloT6skT8hUyfre9d9f AzpQypnVyqMv2PTFYthPYkF6CaLHHgE/NU4yUyQHyNIBCQT4OHZZZXBlS42azM10 6/79zjdxTiIR6C0mHgIWY6kgTNiL7RiU9ctwpI9vnCrp+YzPfy0= =SSdO -----END PGP SIGNATURE----- --fLj60tP2PZ34xyqD-- --===============4163998088704717173== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel --===============4163998088704717173==--