summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--spd/lp5/platforms_manifest.generated.txt2
-rw-r--r--spd/lp5/set-1/parts_spd_manifest.generated.txt6
-rw-r--r--spd/lp5/set-1/spd-1.hex4
-rw-r--r--spd/lp5/set-1/spd-2.hex4
-rw-r--r--spd/lp5/set-1/spd-3.hex4
-rw-r--r--spd/lp5/set-1/spd-4.hex4
-rw-r--r--spd/lp5/set-1/spd-5.hex6
-rw-r--r--spd/lp5/set-1/spd-6.hex32
-rw-r--r--util/spd_tools/src/spd_gen/lp5.go22
9 files changed, 32 insertions, 52 deletions
diff --git a/spd/lp5/platforms_manifest.generated.txt b/spd/lp5/platforms_manifest.generated.txt
index 8fbbd273e7..b3b574e02d 100644
--- a/spd/lp5/platforms_manifest.generated.txt
+++ b/spd/lp5/platforms_manifest.generated.txt
@@ -1,6 +1,6 @@
# Generated by:
# util/spd_tools/bin/spd_gen spd/lp5/memory_parts.json lp5
-ADL,set-0
MTL,set-0
+ADL,set-0
SBR,set-1
diff --git a/spd/lp5/set-1/parts_spd_manifest.generated.txt b/spd/lp5/set-1/parts_spd_manifest.generated.txt
index 9e1dd0c4a2..5579bdf9c5 100644
--- a/spd/lp5/set-1/parts_spd_manifest.generated.txt
+++ b/spd/lp5/set-1/parts_spd_manifest.generated.txt
@@ -7,8 +7,8 @@ H9JCNNNCP3MLYR-N6E,spd-2.hex
K3LKBKB0BM-MGCP,spd-3.hex
H9JCNNNBK3MLYR-N6E,spd-1.hex
MT62F2G32D8DR-031 WT:B,spd-4.hex
-K3LKLKL0EM-MGCN,spd-5.hex
+K3LKLKL0EM-MGCN,spd-1.hex
H58G56AK6BX069,spd-3.hex
MT62F1G32D4DS-031 WT:B,spd-2.hex
-K3LKCKC0BM-MGCP,spd-6.hex
-MT62F1G32D2DS-026 WT:B,spd-7.hex
+K3LKCKC0BM-MGCP,spd-5.hex
+MT62F1G32D2DS-026 WT:B,spd-3.hex
diff --git a/spd/lp5/set-1/spd-1.hex b/spd/lp5/set-1/spd-1.hex
index ccc9107aab..1bb8da178f 100644
--- a/spd/lp5/set-1/spd-1.hex
+++ b/spd/lp5/set-1/spd-1.hex
@@ -1,11 +1,11 @@
23 11 13 0E 85 19 95 18 00 40 00 00 02 02 00 00
-00 00 03 00 00 00 00 00 2B 00 90 A8 90 90 06 C0
+00 00 03 00 00 00 00 00 2C 00 90 A8 90 90 06 C0
03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 B9 00 C1 00 00
+00 00 00 00 00 00 00 00 00 00 00 C9 00 F4 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
diff --git a/spd/lp5/set-1/spd-2.hex b/spd/lp5/set-1/spd-2.hex
index 69a5fb54f2..12300a029e 100644
--- a/spd/lp5/set-1/spd-2.hex
+++ b/spd/lp5/set-1/spd-2.hex
@@ -1,11 +1,11 @@
23 11 13 0E 85 19 B5 18 00 40 00 00 0A 02 00 00
-00 00 03 00 00 00 00 00 2B 00 90 A8 90 90 06 C0
+00 00 03 00 00 00 00 00 2C 00 90 A8 90 90 06 C0
03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 B9 00 C1 00 00
+00 00 00 00 00 00 00 00 00 00 00 C9 00 F4 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
diff --git a/spd/lp5/set-1/spd-3.hex b/spd/lp5/set-1/spd-3.hex
index 8090f06fdc..a8cf28940a 100644
--- a/spd/lp5/set-1/spd-3.hex
+++ b/spd/lp5/set-1/spd-3.hex
@@ -1,11 +1,11 @@
23 11 13 0E 86 21 95 18 00 40 00 00 02 02 00 00
-00 00 03 00 00 00 00 00 2B 00 90 A8 90 C0 08 60
+00 00 03 00 00 00 00 00 2C 00 90 A8 90 C0 08 60
04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 B9 00 C1 00 00
+00 00 00 00 00 00 00 00 00 00 00 C9 00 F4 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
diff --git a/spd/lp5/set-1/spd-4.hex b/spd/lp5/set-1/spd-4.hex
index 7255eece70..01a5734bd4 100644
--- a/spd/lp5/set-1/spd-4.hex
+++ b/spd/lp5/set-1/spd-4.hex
@@ -1,11 +1,11 @@
23 11 13 0E 85 21 F9 18 00 40 00 00 09 02 00 00
-00 00 03 00 00 00 00 00 2B 00 90 A8 90 90 06 C0
+00 00 03 00 00 00 00 00 2C 00 90 A8 90 90 06 C0
03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 B9 00 C1 00 00
+00 00 00 00 00 00 00 00 00 00 00 C9 00 F4 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
diff --git a/spd/lp5/set-1/spd-5.hex b/spd/lp5/set-1/spd-5.hex
index 1bb8da178f..2cd3e1dedd 100644
--- a/spd/lp5/set-1/spd-5.hex
+++ b/spd/lp5/set-1/spd-5.hex
@@ -1,6 +1,6 @@
-23 11 13 0E 85 19 95 18 00 40 00 00 02 02 00 00
-00 00 03 00 00 00 00 00 2C 00 90 A8 90 90 06 C0
-03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+23 11 13 0E 86 21 B5 18 00 40 00 00 0A 02 00 00
+00 00 03 00 00 00 00 00 2C 00 90 A8 90 C0 08 60
+04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
diff --git a/spd/lp5/set-1/spd-6.hex b/spd/lp5/set-1/spd-6.hex
deleted file mode 100644
index da2001a858..0000000000
--- a/spd/lp5/set-1/spd-6.hex
+++ /dev/null
@@ -1,32 +0,0 @@
-23 11 13 0E 86 21 B5 18 00 40 00 00 0A 02 00 00
-00 00 03 00 00 00 00 00 2B 00 90 A8 90 C0 08 60
-04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 B9 00 C1 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 20 20 20 20 20 20 20
-20 20 20 20 20 20 20 20 20 20 20 20 20 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
diff --git a/util/spd_tools/src/spd_gen/lp5.go b/util/spd_tools/src/spd_gen/lp5.go
index 0b3a5adae1..64fb53fbe2 100644
--- a/util/spd_tools/src/spd_gen/lp5.go
+++ b/util/spd_tools/src/spd_gen/lp5.go
@@ -70,6 +70,7 @@ type LP5Set struct {
otherOptionalFeatures byte
busWidthEncoding byte
speedToTCKMinPs map[int]int
+ maxSpeedMbps int
}
/* ------------------------------------------------------------------------------------------ */
@@ -194,7 +195,7 @@ var LP5SetInfo = map[int]LP5Set{
* 2:0 (Bus width) = 001 (x16 always)
* Set to 0x01.
*/
- busWidthEncoding: 0x01,
+ busWidthEncoding: 0x01,
/*
* TCKMinPs:
* LPDDR5 has two clocks: the command/address clock (CK) and the data clock (WCK). They are
@@ -208,7 +209,7 @@ var LP5SetInfo = map[int]LP5Set{
7500 : 1066, /* 1 / (7500 / 2 / 4) */
6400 : 1250, /* 1 / (6400 / 2 / 4) */
5500 : 1455, /* 1 / (5500 / 2 / 4) */
- },
+ },
},
1: {
SPDRevision: LP5SPDValueRevision1_1,
@@ -219,13 +220,13 @@ var LP5SetInfo = map[int]LP5Set{
* 3:0 (Maximum Activate Count) = 1000 (Unlimited MAC)
* Set to 0x18.
*/
- optionalFeatures: 0x18,
+ optionalFeatures: 0x18,
/*
* For Sabrina (as per advisory b/211510456):
* 7:6 (PPR) = 1 (Post Package Repair is supported)
* Set to 0x40.
*/
- otherOptionalFeatures: 0x40,
+ otherOptionalFeatures: 0x40,
/*
* For Sabrina (as per advisory b/211510456):
* 7:5 (Number of system channels) = 000 (1 channel always)
@@ -233,7 +234,9 @@ var LP5SetInfo = map[int]LP5Set{
* 2:0 (Bus width) = 010 (x32 always)
* Set to 0x02.
*/
- busWidthEncoding: 0x02,
+ busWidthEncoding: 0x02,
+ /* Sabrina supports max speed of 5500 MT/s */
+ maxSpeedMbps: 5500,
},
}
@@ -637,6 +640,14 @@ func LP5EncodeTRFCPBMinLsb(memAttribs *LP5MemAttributes) byte {
return byte(convNsToMtb(memAttribs.TRFCPBNs) & 0xff)
}
+func LP5UpdateSpeedMbps(memAttribs *LP5MemAttributes) {
+ f, ok := LP5SetInfo[LP5CurrSet]
+
+ if ok && f.maxSpeedMbps != 0 && memAttribs.SpeedMbps > f.maxSpeedMbps {
+ memAttribs.SpeedMbps = f.maxSpeedMbps
+ }
+}
+
func LP5UpdateTCKMin(memAttribs *LP5MemAttributes) {
if memAttribs.TCKMinPs == 0 {
memAttribs.TCKMinPs = LP5GetTCKMinPs(memAttribs)
@@ -684,6 +695,7 @@ func LP5UpdateTRPPB(memAttribs *LP5MemAttributes) {
}
func lp5UpdateMemoryAttributes(memAttribs *LP5MemAttributes) {
+ LP5UpdateSpeedMbps(memAttribs)
LP5UpdateTCKMin(memAttribs)
LP5UpdateTAAMin(memAttribs)
LP5UpdateTRFCAB(memAttribs)