From: Kever Yang <kever.yang@rock-chips.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 25/57] ram: rk3399: Avoid two channel ZQ Cal Start at the same time
Date: Tue, 16 Jul 2019 21:12:42 +0800 [thread overview]
Message-ID: <cd5cd08d-26e6-26cd-e225-e298f17a31f7@rock-chips.com> (raw)
In-Reply-To: <20190716115745.12585-26-jagan@amarulasolutions.com>
On 2019/7/16 下午7:57, Jagan Teki wrote:
> It is possible in lpddr4 dram, where both the channels would
> start at same time with ZQ Cal Start. If it uses ZQ Call start
> then it will use RZQ.
>
> For example LPDDR4 366 Dual-Die, Quad-Channel Package, RZQ maybe
> connect to both channel. If ZQ Cal Start at the same time,
> it will use the same RZQ.
>
> It is not a problem of using RZQ in both the channels, but can not
> use at the same time.
>
> So, to avoid this, we have an option of dram tINIT3 value for
> increasing the frequency for channel 1.
>
> This patch increase the available tINIT3 with existing running
> dram frequency.
>
> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
> Signed-off-by: YouMin Chen <cym@rock-chips.com>
Reviewed-by: Kever Yang <Kever.yang@rock-chips.com>
Thanks,
- Kever
> ---
> drivers/ram/rockchip/sdram_rk3399.c | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/drivers/ram/rockchip/sdram_rk3399.c b/drivers/ram/rockchip/sdram_rk3399.c
> index 023838a301..beb4f6de54 100644
> --- a/drivers/ram/rockchip/sdram_rk3399.c
> +++ b/drivers/ram/rockchip/sdram_rk3399.c
> @@ -550,6 +550,20 @@ static int pctl_cfg(struct dram_info *dram, const struct chan_info *chan,
> sizeof(struct rk3399_ddr_pctl_regs) - 4);
> writel(params_ctl[0], &denali_ctl[0]);
>
> + /*
> + * two channel init at the same time, then ZQ Cal Start
> + * at the same time, it will use the same RZQ, but cannot
> + * start at the same time.
> + *
> + * So, increase tINIT3 for channel 1, will avoid two
> + * channel ZQ Cal Start at the same time
> + */
> + if (params->base.dramtype == LPDDR4 && channel == 1) {
> + tmp = ((params->base.ddr_freq * MHz + 999) / 1000);
> + tmp1 = readl(&denali_ctl[14]);
> + writel(tmp + tmp1, &denali_ctl[14]);
> + }
> +
> copy_to_reg(denali_pi, ¶ms->pi_regs.denali_pi[0],
> sizeof(struct rk3399_ddr_pi_regs));
>
next prev parent reply other threads:[~2019-07-16 13:12 UTC|newest]
Thread overview: 122+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-16 11:56 [U-Boot] [PATCH v3 00/57] ram: rk3399: Add LPDDR4 support Jagan Teki
2019-07-16 11:56 ` [U-Boot] [PATCH v3 01/57] ram: rk3399: Add ddrtype enc macro Jagan Teki
2019-07-16 12:57 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 02/57] ram: rk3399: Add channel number encoder macro Jagan Teki
2019-07-16 12:58 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 03/57] ram: rk3399: Add row_3_4 enc macro Jagan Teki
2019-07-16 12:58 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 04/57] ram: rk3399: Add chipinfo macro Jagan Teki
2019-07-16 12:58 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 05/57] ram: rk3399: Add rank enc macro Jagan Teki
2019-07-16 12:58 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 06/57] ram: rk3399: Add column " Jagan Teki
2019-07-16 12:59 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 07/57] ram: rk3399: Add bk " Jagan Teki
2019-07-16 13:00 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 08/57] ram: rk3399: Add dbw " Jagan Teki
2019-07-16 13:00 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 09/57] ram: rk3399: Add cs0_rw macro Jagan Teki
2019-07-16 13:00 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 10/57] ram: rk3399: Add cs1_rw macro Jagan Teki
2019-07-16 13:03 ` Kever Yang
2019-07-16 11:56 ` [U-Boot] [PATCH v3 11/57] ram: rk3399: Add bw enc macro Jagan Teki
2019-07-16 13:03 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 12/57] ram: rk3399: Rename sys_reg with sys_reg2 Jagan Teki
2019-07-16 13:03 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 13/57] ram: rk3399: Update cs0_row to use sys_reg3 Jagan Teki
2019-07-16 13:03 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 14/57] ram: rk3399: Update cs1_row " Jagan Teki
2019-07-16 13:03 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 15/57] ram: rk3399: Add cs1_col enc macro Jagan Teki
2019-07-16 13:02 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 16/57] ram: rk3399: Add ddr version " Jagan Teki
2019-07-16 13:02 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 17/57] ram: rk3399: Add ddrtimingC0 Jagan Teki
2019-07-16 13:02 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 18/57] ram: rk3399: Add DdrMode Jagan Teki
2019-07-16 13:02 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 19/57] ram: rk3399: Configure phy IO in ds odt Jagan Teki
2019-07-16 13:04 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 20/57] ram: rockchip: Kconfig: Add RK3399 LPDDR4 entry Jagan Teki
2019-07-16 13:10 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 21/57] ram: rk3399: Add lpddr4 rank mask for ca training Jagan Teki
2019-07-16 13:11 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 22/57] ram: rk3399: Add lpddr4 rank mask for wdql training Jagan Teki
2019-07-16 13:11 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 23/57] ram: rk3399: Move mode_sel assignment Jagan Teki
2019-07-16 13:12 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 24/57] ram: rk3399: Don't wait for PLL lock in lpddr4 Jagan Teki
2019-07-16 13:12 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 25/57] ram: rk3399: Avoid two channel ZQ Cal Start at the same time Jagan Teki
2019-07-16 13:12 ` Kever Yang [this message]
2019-07-16 11:57 ` [U-Boot] [PATCH v3 26/57] ram: rk3399: Configure PHY_898, PHY_919 for lpddr4 Jagan Teki
2019-07-16 13:12 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 27/57] ram: rk3399: Configure BOOSTP_EN, BOOSTN_EN " Jagan Teki
2019-07-16 13:12 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 28/57] ram: rk3399: Configure SLEWP_EN, SLEWN_EN " Jagan Teki
2019-07-16 13:13 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 29/57] ram: rk3399: Configure PHY RX_CM_INPUT " Jagan Teki
2019-07-16 13:13 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 30/57] ram: rk3399: Map chipselect " Jagan Teki
2019-07-16 13:13 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 31/57] ram: rk3399: Configure tsel write ca " Jagan Teki
2019-07-16 13:14 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 32/57] ram: rk3399: Don't disable dfi dram clk for lpddr4, rank 1 Jagan Teki
2019-07-16 13:14 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 33/57] ram: rk3399: Add IO settings Jagan Teki
2019-07-16 13:14 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 34/57] ram: sdram: Configure lpddr4 tsel rd, wr based on " Jagan Teki
2019-07-16 13:15 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 35/57] ram: rk3399: Add tsel control clock drive Jagan Teki
2019-07-16 13:15 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 36/57] ram: rk3399: Configure soc odt support Jagan Teki
2019-07-16 13:15 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 37/57] ram: rk3399: Get lpddr4 tsel_rd_en from io settings Jagan Teki
2019-07-16 13:15 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 38/57] ram: rk3399: Update lpddr4 vref based on " Jagan Teki
2019-07-16 13:16 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 39/57] ram: rk3399: Update lpddr4 mode_sel " Jagan Teki
2019-07-16 13:16 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 40/57] ram: rk3399: Update lpddr4 vref_mode_ac Jagan Teki
2019-07-16 13:17 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 41/57] ram: rk3399: Simplify data training first argument Jagan Teki
2019-07-16 13:17 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 42/57] ram: rk3399: Handle data training via ops Jagan Teki
2019-07-16 13:18 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 43/57] ram: rk3399: Add LPPDR4 mr detection Jagan Teki
2019-07-16 13:18 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 44/57] arm: include: rockchip: Add rk3399 pmu file Jagan Teki
2019-07-16 13:18 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 45/57] rockchip: rk3399: syscon: Add pmu support Jagan Teki
2019-07-16 13:19 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 46/57] rockchip: dts: rk3399: Add u-boot, dm-pre-reloc for pmu Jagan Teki
2019-07-16 13:19 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 47/57] clk: rockchip: rk3399: Set 50MHz ddr clock Jagan Teki
2019-07-16 13:19 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 48/57] clk: rockchip: rk3399: Set 400MHz " Jagan Teki
2019-07-16 13:19 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 49/57] ram: rk3399: Add LPPDDR4-400 timings inc Jagan Teki
2019-07-16 13:20 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 50/57] ram: rk3399: Add LPPDDR4-800 " Jagan Teki
2019-07-16 13:20 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 51/57] ram: rk3399: Add set_rate sdram rk3399 ops Jagan Teki
2019-07-16 13:20 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 52/57] ram: rk3399: Add lpddr4 set rate support Jagan Teki
2019-07-16 13:21 ` Kever Yang
2019-07-20 3:13 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 53/57] configs: rockpro64: Enable LPDDR4 support Jagan Teki
2019-07-16 13:21 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 54/57] configs: rock-pi-4: " Jagan Teki
2019-07-16 13:21 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 55/57] rockchip: dts: rk3399: Add LPDDR4-100 timings Jagan Teki
2019-07-16 13:21 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 56/57] rockchip: dts: rk3399: rockpro64: Use LPDDR4-100 dtsi Jagan Teki
2019-07-16 13:22 ` Kever Yang
2019-07-16 11:57 ` [U-Boot] [PATCH v3 57/57] rockchip: dts: rk3399: rock-pi-4: " Jagan Teki
2019-07-16 13:22 ` Kever Yang
2019-07-16 13:10 ` [U-Boot] [PATCH v3 00/57] ram: rk3399: Add LPDDR4 support Kever Yang
2019-10-06 1:05 ` Qu Wenruo
2019-10-06 1:28 ` Manivannan Sadhasivam
2019-10-06 1:30 ` Qu Wenruo
2019-10-08 0:31 ` Kever Yang
2019-10-12 10:37 ` Qu Wenruo
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=cd5cd08d-26e6-26cd-e225-e298f17a31f7@rock-chips.com \
--to=kever.yang@rock-chips.com \
--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