All of lore.kernel.org
 help / color / mirror / Atom feed
From: Huan Zhou <me@per1cycle.org>
To: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: "Yixun Lan" <dlan@gentoo.org>,
	u-boot@lists.denx.de, "Ben Dooks" <ben.dooks@codethink.co.uk>,
	"Marcel Ziswiler" <marcel@ziswiler.com>,
	"Bin Meng" <bmeng@tinylab.org>,
	"Dan Carpenter" <dan.carpenter@linaro.org>,
	"Frieder Schrempf" <frieder.schrempf@kontron.de>,
	"Jonas Schwöbel" <jonasschwoebel@yahoo.de>,
	"Kever Yang" <kever.yang@rock-chips.com>,
	Leo <ycliang@andestech.com>,
	"Michal Simek" <michal.simek@amd.com>,
	"Nishanth Menon" <nm@ti.com>,
	"Quentin Schulz" <quentin.schulz@cherry.de>,
	Randolph <randolph@andestech.com>,
	"Rick Chen" <rick@andestech.com>,
	"Samuel Holland" <samuel@sholland.org>,
	"Sumit Garg" <sumit.garg@linaro.org>,
	"Svyatoslav Ryhel" <clamor95@gmail.com>,
	"Tom Rini" <trini@konsulko.com>,
	"Yu Chien Peter Lin" <peterlin@andestech.com>,
	"Huan Zhou" <pericycle.cc@gmail.com>,
	"Kongyang Liu" <seashell11234455@gmail.com>,
	"Padmarao Begari" <padmarao.begari@amd.com>
Subject: Re: [PATCH] riscv: spacemit: k1: probe dram size during boot phase.
Date: Wed, 8 Jan 2025 19:51:03 +0800	[thread overview]
Message-ID: <20250108115103.z4ropkngky2vioo4@per1cycle.per1cycle> (raw)
In-Reply-To: <34F2FA88-E868-45C0-B73B-98BADEF49263@gmx.de>

