From patchwork Tue Mar 28 16:27:22 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 744422 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3vsxPK18rwz9s3s for ; Wed, 29 Mar 2017 03:36:53 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=google.com header.i=@google.com header.b="HDMJOJp+"; dkim-atps=neutral Received: by lists.denx.de (Postfix, from userid 105) id E3F5AC21C9A; Tue, 28 Mar 2017 16:31:07 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 10D03C21C9F; Tue, 28 Mar 2017 16:28:38 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 57763C21C9F; Tue, 28 Mar 2017 16:27:47 +0000 (UTC) Received: from mail-ot0-f172.google.com (mail-ot0-f172.google.com [74.125.82.172]) by lists.denx.de (Postfix) with ESMTPS id 98A93C21C76 for ; Tue, 28 Mar 2017 16:27:42 +0000 (UTC) Received: by mail-ot0-f172.google.com with SMTP id t8so50981998otf.3 for ; Tue, 28 Mar 2017 09:27:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=knz69O+L3hEIVOSd4jAnCAqUoSphm6xol/x0Ku/DVwU=; b=HDMJOJp+pG6Qrz7fyd+8bLeuB0X7Jgv5gtPy+pw3vCTWe4wYcOv9CPG94GDsToe52J SBGyAedgxh3zoiwOlTV97Ey8oH9Me3XDdzTVLk37bHkohoo5TuLVlXnBPuyl+Quppeie L/VHZA3UyiMgcTdZLy6uhzoM6B43VsLmiqnc0SGdvdas3BfVWMGUM18PQRYf4N9AvaAl F9w1DyTkfFbXutqq4fTIdpfQCcTTXK44AF1TELRIOLIoZdsspwC+0SEFJWbJQofe3dHU gP9/Om0QLpsd3aAVmavuMwhS2ga6A2Y9RqTThpUMyYkY5dHX+b1/k4pME+Mgizxr3PfM Pi6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=knz69O+L3hEIVOSd4jAnCAqUoSphm6xol/x0Ku/DVwU=; b=qqN0fZ/kODm3eA+VGGuaGhbPG0oebQmK03j80v37tElWRP38mLs9DYOvgjGkL1NCoa zYsnMCMVKhTbU7K5/FA12Swi2Pt+frN1pgY2E1C5C9BEGhhngOqf+qNdNF+7wr5+wegY 5FrKtvd73DemYKPKyw/ii6Fzv8WCoqImQlEz95pIvl8bKzigxBZFs1p0T7Q+76jHOtAm OknQOVC9A/77RSOTOZEPN9mczpok6NYBm+ab5VZ5vZlGtuV4IqncQIE8iNp2A0fYkUyx ajO1y37CxqD4aZqttdUkTdK48eg1kAXpN+uR8hukmz7f5MtsW0f9T/M/5V4CuPSFzb5O FZmg== X-Gm-Message-State: AFeK/H1hujkw56SFneEszNOaihnHgJd5qr0VjpjVSBOKxTKs+phm5w2fk3DZnntT+Zz85MTv X-Received: by 10.157.23.137 with SMTP id j9mr15883784otj.147.1490718461317; Tue, 28 Mar 2017 09:27:41 -0700 (PDT) Received: from kaki.bld.corp.google.com ([100.100.184.96]) by smtp.gmail.com with ESMTPSA id 62sm1862519ott.19.2017.03.28.09.27.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 28 Mar 2017 09:27:38 -0700 (PDT) Received: by kaki.bld.corp.google.com (Postfix, from userid 121222) id 8E2EB43B69; Tue, 28 Mar 2017 10:27:37 -0600 (MDT) From: Simon Glass To: U-Boot Mailing List Date: Tue, 28 Mar 2017 10:27:22 -0600 Message-Id: <20170328162733.20905-7-sjg@chromium.org> X-Mailer: git-send-email 2.12.2.564.g063fe858b8-goog In-Reply-To: <20170328162733.20905-1-sjg@chromium.org> References: <20170328162733.20905-1-sjg@chromium.org> Cc: Tom Rini , Chris Zankel , Joe Hershberger , Andre Przywara , Stefan Roese , Vladimir Zapolskiy , Jagan Teki Subject: [U-Boot] [PATCH 07/17] board_f: Remove adjust_sdram_tbs_8xx() from the init sequence X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" We can just call this from the only place that needs it. Signed-off-by: Simon Glass Reviewed-by: Stefan Roese --- arch/powerpc/cpu/mpc8xx/speed.c | 63 +++++++++++++++++++++-------------------- common/board_f.c | 4 --- include/common.h | 1 - 3 files changed, 33 insertions(+), 35 deletions(-) diff --git a/arch/powerpc/cpu/mpc8xx/speed.c b/arch/powerpc/cpu/mpc8xx/speed.c index 7a532cca07..e2295d253f 100644 --- a/arch/powerpc/cpu/mpc8xx/speed.c +++ b/arch/powerpc/cpu/mpc8xx/speed.c @@ -252,6 +252,33 @@ static int sdram_adjust_866(void) return 0; } +/* + * Adjust sdram refresh rate to actual CPU clock + * and set timebase source according to actual CPU clock + */ +static int adjust_sdram_tbs_8xx(void) +{ +#if defined(CONFIG_TQM8xxL) && !defined(CONFIG_TQM866M) && \ + !defined(CONFIG_TQM885D) + volatile immap_t *immr = (immap_t *)CONFIG_SYS_IMMR; + long mamr; + long sccr; + + mamr = immr->im_memctl.memc_mamr; + mamr &= ~MAMR_PTA_MSK; + mamr |= ((gd->cpu_clk / CONFIG_SYS_PTA_PER_CLK) << MAMR_PTA_SHIFT); + immr->im_memctl.memc_mamr = mamr; + + if (gd->cpu_clk < 67000000) { + sccr = immr->im_clkrst.car_sccr; + sccr |= SCCR_TBS; + immr->im_clkrst.car_sccr = sccr; + } +#endif /* CONFIG_TQM8xxL/M, !TQM866M, !TQM885D */ + + return 0; +} + /* This function sets up PLL (init_pll_866() is called) and * fills gd->cpu_clk and gd->bus_clk according to the environment * variable 'cpuclk' or to CONFIG_8xx_CPUCLK_DEFAULT (if 'cpuclk' @@ -264,6 +291,7 @@ int get_clocks(void) char tmp[64]; long cpuclk = 0; long sccr_reg; + int ret; if (getenv_f("cpuclk", tmp, sizeof (tmp)) > 0) cpuclk = simple_strtoul (tmp, NULL, 10) * 1000000; @@ -293,7 +321,11 @@ int get_clocks(void) } immr->im_clkrst.car_sccr = sccr_reg; - return sdram_adjust_866(); + ret = sdram_adjust_866(); + if (ret) + return ret; + + return adjust_sdram_tbs_8xx(); } /* Configure PLL for MPC866/859/885 CPU series @@ -369,32 +401,3 @@ static long init_pll_866 (long clk) } #endif /* CONFIG_8xx_CPUCLK_DEFAULT */ - -#if defined(CONFIG_TQM8xxL) && !defined(CONFIG_TQM866M) \ - && !defined(CONFIG_TQM885D) -/* - * Adjust sdram refresh rate to actual CPU clock - * and set timebase source according to actual CPU clock - */ -int adjust_sdram_tbs_8xx (void) -{ - volatile immap_t *immr = (immap_t *) CONFIG_SYS_IMMR; - long mamr; - long sccr; - - mamr = immr->im_memctl.memc_mamr; - mamr &= ~MAMR_PTA_MSK; - mamr |= ((gd->cpu_clk / CONFIG_SYS_PTA_PER_CLK) << MAMR_PTA_SHIFT); - immr->im_memctl.memc_mamr = mamr; - - if (gd->cpu_clk < 67000000) { - sccr = immr->im_clkrst.car_sccr; - sccr |= SCCR_TBS; - immr->im_clkrst.car_sccr = sccr; - } - - return (0); -} -#endif /* CONFIG_TQM8xxL/M, !TQM866M, !TQM885D */ - -/* ------------------------------------------------------------------------- */ diff --git a/common/board_f.c b/common/board_f.c index 14035b1805..7feffa4939 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -850,10 +850,6 @@ static const init_fnc_t init_sequence_f[] = { init_timebase, #elif defined(CONFIG_PPC) get_clocks, /* get CPU and bus clocks (etc.) */ -#if defined(CONFIG_TQM8xxL) && !defined(CONFIG_TQM866M) \ - && !defined(CONFIG_TQM885D) - adjust_sdram_tbs_8xx, -#endif /* TODO: can we rename this to timer_init()? */ init_timebase, #endif /* CONFIG_8xx_CPUCLK_DEFAULT */ diff --git a/include/common.h b/include/common.h index ef12e44095..ce37e9fc59 100644 --- a/include/common.h +++ b/include/common.h @@ -640,7 +640,6 @@ int serial_stub_tstc(struct stdio_dev *sdev); /* $(CPU)/speed.c */ int get_clocks (void); -int adjust_sdram_tbs_8xx (void); #if defined(CONFIG_MPC8260) int prt_8260_clks (void); #elif defined(CONFIG_MPC5xxx)