veyron: Add samsung ddr3 K4B4G1646E-BYK0 for Jerry, Jaq and Mighty
BUG=b:35586879
BRANCH=veyron
TEST=mosys memory spd print all
Change-Id: I4553f72476defde275cb3df8e76c7ce7c4eca27a
Reviewed-on: https://chromium-review.googlesource.com/458465
Commit-Ready: Jianbo Zhang <zhangjb@bitland.corp-partner.google.com>
Tested-by: guohui zhou <guohui.zhou@bitland.com.cn>
Reviewed-by: Julius Werner <jwerner@chromium.org>
diff --git a/platform/google/pinky/memory.c b/platform/google/pinky/memory.c
index 49764c3..aa0ff3d 100644
--- a/platform/google/pinky/memory.c
+++ b/platform/google/pinky/memory.c
@@ -40,6 +40,14 @@
static int pinky_dimm_count;
static const struct nonspd_mem_info *pinky_mem_info;
+static int supports_tristate(struct platform_intf *intf)
+{
+ if(!strncmp(intf->name, "Jerry", 5) ||
+ !strncmp(intf->name, "Jaq", 3) ||
+ !strncmp(intf->name, "Mighty", 6))
+ return 0;
+ return 1;
+}
/* read RAM code and fill in values needed by memory commands */
static int read_ram_code(struct platform_intf *intf)
{
@@ -126,8 +134,13 @@
} else {
switch (ram_code) {
case 0:
- pinky_dimm_count = 2;
- pinky_mem_info = &samsung_lpddr3_k4e8e304ed_egcc;
+ if(supports_tristate(intf)) {
+ pinky_dimm_count = 2;
+ pinky_mem_info = &samsung_lpddr3_k4e8e304ed_egcc;
+ } else {
+ pinky_dimm_count = 4;
+ pinky_mem_info = &samsung_k4b4g1646e;
+ }
break;
case 2:
pinky_dimm_count = 2;