From patchwork Mon Jun 17 07:32:00 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 618 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id C81423F353 for ; Mon, 17 Jun 2019 09:38:59 +0200 (CEST) Received: by mail-pf1-f199.google.com with SMTP id a125sf6557043pfa.13 for ; Mon, 17 Jun 2019 00:38:59 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1560757138; cv=pass; d=google.com; s=arc-20160816; b=CUnkC0SmsffND1Hl97uyco52i19hxuDGCnFIMEn1cpQiDspVyuylhI9TLRCte0Em06 yBX6AWZRcvC4kx44+Vk/p/oVPMN6hByu46gxjaokCehi5q4hKBq21DG7OBQcYlTe4rgs 8yrTGgHF+eWmn431rIxIEZ1NpzLzMGGSPY4S6lzVDaRGfRzaV6loahvtZ3lRSIQbgkP+ IBJkKkDuQjkJqNXvgUI92RRhNHyUGLzcY2eQKzmqpINfpM9Jb3YiinxcJyv+rB0zz+tz JP+HZ7keKnfmEU9BJVuuJKw1Z2WUQK2bWFs6xVfzRUEFVaF4aXl2tkwW0RoSj6W3gfkW hD+Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=mpyBy1M4sHzD+ljCjlmfvmkVck6x13avomdxTD1rC2g=; b=QPReIbanFaaRTTV1EE0U87YmsRfm3RsABC7exxUtuSCC6ujjzrLXeaPRwF+cHcxDEH 7PpDf1/jfWz4ICiOq9VweyM4/AWrALHYXS9jbeJRqum1tZLkd9cWS12/S+Icv0202CVB k0HdkOa33mHTriwjOKF9i7dr78LldqnWzv5bvZae/up81sQqPrvccogIn5cwLS43SSci E4NgfEkF/WQACTZQzRYlT37XJBHthk9vAbNkt+w/ZHIJricM634S3JsE1KrqQj0+3muv qhM1ZzF09GQYcfMGCaSE7tOTXnhTSejYQUUBGXu2WtBZ9B7ifn1WiMqhQdESkjO+2g7C 2xYg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=QUl2SnuP; spf=pass (google.com: domain of jagan@amarulasolutions.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=jagan@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:x-original-sender:x-original-authentication-results :precedence:mailing-list:list-id:list-post:list-help:list-archive :list-unsubscribe; bh=mpyBy1M4sHzD+ljCjlmfvmkVck6x13avomdxTD1rC2g=; b=cMY8U2pNa03HyNDxKVeqw+TeN4gFlvP3++rbFxC0IYTzxHLpVwkoc8S9gTovzh4COe LesyEZ7O4RdSuyScHXN7KwhWRWsrnL8OpNUHXgCy+Gnmx5Rj4IENiIVI15sPJxzcPR4I zTe+cklobUvZrudJ+MECuvAESnOzzhFymAr00= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :x-spam-checked-in-group:list-post:list-help:list-archive :list-unsubscribe; bh=mpyBy1M4sHzD+ljCjlmfvmkVck6x13avomdxTD1rC2g=; b=L60tB2XLTzvBau++rFVX/KvbENwa21GCbAXgJW5l4FKGNIpkn8oEVDFFAVwrA7yvfo IkIO38qNsAIRhwVmoKPwBVgeOLtVx9WgvSBlgL7liZbWQzBOMdzyXhAaGd0PC9oBvgma srMJyjQhP1GEQjIWLDxyJ9byNA3swx4aBXMY1SOeEF4SgmsEGPnOuEEWrqlB4VQtL6xr yRXOuzc//h+qMX3V/CLnr0BQA6nRKeZ5F73csGfWJmoACw10o1ZvM/2g8qSRn+Ox9a6R Anj6O4Fmb/dq8ROvmGCU50qXoLKkkxEqMRd1d8MhayeeIetTBMHtvZHr8Dj+Gq4u+jAI m+uQ== X-Gm-Message-State: APjAAAWwhnYUY+bDPjPQhxFVOzLlvDj/aW6ufBrDfAx/Dvrk/pGXpkO4 nan6uulCDtbCvEFwup4Xp5oGcs1J X-Google-Smtp-Source: APXvYqwj89SmgR9MInB/h+aROAvzcsLVMEZtztE14ZsMUr7dqze+WoljDc0eehTJyaM5JRGasJS1sw== X-Received: by 2002:a65:42c9:: with SMTP id l9mr20332874pgp.32.1560757138557; Mon, 17 Jun 2019 00:38:58 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com Received: by 2002:a17:90a:aa88:: with SMTP id l8ls3985597pjq.1.canary-gmail; Mon, 17 Jun 2019 00:38:58 -0700 (PDT) X-Received: by 2002:a17:902:294a:: with SMTP id g68mr108816369plb.169.1560757138272; Mon, 17 Jun 2019 00:38:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560757138; cv=none; d=google.com; s=arc-20160816; b=LnimLrJTFAVsN0TRHZR3GVehMv4JIluoY75wogG44chzNd9X8LwzrtMuaEEidddMJr uIpjXkZAs44h7HyV87g1bDoe6ec2p8Bc+PTXhPOAf2iRKhVzTvITdMnLIqOj94jxzkDh RY7QNi8aBrLAv++ZhM5ZJn0guLKlnkSKrvQFoJjHEY6JojPxFTIAJ6ZeoQhcmFjo/lUE oVJLqDVHtZhJkd0oNBFWfnM8EyuG159ldzLu5HFD8zOa6B6bsP2O6bN/5GyMXKA527Oz 8eJLE+MolbflAdLdBxNsAjbj/sNz7OgSkYxEPM8XLY9p9f+Xa3q6SzUw7TbaBRbmsjeA PWEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=kw/++CuXx6mQuiTZ6aAWPkhA635XZSGQPzWMsqf+2Gk=; b=YpGxlTxUCEmS8Md21LEl/XExGXjpxyOZgIpERXKPIY+3i1GI/FubRF/o+V7fbbVtUT 7pf7Ojg2ALcJdi1+TCrGMwxdqge2ED0kK+kQo09rThs6ezlzJi/9GkVJJVHQT6u1tNpP +Lag6qNcnSPvScRC/oPAuOQMFMGl/ajUeY4jvf1U14NBZDQEna7a/j2KMoQwNO23YIgc +aTXD40UOFM69TmMyITlBx9vIOJYRGb44IYwsivs6A2vLYxYzqzWYz+pYqslsmUlRTX2 o6JI/lmLVw5jR9IjUI28FYbl3cXtVnAcwWxDxE0+9oHU3pzNqwNqDkNQdYuH5m5ZTOH0 lgBg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=QUl2SnuP; spf=pass (google.com: domain of jagan@amarulasolutions.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=jagan@amarulasolutions.com Received: from mail-sor-f65.google.com (mail-sor-f65.google.com. [209.85.220.65]) by mx.google.com with SMTPS id v196sor10280482pgb.58.2019.06.17.00.38.58 for (Google Transport Security); Mon, 17 Jun 2019 00:38:58 -0700 (PDT) Received-SPF: pass (google.com: domain of jagan@amarulasolutions.com designates 209.85.220.65 as permitted sender) client-ip=209.85.220.65; X-Received: by 2002:a63:26c7:: with SMTP id m190mr48786614pgm.141.1560757137893; Mon, 17 Jun 2019 00:38:57 -0700 (PDT) Received: from localhost.localdomain ([49.206.203.245]) by smtp.gmail.com with ESMTPSA id m41sm15205998pje.18.2019.06.17.00.38.54 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jun 2019 00:38:57 -0700 (PDT) From: Jagan Teki To: Simon Glass , Philipp Tomsich , Kever Yang , YouMin Chen , u-boot@lists.denx.de Cc: Manivannan Sadhasivam , gajjar04akash@gmail.com, linux-rockchip@lists.infradead.org, linux-amarula@amarulasolutions.com, Jagan Teki Subject: [PATCH v2 47/99] ram: rockchip: debug: Get the cs capacity Date: Mon, 17 Jun 2019 13:02:00 +0530 Message-Id: <20190617073252.27810-48-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.18.0.321.gffc6fa0e3 In-Reply-To: <20190617073252.27810-1-jagan@amarulasolutions.com> References: <20190617073252.27810-1-jagan@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: jagan@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=QUl2SnuP; spf=pass (google.com: domain of jagan@amarulasolutions.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=jagan@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Add code to get the channel capacity, this would help to print the capacity of specific channel. Here is sample print on LPDDR4, 50MHz channel 0 BW=32 Col=10 Bk=8 CS0 Row=15 CS1 Row=15 CS=2 Die BW=16 Size=2048MB Signed-off-by: Jagan Teki Signed-off-by: YouMin Chen --- drivers/ram/rockchip/sdram_debug.c | 46 +++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/drivers/ram/rockchip/sdram_debug.c b/drivers/ram/rockchip/sdram_debug.c index 69a6f94a73..19e9225c12 100644 --- a/drivers/ram/rockchip/sdram_debug.c +++ b/drivers/ram/rockchip/sdram_debug.c @@ -33,10 +33,46 @@ void sdram_print_dram_type(unsigned char dramtype) } } +/** + * cs = 0, cs0 + * cs = 1, cs1 + * cs => 2, cs0+cs1 + * note: it didn't consider about row_3_4 + */ +u64 sdram_get_cs_cap(struct sdram_cap_info *cap_info, u32 cs, u32 dram_type) +{ + u32 bg; + u64 cap[2]; + + if (dram_type == DDR4) + /* DDR4 8bit dram BG = 2(4bank groups), + * 16bit dram BG = 1 (2 bank groups) + */ + bg = (cap_info->dbw == 0) ? 2 : 1; + else + bg = 0; + + cap[0] = 1llu << (cap_info->bw + cap_info->col + + bg + cap_info->bk + cap_info->cs0_row); + + if (cap_info->rank == 2) + cap[1] = 1llu << (cap_info->bw + cap_info->col + + bg + cap_info->bk + cap_info->cs1_row); + else + cap[1] = 0; + + if (cs == 0) + return cap[0]; + else if (cs == 1) + return cap[1]; + else + return (cap[0] + cap[1]); +} + void sdram_print_ddr_info(struct sdram_cap_info *cap_info, struct sdram_base_params *base) { - u32 bg; + u32 bg, cap; bg = (cap_info->dbw == 0) ? 2 : 1; @@ -71,4 +107,12 @@ void sdram_print_ddr_info(struct sdram_cap_info *cap_info, printascii(" Die BW="); printdec(8 << cap_info->dbw); + + cap = sdram_get_cs_cap(cap_info, 3, base->dramtype); + if (cap_info->row_3_4) + cap = cap * 3 / 4; + + printascii(" Size="); + printdec(cap >> 20); + printascii("MB\n"); }