| .. | .. |
|---|
| 81 | 81 | unsigned int dramid[3]; |
|---|
| 82 | 82 | }; |
|---|
| 83 | 83 | |
|---|
| 84 | | -struct lpddrx_id { |
|---|
| 85 | | - unsigned int dramid; |
|---|
| 86 | | - char *name; |
|---|
| 87 | | -}; |
|---|
| 88 | | - |
|---|
| 89 | | -static const struct lpddrx_id lp23_manuf_id[] = { |
|---|
| 90 | | - { 0x1, "Samsung" }, |
|---|
| 91 | | - { 0x2, "Qimonda" }, |
|---|
| 92 | | - { 0x3, "Elpida" }, |
|---|
| 93 | | - { 0x4, "Etron" }, |
|---|
| 94 | | - { 0x5, "Nanya" }, |
|---|
| 95 | | - { 0x6, "SK hynix" }, |
|---|
| 96 | | - { 0x7, "Mosel" }, |
|---|
| 97 | | - { 0x8, "Winbond" }, |
|---|
| 98 | | - { 0x9, "ESMT" }, |
|---|
| 99 | | - { 0xa, "Zentel" }, |
|---|
| 100 | | - { 0xb, "Spansion" }, |
|---|
| 101 | | - { 0xc, "SST" }, |
|---|
| 102 | | - { 0xd, "ZMOS" }, |
|---|
| 103 | | - { 0xe, "Intel" }, |
|---|
| 104 | | - { 0x12, "Being Advanced Memory Corp" }, |
|---|
| 105 | | - { 0x1a, "Xi'an UniIC Semiconductors Co., Ltd" }, |
|---|
| 106 | | - { 0x1b, "ISSI" }, |
|---|
| 107 | | - { 0x1c, "JSC" }, |
|---|
| 108 | | - { 0xaa, "Tezzaron" }, |
|---|
| 109 | | - { 0xc2, "Macronix" }, |
|---|
| 110 | | - { 0xf8, "Fidelix" }, |
|---|
| 111 | | - { 0xfc, "eveRAM" }, |
|---|
| 112 | | - { 0xfd, "AP Memory" }, |
|---|
| 113 | | - { 0xfe, "Numonyx" }, |
|---|
| 114 | | - { 0xff, "Micron" } |
|---|
| 115 | | -}; |
|---|
| 116 | | - |
|---|
| 117 | | -static const struct lpddrx_id lp4_manuf_id[] = { |
|---|
| 118 | | - { 0x1, "Samsung" }, |
|---|
| 119 | | - { 0x5, "Nanya" }, |
|---|
| 120 | | - { 0x6, "SK hynix" }, |
|---|
| 121 | | - { 0x8, "Winbond" }, |
|---|
| 122 | | - { 0x9, "ESMT" }, |
|---|
| 123 | | - { 0x13, "CXMT" }, |
|---|
| 124 | | - { 0x1a, "Xi'an UniIC Semiconductors Co., Ltd" }, |
|---|
| 125 | | - { 0x1c, "JSC" }, |
|---|
| 126 | | - { 0xf8, "Fidelix" }, |
|---|
| 127 | | - { 0xf9, "Ultra Memory" }, |
|---|
| 128 | | - { 0xfd, "AP Memory" }, |
|---|
| 129 | | - { 0xff, "Micron" } |
|---|
| 130 | | -}; |
|---|
| 131 | | - |
|---|
| 132 | 84 | static const char * const power_save_msg[] = { |
|---|
| 133 | 85 | "auto power down enable", |
|---|
| 134 | 86 | "auto power down idle cycle", |
|---|
| .. | .. |
|---|
| 270 | 222 | seq_printf(m, "DramType: %s\n", p_dram_info->dramtype); |
|---|
| 271 | 223 | if (p_dram_info->version >= 0x2) { |
|---|
| 272 | 224 | if ((strcmp(p_dram_info->dramtype, "LPDDR2") == 0) || |
|---|
| 273 | | - (strcmp(p_dram_info->dramtype, "LPDDR3") == 0)) { |
|---|
| 274 | | - for (i = 0; i < ARRAY_SIZE(lp23_manuf_id); i++) { |
|---|
| 275 | | - if (lp23_manuf_id[i].dramid == p_dram_info->dramid[0]) { |
|---|
| 276 | | - seq_printf(m, |
|---|
| 277 | | - "Dram ID: %s(MR5=0x%x,MR6=0x%x,MR7=0x%x)\n", |
|---|
| 278 | | - lp23_manuf_id[i].name, |
|---|
| 279 | | - p_dram_info->dramid[0], |
|---|
| 280 | | - p_dram_info->dramid[1], |
|---|
| 281 | | - p_dram_info->dramid[2]); |
|---|
| 282 | | - break; |
|---|
| 283 | | - } |
|---|
| 284 | | - } |
|---|
| 285 | | - if (i == ARRAY_SIZE(lp23_manuf_id)) |
|---|
| 286 | | - seq_printf(m, |
|---|
| 287 | | - "Dram ID: Unknown(MR5=0x%x,MR6=0x%x,MR7=0x%x)\n", |
|---|
| 288 | | - p_dram_info->dramid[0], |
|---|
| 289 | | - p_dram_info->dramid[1], |
|---|
| 290 | | - p_dram_info->dramid[2]); |
|---|
| 291 | | - } else if ((strcmp(p_dram_info->dramtype, "LPDDR4") == 0) || |
|---|
| 292 | | - (strcmp(p_dram_info->dramtype, "LPDDR4X") == 0)) { |
|---|
| 293 | | - for (i = 0; i < ARRAY_SIZE(lp4_manuf_id); i++) { |
|---|
| 294 | | - if (lp4_manuf_id[i].dramid == p_dram_info->dramid[0]) { |
|---|
| 295 | | - seq_printf(m, |
|---|
| 296 | | - "Dram ID: %s(MR5=0x%x,MR6=0x%x,MR7=0x%x)\n", |
|---|
| 297 | | - lp4_manuf_id[i].name, |
|---|
| 298 | | - p_dram_info->dramid[0], |
|---|
| 299 | | - p_dram_info->dramid[1], |
|---|
| 300 | | - p_dram_info->dramid[2]); |
|---|
| 301 | | - break; |
|---|
| 302 | | - } |
|---|
| 303 | | - } |
|---|
| 304 | | - if (i == ARRAY_SIZE(lp4_manuf_id)) |
|---|
| 305 | | - seq_printf(m, |
|---|
| 306 | | - "Dram ID: Unknown(MR5=0x%x,MR6=0x%x,MR7=0x%x)\n", |
|---|
| 307 | | - p_dram_info->dramid[0], |
|---|
| 308 | | - p_dram_info->dramid[1], |
|---|
| 309 | | - p_dram_info->dramid[2]); |
|---|
| 310 | | - } else { |
|---|
| 225 | + (strcmp(p_dram_info->dramtype, "LPDDR3") == 0) || |
|---|
| 226 | + (strcmp(p_dram_info->dramtype, "LPDDR4") == 0) || |
|---|
| 227 | + (strcmp(p_dram_info->dramtype, "LPDDR4X") == 0)) |
|---|
| 228 | + seq_printf(m, |
|---|
| 229 | + "Dram ID: MR5=0x%x,MR6=0x%x,MR7=0x%x\n", |
|---|
| 230 | + p_dram_info->dramid[0], |
|---|
| 231 | + p_dram_info->dramid[1], |
|---|
| 232 | + p_dram_info->dramid[2]); |
|---|
| 233 | + else |
|---|
| 311 | 234 | seq_printf(m, "Dram ID: None\n"); |
|---|
| 312 | | - } |
|---|
| 313 | 235 | } |
|---|
| 314 | 236 | /* dram capacity information */ |
|---|
| 315 | 237 | seq_printf(m, "\n" |
|---|