From: Joakim Tjernlund <joakim.tjernlund@transmode.se>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v1 0/7] Enable high speed and heavy load for DDR4 for LSCH3
Date: Thu, 5 Nov 2015 09:55:18 +0000 [thread overview]
Message-ID: <1446717317.21216.131.camel@transmode.se> (raw)
In-Reply-To: <DM2PR03MB57442D557F7409E3425AF13FA290@DM2PR03MB574.namprd03.prod.outlook.com>
On Thu, 2015-11-05 at 08:23 +0000, Yuantian Tang wrote:
> Hi Jocke,
>
> we achieved deep sleep mode that did exactly what you asked for.
> If waken up from deep sleep, soc will resume from uboot and re-initialized DDR controller with contents
> untouched.
> Please refer to drivers/ddr/fsl/fsl_ddr_gen4.c and look at DEEP_SLEEP related code.
Looking at it now and it looks the same as for ddr3? Some questions though:
289 if (is_warm_boot()) {
289 /* enter self-refresh */
290 temp_sdram_cfg = ddr_in32(&ddr->sdram_cfg_2);
291 temp_sdram_cfg |= SDRAM_CFG2_FRC_SR;
292 ddr_out32(&ddr->sdram_cfg_2, temp_sdram_cfg);
Why do you need to force SR here? The DDR RAM must already be in SR at this point?
I come from CPU reset state so my DDR controller has HW default values so
this does not feel safe.
293 /* do board specific memory setup */
294 board_mem_sleep_setup();
295
296 temp_sdram_cfg = (ddr_in32(&ddr->sdram_cfg) | SDRAM_CFG_BI);
SDRAM_CFG_BI skips a lot(all?) init of DDR RAM. What if you want to change some DDR RAM
timing/config due to a bug? Then you would have to force a cold start.
Do you use ECC? Seems to be some issues with ECC if you skip D_INIT
Jocke
>
> Regards,
> Yuantian
>
> > -----Original Message-----
> > From: Joakim Tjernlund [mailto:joakim.tjernlund at transmode.se]
> > Sent: Thursday, November 05, 2015 4:04 PM
> > To: Sun York-R58495 <yorksun@freescale.com>; u-boot at lists.denx.de
> > Cc: curt at cumulusnetworks.com; Sharma Bhupesh-B45370
> > <bhupesh.sharma@freescale.com>; trini at konsulko.com;
> > l.majewski at samsung.com; Tang Yuantian-B29983
> > <Yuantian.Tang@freescale.com>; Kushwaha Prabhakar-B32579
> > <prabhakar@freescale.com>; Liu Shengzhou-B36685
> > <Shengzhou.Liu@freescale.com>; yamada.m at jp.panasonic.com
> > Subject: Re: [PATCH v1 0/7] Enable high speed and heavy load for DDR4 for
> > LSCH3
> >
> > On Wed, 2015-11-04 at 10:03 -0800, York Sun wrote:
> > > This patch set revises the DDR driver to support higher speed for DDR4
> > > under heavy load (two dual-rank DIMMs) for four-chipselect interleaving.
> > > Single quad-rank DIMM is not supported yet.
> >
> > Hi York
> >
> > Seeing these patches reminds me about something I have been mening to
> > ask, Is it possible init the ddr controller/ddr ram (using ECC also) but still
> > retain (parts of) memory contents?
> >
> > I am looking at keeping data at the end of memory when performing a warm
> > start, but still init the controll/ddr ram (without D_INIT set).
> > This way one could pick up any changes to DDR timing if needed.
> > Before reboot, ddr ram is set to Self Refresh(SR).
> >
> > Jocke
next prev parent reply other threads:[~2015-11-05 9:55 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-04 18:03 [U-Boot] [PATCH v1 0/7] Enable high speed and heavy load for DDR4 for LSCH3 York Sun
2015-11-04 18:03 ` [U-Boot] [PATCH v1 1/7] driver/ddr/fsl: Update DDR4 RTT values York Sun
2015-11-04 18:03 ` [U-Boot] [PATCH v1 2/7] driver/ddr/fsl: Update DDR4 MR6 for Vref range York Sun
2015-11-04 18:03 ` [U-Boot] [PATCH v1 3/7] driver/ddr/fsl: Update MR5 RTT park York Sun
2015-11-04 18:03 ` [U-Boot] [PATCH v1 4/7] driver/ddr/fsl: Update workaround for A008511 for vref range York Sun
2015-11-04 18:03 ` [U-Boot] [PATCH v1 5/7] driver/ddr/fsl: Update timing config for heavy load York Sun
2015-11-04 18:03 ` [U-Boot] [PATCH v1 6/7] armv8/ls2085aqds: Update DDR settings for four chip-select case York Sun
2015-11-04 18:03 ` [U-Boot] [PATCH v1 7/7] armv8/ls2085ardb: " York Sun
2015-11-05 8:03 ` [U-Boot] [PATCH v1 0/7] Enable high speed and heavy load for DDR4 for LSCH3 Joakim Tjernlund
2015-11-05 8:23 ` Yuantian Tang
2015-11-05 9:55 ` Joakim Tjernlund [this message]
2015-11-05 17:42 ` York Sun
2015-11-05 18:19 ` Joakim Tjernlund
2015-11-05 18:29 ` York Sun
2015-11-05 19:53 ` Joakim Tjernlund
2015-11-05 20:47 ` York Sun
2015-11-12 7:35 ` Joakim Tjernlund
2015-11-12 16:43 ` York Sun
2015-11-06 2:24 ` Yuantian Tang
2015-11-06 11:10 ` Joakim Tjernlund
2015-12-15 0:41 ` York Sun
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=1446717317.21216.131.camel@transmode.se \
--to=joakim.tjernlund@transmode.se \
--cc=u-boot@lists.denx.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox