Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp3805595pxf; Mon, 29 Mar 2021 11:57:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxvII6TdbHaGBemjGEPImwXek9Vti4/TagEFq2jXnsrgdf2p/xTSXZavcWUU7JtjYHRdA/4 X-Received: by 2002:a17:906:2c44:: with SMTP id f4mr28701088ejh.508.1617044264425; Mon, 29 Mar 2021 11:57:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1617044264; cv=none; d=google.com; s=arc-20160816; b=ASFLu4XdPgfqkH20G0Q3/Jjgw+kLBUWUd4d74SLZvtOxSqcLT/S8YS/W4ZtArsqT3I UQgZnKytbNozAjQ45+zHdAzdeMGN5/N/MhG2VwXBvp0qjd3tZLurkRQHBJooda3Xm0ZS XJ8Fbb8fYzXMcSi7i5O33y45oeRXMS7uGzJYM0qCYyvo6vpg7V7H7um0LcD9zDSFCQU+ 7kISCChRMJuzKRddfJOEYUlgRF2PV78gN4iSSJtPuCulVDT7u2oT8Ga+q0YUnII/5qDT NX2iGt83PdyxfzQMRIlIRf7otE0Vgncaxj/z14lanlBRZsQXhb0g25FPsh2NnHR3VSfp GZ3A== 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; bh=LUltO8K0V/kw5+3toM2qYtccqEoXpoR83ZKirpWL2cg=; b=PpN4gwyaTEuGXiln9NaHIbDE3Q75ZXZaFmAIly2SIN0bPhhBIUIaFmJ6E0wkJiyCgH 3UNqiFdVpjg5FYhAkQzhxPj0QVkg2gWxxOV5xrHiOPuuhfL3FDsca3qVIKl+q7RyuumQ xZc1VUMAyvcnv9NUZrVR6Xkxd2F9ABb8/xOCC6HU+3wc7a/KA6HCGuWfbFS0yJOzrqYk BNJ66uUGf+sombFGyHh1fddYms/BBlM8GNahzv7zMMbR4rr0CFxgeCUagnHglm5EMZnF RVcH0LrtE1MKR4MXHgpI6MNv9OnLnwYFHIxFaW45mkESckUBr9P+DxBlL46JBz7hkdjM OQ5g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id s20si12715276edd.177.2021.03.29.11.57.21; Mon, 29 Mar 2021 11:57:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231358AbhC2S4M (ORCPT + 99 others); Mon, 29 Mar 2021 14:56:12 -0400 Received: from vps0.lunn.ch ([185.16.172.187]:53156 "EHLO vps0.lunn.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231237AbhC2Szu (ORCPT ); Mon, 29 Mar 2021 14:55:50 -0400 Received: from andrew by vps0.lunn.ch with local (Exim 4.94) (envelope-from ) id 1lQx2p-00Drfi-AO; Mon, 29 Mar 2021 20:55:23 +0200 Date: Mon, 29 Mar 2021 20:55:23 +0200 From: Andrew Lunn To: Steen Hegelund Cc: Kishon Vijay Abraham I , Vinod Koul , linux-arm-kernel@lists.infradead.org, Alexandre Belloni , Microchip UNG Driver List , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, kernel test robot Subject: Re: [PATCH linux-next 1/1] phy: Sparx5 Eth SerDes: Use direct register operations Message-ID: References: <20210329081438.558885-1-steen.hegelund@microchip.com> <20210329081438.558885-2-steen.hegelund@microchip.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210329081438.558885-2-steen.hegelund@microchip.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Mar 29, 2021 at 10:14:38AM +0200, Steen Hegelund wrote: > Use direct register operations instead of a table of register > information to lower the stack usage. > > Signed-off-by: Steen Hegelund > Reported-by: kernel test robot > --- > drivers/phy/microchip/sparx5_serdes.c | 1869 +++++++++++++------------ > 1 file changed, 951 insertions(+), 918 deletions(-) > > diff --git a/drivers/phy/microchip/sparx5_serdes.c b/drivers/phy/microchip/sparx5_serdes.c > index 06bcf0c166cf..43de68a62c2f 100644 > --- a/drivers/phy/microchip/sparx5_serdes.c > +++ b/drivers/phy/microchip/sparx5_serdes.c > @@ -343,12 +343,6 @@ struct sparx5_sd10g28_params { > u8 fx_100; > }; > > -struct sparx5_serdes_regval { > - u32 value; > - u32 mask; > - void __iomem *addr; > -}; > - > static struct sparx5_sd25g28_media_preset media_presets_25g[] = { > { /* ETH_MEDIA_DEFAULT */ > .cfg_en_adv = 0, > @@ -945,431 +939,411 @@ static void sparx5_sd25g28_reset(void __iomem *regs[], > } > } > > -static int sparx5_sd25g28_apply_params(struct device *dev, > - void __iomem *regs[], > - struct sparx5_sd25g28_params *params, > - u32 sd_index) > +static int sparx5_sd25g28_apply_params(struct sparx5_serdes_macro *macro, > + struct sparx5_sd25g28_params *params) > { > - struct sparx5_serdes_regval item[] = { Could you just add const here, and then it is no longer on the stack? Andrew