On Wed, Jan 08, 2025 at 12:21:18PM +0100, Heinrich Schuchardt wrote:
> Am 8. Januar 2025 12:11:05 MEZ schrieb Yixun Lan <dlan@gentoo.org>:
> >Hi Huan:
> >
> >On 16:49 Wed 08 Jan     , Huan Zhou wrote:
> >> 
> >> 
> >..
> >> ---
> >remove above "---"? otherwise following commit message will be
> >dropped during patch application..
> >
> >> This patch introduce improvement for get dram size on bananapi BPI-F3,
> >> retrieving the dram size dynamically.
> >> Have tested on bananapi BPIF3 4G and jupiter 8G.
> >> 
> >> Signed-off-by: Huan Zhou <me@per1cycle.org>
> >> ---
> >>  arch/riscv/cpu/k1/dram.c | 40 ++++++++++++++++++++++++++++++++++++++--
> >>  1 file changed, 38 insertions(+), 2 deletions(-)
> >> 
> >> diff --git a/arch/riscv/cpu/k1/dram.c b/arch/riscv/cpu/k1/dram.c
> >> index c477c15cbfb19f0e3a0ee72985b602f5bda352d7..095217f2a4c053f7477d62c0776bcb51e623db47 100644
> >> --- a/arch/riscv/cpu/k1/dram.c
> >> +++ b/arch/riscv/cpu/k1/dram.c
> >> @@ -4,17 +4,53 @@
> >>   */
> >>  
> >>  #include <asm/global_data.h>
> >> +#include <asm/io.h>
> >>  #include <config.h>
> >> +#include <bitfield.h>
> >>  #include <fdt_support.h>
> >>  #include <linux/sizes.h>
> >>  
> >> +#define DDR_BASE 0xC0000000
> >>  DECLARE_GLOBAL_DATA_PTR;
> >>  
> >> +static inline u32 map_format_size(u32 val)
> >> +{
> >> +	u32 tmp;
> >> +
> >> +	if (val & 0x1 == 0)
> >please add brackets explicitly, something like
> >	if ((val & 0x1) == 0)
> 
> We tend to avoid == 0 in U-Boot
ok, got it.
> 
> if (val & BIT(0))
> 
> >
> >> +		return 0;
> >> +
> >> +	tmp = bitfield_extract(val, 16, 5);
> >> +	switch (tmp) {
> >> +	case 0xd:
> >> +		return 512;
> >> +	case 0xe:
> >> +		return 1024;
> >> +	case 0xf:
> >> +		return 2048;
> >> +	case 0x10:
> >> +		return 4096;
> >> +	case 0x11:
> >> +		return 8192;
> >> +	default:
> >> +		pr_info("Invalid DRAM density %x\n", val);
> >> +		return 0;
> >> +	}
> >> +}
> >> +
> >> +u32 ddr_get_density(void)
> >> +{
> >> +	u32 cs0_size = map_format_size(readl((void *)DDR_BASE + 0x200));
> >> +	u32 cs1_size = map_format_size(readl((void *)DDR_BASE + 0x208));
> >> +	u32 ddr_size = cs0_size + cs1_size;
> >> +
> >> +	return ddr_size;
> >> +}
> >> +
> >>  int dram_init(void)
> >>  {
> >>  	gd->ram_base = CFG_SYS_SDRAM_BASE;
> >> -	/* TODO get ram size from ddr controller */
> >> -	gd->ram_size = SZ_4G;
> >> +	gd->ram_size = (u64)ddr_get_density() * SZ_1M;
> 
> This is C and not C++. We don't need a cast to assign here.
> 
ok, will fixed and retested, links to test log will be added too.
> Best regards
> 
> Heinrich
> 
> >while using cast, why not define ddr_get_density() return as same type?
> >also it's more reasonable to use phys_size_t as I checked gd_t
> >
> >>  	return 0;
> >>  }
> >>  
> >> 
> >> ---
> >> base-commit: 19fc0b7f7d907119a13e9c207991899f0817f8fc
> >> change-id: 20250108-get-dram-size-65cf59a15201
> >> 
> >> Best regards,
> >> -- 
> >> Huan Zhou <me@per1cycle.org>
> >> 
> >
> 

  reply	other threads:[~2025-01-08 15:50 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-08  8:49 [PATCH] riscv: spacemit: k1: probe dram size during boot phase Huan Zhou
2025-01-08 11:11 ` Yixun Lan
2025-01-08 11:21   ` Heinrich Schuchardt
2025-01-08 11:51     ` Huan Zhou [this message]
2025-01-08 12:37     ` Dan Carpenter
2025-01-08 12:44       ` Huan Zhou
2025-01-08 17:03       ` Simon Glass
2025-01-08 17:15         ` Tom Rini
2025-01-08 17:18         ` Dan Carpenter
2025-01-09 12:36           ` Simon Glass
2025-01-08 11:21   ` Huan Zhou
2025-01-08 11:36   ` Huan Zhou
2025-01-10 17:34 ` Marcel Ziswiler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250108115103.z4ropkngky2vioo4@per1cycle.per1cycle \
    --to=me@per1cycle.org \
    --cc=ben.dooks@codethink.co.uk \
    --cc=bmeng@tinylab.org \
    --cc=clamor95@gmail.com \
    --cc=dan.carpenter@linaro.org \
    --cc=dlan@gentoo.org \
    --cc=frieder.schrempf@kontron.de \
    --cc=jonasschwoebel@yahoo.de \
    --cc=kever.yang@rock-chips.com \
    --cc=marcel@ziswiler.com \
    --cc=michal.simek@amd.com \
    --cc=nm@ti.com \
    --cc=padmarao.begari@amd.com \
    --cc=pericycle.cc@gmail.com \
    --cc=peterlin@andestech.com \
    --cc=quentin.schulz@cherry.de \
    --cc=randolph@andestech.com \
    --cc=rick@andestech.com \
    --cc=samuel@sholland.org \
    --cc=seashell11234455@gmail.com \
    --cc=sumit.garg@linaro.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=xypron.glpk@gmx.de \
    --cc=ycliang@andestech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.