Message ID | 20200814035903.3179314-1-maddy@linux.ibm.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | powerpc: Add POWER10 raw mode cputable entry | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/apply_patch | success | Successfully applied on branch powerpc/merge (f04b169e953c4db1a3a3c1d23eea09c726f01ee5) |
snowpatch_ozlabs/build-ppc64le | warning | Upstream build failed, couldn't test patch |
snowpatch_ozlabs/build-ppc64be | warning | Upstream build failed, couldn't test patch |
snowpatch_ozlabs/build-ppc64e | warning | Upstream build failed, couldn't test patch |
snowpatch_ozlabs/build-pmac32 | warning | Upstream build failed, couldn't test patch |
snowpatch_ozlabs/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 25 lines checked |
snowpatch_ozlabs/needsstable | success | Patch has no Fixes tags |
Hi Madhavan, Thank you for the patch! Yet something to improve: [auto build test ERROR on powerpc/next] [also build test ERROR on v5.8 next-20200814] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Madhavan-Srinivasan/powerpc-Add-POWER10-raw-mode-cputable-entry/20200814-120142 base: https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next config: powerpc-defconfig (attached as .config) compiler: powerpc64-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): >> arch/powerpc/kernel/cputable.c:561:26: error: '__machine_check_early_realmode_p10' undeclared here (not in a function); did you mean '__machine_check_early_realmode_p9'? 561 | .machine_check_early = __machine_check_early_realmode_p10, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | __machine_check_early_realmode_p9 vim +561 arch/powerpc/kernel/cputable.c 136 137 static struct cpu_spec __initdata cpu_specs[] = { 138 #ifdef CONFIG_PPC_BOOK3S_64 139 { /* PPC970 */ 140 .pvr_mask = 0xffff0000, 141 .pvr_value = 0x00390000, 142 .cpu_name = "PPC970", 143 .cpu_features = CPU_FTRS_PPC970, 144 .cpu_user_features = COMMON_USER_POWER4 | 145 PPC_FEATURE_HAS_ALTIVEC_COMP, 146 .mmu_features = MMU_FTRS_PPC970, 147 .icache_bsize = 128, 148 .dcache_bsize = 128, 149 .num_pmcs = 8, 150 .pmc_type = PPC_PMC_IBM, 151 .cpu_setup = __setup_cpu_ppc970, 152 .cpu_restore = __restore_cpu_ppc970, 153 .oprofile_cpu_type = "ppc64/970", 154 .oprofile_type = PPC_OPROFILE_POWER4, 155 .platform = "ppc970", 156 }, 157 { /* PPC970FX */ 158 .pvr_mask = 0xffff0000, 159 .pvr_value = 0x003c0000, 160 .cpu_name = "PPC970FX", 161 .cpu_features = CPU_FTRS_PPC970, 162 .cpu_user_features = COMMON_USER_POWER4 | 163 PPC_FEATURE_HAS_ALTIVEC_COMP, 164 .mmu_features = MMU_FTRS_PPC970, 165 .icache_bsize = 128, 166 .dcache_bsize = 128, 167 .num_pmcs = 8, 168 .pmc_type = PPC_PMC_IBM, 169 .cpu_setup = __setup_cpu_ppc970, 170 .cpu_restore = __restore_cpu_ppc970, 171 .oprofile_cpu_type = "ppc64/970", 172 .oprofile_type = PPC_OPROFILE_POWER4, 173 .platform = "ppc970", 174 }, 175 { /* PPC970MP DD1.0 - no DEEPNAP, use regular 970 init */ 176 .pvr_mask = 0xffffffff, 177 .pvr_value = 0x00440100, 178 .cpu_name = "PPC970MP", 179 .cpu_features = CPU_FTRS_PPC970, 180 .cpu_user_features = COMMON_USER_POWER4 | 181 PPC_FEATURE_HAS_ALTIVEC_COMP, 182 .mmu_features = MMU_FTRS_PPC970, 183 .icache_bsize = 128, 184 .dcache_bsize = 128, 185 .num_pmcs = 8, 186 .pmc_type = PPC_PMC_IBM, 187 .cpu_setup = __setup_cpu_ppc970, 188 .cpu_restore = __restore_cpu_ppc970, 189 .oprofile_cpu_type = "ppc64/970MP", 190 .oprofile_type = PPC_OPROFILE_POWER4, 191 .platform = "ppc970", 192 }, 193 { /* PPC970MP */ 194 .pvr_mask = 0xffff0000, 195 .pvr_value = 0x00440000, 196 .cpu_name = "PPC970MP", 197 .cpu_features = CPU_FTRS_PPC970, 198 .cpu_user_features = COMMON_USER_POWER4 | 199 PPC_FEATURE_HAS_ALTIVEC_COMP, 200 .mmu_features = MMU_FTRS_PPC970, 201 .icache_bsize = 128, 202 .dcache_bsize = 128, 203 .num_pmcs = 8, 204 .pmc_type = PPC_PMC_IBM, 205 .cpu_setup = __setup_cpu_ppc970MP, 206 .cpu_restore = __restore_cpu_ppc970, 207 .oprofile_cpu_type = "ppc64/970MP", 208 .oprofile_type = PPC_OPROFILE_POWER4, 209 .platform = "ppc970", 210 }, 211 { /* PPC970GX */ 212 .pvr_mask = 0xffff0000, 213 .pvr_value = 0x00450000, 214 .cpu_name = "PPC970GX", 215 .cpu_features = CPU_FTRS_PPC970, 216 .cpu_user_features = COMMON_USER_POWER4 | 217 PPC_FEATURE_HAS_ALTIVEC_COMP, 218 .mmu_features = MMU_FTRS_PPC970, 219 .icache_bsize = 128, 220 .dcache_bsize = 128, 221 .num_pmcs = 8, 222 .pmc_type = PPC_PMC_IBM, 223 .cpu_setup = __setup_cpu_ppc970, 224 .oprofile_cpu_type = "ppc64/970", 225 .oprofile_type = PPC_OPROFILE_POWER4, 226 .platform = "ppc970", 227 }, 228 { /* Power5 GR */ 229 .pvr_mask = 0xffff0000, 230 .pvr_value = 0x003a0000, 231 .cpu_name = "POWER5 (gr)", 232 .cpu_features = CPU_FTRS_POWER5, 233 .cpu_user_features = COMMON_USER_POWER5, 234 .mmu_features = MMU_FTRS_POWER5, 235 .icache_bsize = 128, 236 .dcache_bsize = 128, 237 .num_pmcs = 6, 238 .pmc_type = PPC_PMC_IBM, 239 .oprofile_cpu_type = "ppc64/power5", 240 .oprofile_type = PPC_OPROFILE_POWER4, 241 /* SIHV / SIPR bits are implemented on POWER4+ (GQ) 242 * and above but only works on POWER5 and above 243 */ 244 .oprofile_mmcra_sihv = MMCRA_SIHV, 245 .oprofile_mmcra_sipr = MMCRA_SIPR, 246 .platform = "power5", 247 }, 248 { /* Power5++ */ 249 .pvr_mask = 0xffffff00, 250 .pvr_value = 0x003b0300, 251 .cpu_name = "POWER5+ (gs)", 252 .cpu_features = CPU_FTRS_POWER5, 253 .cpu_user_features = COMMON_USER_POWER5_PLUS, 254 .mmu_features = MMU_FTRS_POWER5, 255 .icache_bsize = 128, 256 .dcache_bsize = 128, 257 .num_pmcs = 6, 258 .oprofile_cpu_type = "ppc64/power5++", 259 .oprofile_type = PPC_OPROFILE_POWER4, 260 .oprofile_mmcra_sihv = MMCRA_SIHV, 261 .oprofile_mmcra_sipr = MMCRA_SIPR, 262 .platform = "power5+", 263 }, 264 { /* Power5 GS */ 265 .pvr_mask = 0xffff0000, 266 .pvr_value = 0x003b0000, 267 .cpu_name = "POWER5+ (gs)", 268 .cpu_features = CPU_FTRS_POWER5, 269 .cpu_user_features = COMMON_USER_POWER5_PLUS, 270 .mmu_features = MMU_FTRS_POWER5, 271 .icache_bsize = 128, 272 .dcache_bsize = 128, 273 .num_pmcs = 6, 274 .pmc_type = PPC_PMC_IBM, 275 .oprofile_cpu_type = "ppc64/power5+", 276 .oprofile_type = PPC_OPROFILE_POWER4, 277 .oprofile_mmcra_sihv = MMCRA_SIHV, 278 .oprofile_mmcra_sipr = MMCRA_SIPR, 279 .platform = "power5+", 280 }, 281 { /* POWER6 in P5+ mode; 2.04-compliant processor */ 282 .pvr_mask = 0xffffffff, 283 .pvr_value = 0x0f000001, 284 .cpu_name = "POWER5+", 285 .cpu_features = CPU_FTRS_POWER5, 286 .cpu_user_features = COMMON_USER_POWER5_PLUS, 287 .mmu_features = MMU_FTRS_POWER5, 288 .icache_bsize = 128, 289 .dcache_bsize = 128, 290 .oprofile_cpu_type = "ppc64/ibm-compat-v1", 291 .oprofile_type = PPC_OPROFILE_POWER4, 292 .platform = "power5+", 293 }, 294 { /* Power6 */ 295 .pvr_mask = 0xffff0000, 296 .pvr_value = 0x003e0000, 297 .cpu_name = "POWER6 (raw)", 298 .cpu_features = CPU_FTRS_POWER6, 299 .cpu_user_features = COMMON_USER_POWER6 | 300 PPC_FEATURE_POWER6_EXT, 301 .mmu_features = MMU_FTRS_POWER6, 302 .icache_bsize = 128, 303 .dcache_bsize = 128, 304 .num_pmcs = 6, 305 .pmc_type = PPC_PMC_IBM, 306 .oprofile_cpu_type = "ppc64/power6", 307 .oprofile_type = PPC_OPROFILE_POWER4, 308 .oprofile_mmcra_sihv = POWER6_MMCRA_SIHV, 309 .oprofile_mmcra_sipr = POWER6_MMCRA_SIPR, 310 .oprofile_mmcra_clear = POWER6_MMCRA_THRM | 311 POWER6_MMCRA_OTHER, 312 .platform = "power6x", 313 }, 314 { /* 2.05-compliant processor, i.e. Power6 "architected" mode */ 315 .pvr_mask = 0xffffffff, 316 .pvr_value = 0x0f000002, 317 .cpu_name = "POWER6 (architected)", 318 .cpu_features = CPU_FTRS_POWER6, 319 .cpu_user_features = COMMON_USER_POWER6, 320 .mmu_features = MMU_FTRS_POWER6, 321 .icache_bsize = 128, 322 .dcache_bsize = 128, 323 .oprofile_cpu_type = "ppc64/ibm-compat-v1", 324 .oprofile_type = PPC_OPROFILE_POWER4, 325 .platform = "power6", 326 }, 327 { /* 2.06-compliant processor, i.e. Power7 "architected" mode */ 328 .pvr_mask = 0xffffffff, 329 .pvr_value = 0x0f000003, 330 .cpu_name = "POWER7 (architected)", 331 .cpu_features = CPU_FTRS_POWER7, 332 .cpu_user_features = COMMON_USER_POWER7, 333 .cpu_user_features2 = COMMON_USER2_POWER7, 334 .mmu_features = MMU_FTRS_POWER7, 335 .icache_bsize = 128, 336 .dcache_bsize = 128, 337 .oprofile_type = PPC_OPROFILE_POWER4, 338 .oprofile_cpu_type = "ppc64/ibm-compat-v1", 339 .cpu_setup = __setup_cpu_power7, 340 .cpu_restore = __restore_cpu_power7, 341 .machine_check_early = __machine_check_early_realmode_p7, 342 .platform = "power7", 343 }, 344 { /* 2.07-compliant processor, i.e. Power8 "architected" mode */ 345 .pvr_mask = 0xffffffff, 346 .pvr_value = 0x0f000004, 347 .cpu_name = "POWER8 (architected)", 348 .cpu_features = CPU_FTRS_POWER8, 349 .cpu_user_features = COMMON_USER_POWER8, 350 .cpu_user_features2 = COMMON_USER2_POWER8, 351 .mmu_features = MMU_FTRS_POWER8, 352 .icache_bsize = 128, 353 .dcache_bsize = 128, 354 .oprofile_type = PPC_OPROFILE_INVALID, 355 .oprofile_cpu_type = "ppc64/ibm-compat-v1", 356 .cpu_setup = __setup_cpu_power8, 357 .cpu_restore = __restore_cpu_power8, 358 .machine_check_early = __machine_check_early_realmode_p8, 359 .platform = "power8", 360 }, 361 { /* 3.00-compliant processor, i.e. Power9 "architected" mode */ 362 .pvr_mask = 0xffffffff, 363 .pvr_value = 0x0f000005, 364 .cpu_name = "POWER9 (architected)", 365 .cpu_features = CPU_FTRS_POWER9, 366 .cpu_user_features = COMMON_USER_POWER9, 367 .cpu_user_features2 = COMMON_USER2_POWER9, 368 .mmu_features = MMU_FTRS_POWER9, 369 .icache_bsize = 128, 370 .dcache_bsize = 128, 371 .oprofile_type = PPC_OPROFILE_INVALID, 372 .oprofile_cpu_type = "ppc64/ibm-compat-v1", 373 .cpu_setup = __setup_cpu_power9, 374 .cpu_restore = __restore_cpu_power9, 375 .platform = "power9", 376 }, 377 { /* 3.1-compliant processor, i.e. Power10 "architected" mode */ 378 .pvr_mask = 0xffffffff, 379 .pvr_value = 0x0f000006, 380 .cpu_name = "POWER10 (architected)", 381 .cpu_features = CPU_FTRS_POWER10, 382 .cpu_user_features = COMMON_USER_POWER10, 383 .cpu_user_features2 = COMMON_USER2_POWER10, 384 .mmu_features = MMU_FTRS_POWER10, 385 .icache_bsize = 128, 386 .dcache_bsize = 128, 387 .oprofile_type = PPC_OPROFILE_INVALID, 388 .oprofile_cpu_type = "ppc64/ibm-compat-v1", 389 .cpu_setup = __setup_cpu_power10, 390 .cpu_restore = __restore_cpu_power10, 391 .platform = "power10", 392 }, 393 { /* Power7 */ 394 .pvr_mask = 0xffff0000, 395 .pvr_value = 0x003f0000, 396 .cpu_name = "POWER7 (raw)", 397 .cpu_features = CPU_FTRS_POWER7, 398 .cpu_user_features = COMMON_USER_POWER7, 399 .cpu_user_features2 = COMMON_USER2_POWER7, 400 .mmu_features = MMU_FTRS_POWER7, 401 .icache_bsize = 128, 402 .dcache_bsize = 128, 403 .num_pmcs = 6, 404 .pmc_type = PPC_PMC_IBM, 405 .oprofile_cpu_type = "ppc64/power7", 406 .oprofile_type = PPC_OPROFILE_POWER4, 407 .cpu_setup = __setup_cpu_power7, 408 .cpu_restore = __restore_cpu_power7, 409 .machine_check_early = __machine_check_early_realmode_p7, 410 .platform = "power7", 411 }, 412 { /* Power7+ */ 413 .pvr_mask = 0xffff0000, 414 .pvr_value = 0x004A0000, 415 .cpu_name = "POWER7+ (raw)", 416 .cpu_features = CPU_FTRS_POWER7, 417 .cpu_user_features = COMMON_USER_POWER7, 418 .cpu_user_features2 = COMMON_USER2_POWER7, 419 .mmu_features = MMU_FTRS_POWER7, 420 .icache_bsize = 128, 421 .dcache_bsize = 128, 422 .num_pmcs = 6, 423 .pmc_type = PPC_PMC_IBM, 424 .oprofile_cpu_type = "ppc64/power7", 425 .oprofile_type = PPC_OPROFILE_POWER4, 426 .cpu_setup = __setup_cpu_power7, 427 .cpu_restore = __restore_cpu_power7, 428 .machine_check_early = __machine_check_early_realmode_p7, 429 .platform = "power7+", 430 }, 431 { /* Power8E */ 432 .pvr_mask = 0xffff0000, 433 .pvr_value = 0x004b0000, 434 .cpu_name = "POWER8E (raw)", 435 .cpu_features = CPU_FTRS_POWER8E, 436 .cpu_user_features = COMMON_USER_POWER8, 437 .cpu_user_features2 = COMMON_USER2_POWER8, 438 .mmu_features = MMU_FTRS_POWER8, 439 .icache_bsize = 128, 440 .dcache_bsize = 128, 441 .num_pmcs = 6, 442 .pmc_type = PPC_PMC_IBM, 443 .oprofile_cpu_type = "ppc64/power8", 444 .oprofile_type = PPC_OPROFILE_INVALID, 445 .cpu_setup = __setup_cpu_power8, 446 .cpu_restore = __restore_cpu_power8, 447 .machine_check_early = __machine_check_early_realmode_p8, 448 .platform = "power8", 449 }, 450 { /* Power8NVL */ 451 .pvr_mask = 0xffff0000, 452 .pvr_value = 0x004c0000, 453 .cpu_name = "POWER8NVL (raw)", 454 .cpu_features = CPU_FTRS_POWER8, 455 .cpu_user_features = COMMON_USER_POWER8, 456 .cpu_user_features2 = COMMON_USER2_POWER8, 457 .mmu_features = MMU_FTRS_POWER8, 458 .icache_bsize = 128, 459 .dcache_bsize = 128, 460 .num_pmcs = 6, 461 .pmc_type = PPC_PMC_IBM, 462 .oprofile_cpu_type = "ppc64/power8", 463 .oprofile_type = PPC_OPROFILE_INVALID, 464 .cpu_setup = __setup_cpu_power8, 465 .cpu_restore = __restore_cpu_power8, 466 .machine_check_early = __machine_check_early_realmode_p8, 467 .platform = "power8", 468 }, 469 { /* Power8 */ 470 .pvr_mask = 0xffff0000, 471 .pvr_value = 0x004d0000, 472 .cpu_name = "POWER8 (raw)", 473 .cpu_features = CPU_FTRS_POWER8, 474 .cpu_user_features = COMMON_USER_POWER8, 475 .cpu_user_features2 = COMMON_USER2_POWER8, 476 .mmu_features = MMU_FTRS_POWER8, 477 .icache_bsize = 128, 478 .dcache_bsize = 128, 479 .num_pmcs = 6, 480 .pmc_type = PPC_PMC_IBM, 481 .oprofile_cpu_type = "ppc64/power8", 482 .oprofile_type = PPC_OPROFILE_INVALID, 483 .cpu_setup = __setup_cpu_power8, 484 .cpu_restore = __restore_cpu_power8, 485 .machine_check_early = __machine_check_early_realmode_p8, 486 .platform = "power8", 487 }, 488 { /* Power9 DD2.0 */ 489 .pvr_mask = 0xffffefff, 490 .pvr_value = 0x004e0200, 491 .cpu_name = "POWER9 (raw)", 492 .cpu_features = CPU_FTRS_POWER9_DD2_0, 493 .cpu_user_features = COMMON_USER_POWER9, 494 .cpu_user_features2 = COMMON_USER2_POWER9, 495 .mmu_features = MMU_FTRS_POWER9, 496 .icache_bsize = 128, 497 .dcache_bsize = 128, 498 .num_pmcs = 6, 499 .pmc_type = PPC_PMC_IBM, 500 .oprofile_cpu_type = "ppc64/power9", 501 .oprofile_type = PPC_OPROFILE_INVALID, 502 .cpu_setup = __setup_cpu_power9, 503 .cpu_restore = __restore_cpu_power9, 504 .machine_check_early = __machine_check_early_realmode_p9, 505 .platform = "power9", 506 }, 507 { /* Power9 DD 2.1 */ 508 .pvr_mask = 0xffffefff, 509 .pvr_value = 0x004e0201, 510 .cpu_name = "POWER9 (raw)", 511 .cpu_features = CPU_FTRS_POWER9_DD2_1, 512 .cpu_user_features = COMMON_USER_POWER9, 513 .cpu_user_features2 = COMMON_USER2_POWER9, 514 .mmu_features = MMU_FTRS_POWER9, 515 .icache_bsize = 128, 516 .dcache_bsize = 128, 517 .num_pmcs = 6, 518 .pmc_type = PPC_PMC_IBM, 519 .oprofile_cpu_type = "ppc64/power9", 520 .oprofile_type = PPC_OPROFILE_INVALID, 521 .cpu_setup = __setup_cpu_power9, 522 .cpu_restore = __restore_cpu_power9, 523 .machine_check_early = __machine_check_early_realmode_p9, 524 .platform = "power9", 525 }, 526 { /* Power9 DD2.2 or later */ 527 .pvr_mask = 0xffff0000, 528 .pvr_value = 0x004e0000, 529 .cpu_name = "POWER9 (raw)", 530 .cpu_features = CPU_FTRS_POWER9_DD2_2, 531 .cpu_user_features = COMMON_USER_POWER9, 532 .cpu_user_features2 = COMMON_USER2_POWER9, 533 .mmu_features = MMU_FTRS_POWER9, 534 .icache_bsize = 128, 535 .dcache_bsize = 128, 536 .num_pmcs = 6, 537 .pmc_type = PPC_PMC_IBM, 538 .oprofile_cpu_type = "ppc64/power9", 539 .oprofile_type = PPC_OPROFILE_INVALID, 540 .cpu_setup = __setup_cpu_power9, 541 .cpu_restore = __restore_cpu_power9, 542 .machine_check_early = __machine_check_early_realmode_p9, 543 .platform = "power9", 544 }, 545 { /* Power10 */ 546 .pvr_mask = 0xffff0000, 547 .pvr_value = 0x00800000, 548 .cpu_name = "POWER10 (raw)", 549 .cpu_features = CPU_FTRS_POWER10, 550 .cpu_user_features = COMMON_USER_POWER10, 551 .cpu_user_features2 = COMMON_USER2_POWER10, 552 .mmu_features = MMU_FTRS_POWER10, 553 .icache_bsize = 128, 554 .dcache_bsize = 128, 555 .num_pmcs = 6, 556 .pmc_type = PPC_PMC_IBM, 557 .oprofile_cpu_type = "ppc64/power10", 558 .oprofile_type = PPC_OPROFILE_INVALID, 559 .cpu_setup = __setup_cpu_power10, 560 .cpu_restore = __restore_cpu_power10, > 561 .machine_check_early = __machine_check_early_realmode_p10, 562 .platform = "power10", 563 }, 564 { /* Cell Broadband Engine */ 565 .pvr_mask = 0xffff0000, 566 .pvr_value = 0x00700000, 567 .cpu_name = "Cell Broadband Engine", 568 .cpu_features = CPU_FTRS_CELL, 569 .cpu_user_features = COMMON_USER_PPC64 | 570 PPC_FEATURE_CELL | PPC_FEATURE_HAS_ALTIVEC_COMP | 571 PPC_FEATURE_SMT, 572 .mmu_features = MMU_FTRS_CELL, 573 .icache_bsize = 128, 574 .dcache_bsize = 128, 575 .num_pmcs = 4, 576 .pmc_type = PPC_PMC_IBM, 577 .oprofile_cpu_type = "ppc64/cell-be", 578 .oprofile_type = PPC_OPROFILE_CELL, 579 .platform = "ppc-cell-be", 580 }, 581 { /* PA Semi PA6T */ 582 .pvr_mask = 0x7fff0000, 583 .pvr_value = 0x00900000, 584 .cpu_name = "PA6T", 585 .cpu_features = CPU_FTRS_PA6T, 586 .cpu_user_features = COMMON_USER_PA6T, 587 .mmu_features = MMU_FTRS_PA6T, 588 .icache_bsize = 64, 589 .dcache_bsize = 64, 590 .num_pmcs = 6, 591 .pmc_type = PPC_PMC_PA6T, 592 .cpu_setup = __setup_cpu_pa6t, 593 .cpu_restore = __restore_cpu_pa6t, 594 .oprofile_cpu_type = "ppc64/pa6t", 595 .oprofile_type = PPC_OPROFILE_PA6T, 596 .platform = "pa6t", 597 }, 598 { /* default match */ 599 .pvr_mask = 0x00000000, 600 .pvr_value = 0x00000000, 601 .cpu_name = "POWER5 (compatible)", 602 .cpu_features = CPU_FTRS_COMPATIBLE, 603 .cpu_user_features = COMMON_USER_PPC64, 604 .mmu_features = MMU_FTRS_POWER, 605 .icache_bsize = 128, 606 .dcache_bsize = 128, 607 .num_pmcs = 6, 608 .pmc_type = PPC_PMC_IBM, 609 .platform = "power5", 610 } 611 #endif /* CONFIG_PPC_BOOK3S_64 */ 612 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
On 8/14/20 11:57 AM, kernel test robot wrote: > Hi Madhavan, > > Thank you for the patch! Yet something to improve: > > [auto build test ERROR on powerpc/next] > [also build test ERROR on v5.8 next-20200814] > [If your patch is applied to the wrong git tree, kindly drop us a note. > And when submitting patch, we suggest to use '--base' as documented in > https://git-scm.com/docs/git-format-patch] > > url: https://github.com/0day-ci/linux/commits/Madhavan-Srinivasan/powerpc-Add-POWER10-raw-mode-cputable-entry/20200814-120142 > base: https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next > config: powerpc-defconfig (attached as .config) > compiler: powerpc64-linux-gcc (GCC) 9.3.0 > reproduce (this is a W=1 build): > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # save the attached .config to linux build tree > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot <lkp@intel.com> > > All errors (new ones prefixed by >>): > >>> arch/powerpc/kernel/cputable.c:561:26: error: '__machine_check_early_realmode_p10' undeclared here (not in a function); did you mean '__machine_check_early_realmode_p9'? > 561 | .machine_check_early = __machine_check_early_realmode_p10, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | __machine_check_early_realmode_p9 Yes, i did hit this in my compile check and i added the below line, diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c index b4066354f073..b22216db5c71 100644 --- a/arch/powerpc/kernel/cputable.c +++ b/arch/powerpc/kernel/cputable.c @@ -75,6 +75,7 @@ extern void __restore_cpu_power10(void); extern long __machine_check_early_realmode_p7(struct pt_regs *regs); extern long __machine_check_early_realmode_p8(struct pt_regs *regs); extern long __machine_check_early_realmode_p9(struct pt_regs *regs); +extern long __machine_check_early_realmode_p10(struct pt_regs *regs); #endif /* CONFIG_PPC64 */ #if defined(CONFIG_E500) extern void __setup_cpu_e5500(unsigned long offset, struct cpu_spec* spec); but my bad, i sent the one i internally reviewed which did not have it. I will send again. Sorry Maddy > vim +561 arch/powerpc/kernel/cputable.c > > 136 > 137 static struct cpu_spec __initdata cpu_specs[] = { > 138 #ifdef CONFIG_PPC_BOOK3S_64 > 139 { /* PPC970 */ > 140 .pvr_mask = 0xffff0000, > 141 .pvr_value = 0x00390000, > 142 .cpu_name = "PPC970", > 143 .cpu_features = CPU_FTRS_PPC970, > 144 .cpu_user_features = COMMON_USER_POWER4 | > 145 PPC_FEATURE_HAS_ALTIVEC_COMP, > 146 .mmu_features = MMU_FTRS_PPC970, > 147 .icache_bsize = 128, > 148 .dcache_bsize = 128, > 149 .num_pmcs = 8, > 150 .pmc_type = PPC_PMC_IBM, > 151 .cpu_setup = __setup_cpu_ppc970, > 152 .cpu_restore = __restore_cpu_ppc970, > 153 .oprofile_cpu_type = "ppc64/970", > 154 .oprofile_type = PPC_OPROFILE_POWER4, > 155 .platform = "ppc970", > 156 }, > 157 { /* PPC970FX */ > 158 .pvr_mask = 0xffff0000, > 159 .pvr_value = 0x003c0000, > 160 .cpu_name = "PPC970FX", > 161 .cpu_features = CPU_FTRS_PPC970, > 162 .cpu_user_features = COMMON_USER_POWER4 | > 163 PPC_FEATURE_HAS_ALTIVEC_COMP, > 164 .mmu_features = MMU_FTRS_PPC970, > 165 .icache_bsize = 128, > 166 .dcache_bsize = 128, > 167 .num_pmcs = 8, > 168 .pmc_type = PPC_PMC_IBM, > 169 .cpu_setup = __setup_cpu_ppc970, > 170 .cpu_restore = __restore_cpu_ppc970, > 171 .oprofile_cpu_type = "ppc64/970", > 172 .oprofile_type = PPC_OPROFILE_POWER4, > 173 .platform = "ppc970", > 174 }, > 175 { /* PPC970MP DD1.0 - no DEEPNAP, use regular 970 init */ > 176 .pvr_mask = 0xffffffff, > 177 .pvr_value = 0x00440100, > 178 .cpu_name = "PPC970MP", > 179 .cpu_features = CPU_FTRS_PPC970, > 180 .cpu_user_features = COMMON_USER_POWER4 | > 181 PPC_FEATURE_HAS_ALTIVEC_COMP, > 182 .mmu_features = MMU_FTRS_PPC970, > 183 .icache_bsize = 128, > 184 .dcache_bsize = 128, > 185 .num_pmcs = 8, > 186 .pmc_type = PPC_PMC_IBM, > 187 .cpu_setup = __setup_cpu_ppc970, > 188 .cpu_restore = __restore_cpu_ppc970, > 189 .oprofile_cpu_type = "ppc64/970MP", > 190 .oprofile_type = PPC_OPROFILE_POWER4, > 191 .platform = "ppc970", > 192 }, > 193 { /* PPC970MP */ > 194 .pvr_mask = 0xffff0000, > 195 .pvr_value = 0x00440000, > 196 .cpu_name = "PPC970MP", > 197 .cpu_features = CPU_FTRS_PPC970, > 198 .cpu_user_features = COMMON_USER_POWER4 | > 199 PPC_FEATURE_HAS_ALTIVEC_COMP, > 200 .mmu_features = MMU_FTRS_PPC970, > 201 .icache_bsize = 128, > 202 .dcache_bsize = 128, > 203 .num_pmcs = 8, > 204 .pmc_type = PPC_PMC_IBM, > 205 .cpu_setup = __setup_cpu_ppc970MP, > 206 .cpu_restore = __restore_cpu_ppc970, > 207 .oprofile_cpu_type = "ppc64/970MP", > 208 .oprofile_type = PPC_OPROFILE_POWER4, > 209 .platform = "ppc970", > 210 }, > 211 { /* PPC970GX */ > 212 .pvr_mask = 0xffff0000, > 213 .pvr_value = 0x00450000, > 214 .cpu_name = "PPC970GX", > 215 .cpu_features = CPU_FTRS_PPC970, > 216 .cpu_user_features = COMMON_USER_POWER4 | > 217 PPC_FEATURE_HAS_ALTIVEC_COMP, > 218 .mmu_features = MMU_FTRS_PPC970, > 219 .icache_bsize = 128, > 220 .dcache_bsize = 128, > 221 .num_pmcs = 8, > 222 .pmc_type = PPC_PMC_IBM, > 223 .cpu_setup = __setup_cpu_ppc970, > 224 .oprofile_cpu_type = "ppc64/970", > 225 .oprofile_type = PPC_OPROFILE_POWER4, > 226 .platform = "ppc970", > 227 }, > 228 { /* Power5 GR */ > 229 .pvr_mask = 0xffff0000, > 230 .pvr_value = 0x003a0000, > 231 .cpu_name = "POWER5 (gr)", > 232 .cpu_features = CPU_FTRS_POWER5, > 233 .cpu_user_features = COMMON_USER_POWER5, > 234 .mmu_features = MMU_FTRS_POWER5, > 235 .icache_bsize = 128, > 236 .dcache_bsize = 128, > 237 .num_pmcs = 6, > 238 .pmc_type = PPC_PMC_IBM, > 239 .oprofile_cpu_type = "ppc64/power5", > 240 .oprofile_type = PPC_OPROFILE_POWER4, > 241 /* SIHV / SIPR bits are implemented on POWER4+ (GQ) > 242 * and above but only works on POWER5 and above > 243 */ > 244 .oprofile_mmcra_sihv = MMCRA_SIHV, > 245 .oprofile_mmcra_sipr = MMCRA_SIPR, > 246 .platform = "power5", > 247 }, > 248 { /* Power5++ */ > 249 .pvr_mask = 0xffffff00, > 250 .pvr_value = 0x003b0300, > 251 .cpu_name = "POWER5+ (gs)", > 252 .cpu_features = CPU_FTRS_POWER5, > 253 .cpu_user_features = COMMON_USER_POWER5_PLUS, > 254 .mmu_features = MMU_FTRS_POWER5, > 255 .icache_bsize = 128, > 256 .dcache_bsize = 128, > 257 .num_pmcs = 6, > 258 .oprofile_cpu_type = "ppc64/power5++", > 259 .oprofile_type = PPC_OPROFILE_POWER4, > 260 .oprofile_mmcra_sihv = MMCRA_SIHV, > 261 .oprofile_mmcra_sipr = MMCRA_SIPR, > 262 .platform = "power5+", > 263 }, > 264 { /* Power5 GS */ > 265 .pvr_mask = 0xffff0000, > 266 .pvr_value = 0x003b0000, > 267 .cpu_name = "POWER5+ (gs)", > 268 .cpu_features = CPU_FTRS_POWER5, > 269 .cpu_user_features = COMMON_USER_POWER5_PLUS, > 270 .mmu_features = MMU_FTRS_POWER5, > 271 .icache_bsize = 128, > 272 .dcache_bsize = 128, > 273 .num_pmcs = 6, > 274 .pmc_type = PPC_PMC_IBM, > 275 .oprofile_cpu_type = "ppc64/power5+", > 276 .oprofile_type = PPC_OPROFILE_POWER4, > 277 .oprofile_mmcra_sihv = MMCRA_SIHV, > 278 .oprofile_mmcra_sipr = MMCRA_SIPR, > 279 .platform = "power5+", > 280 }, > 281 { /* POWER6 in P5+ mode; 2.04-compliant processor */ > 282 .pvr_mask = 0xffffffff, > 283 .pvr_value = 0x0f000001, > 284 .cpu_name = "POWER5+", > 285 .cpu_features = CPU_FTRS_POWER5, > 286 .cpu_user_features = COMMON_USER_POWER5_PLUS, > 287 .mmu_features = MMU_FTRS_POWER5, > 288 .icache_bsize = 128, > 289 .dcache_bsize = 128, > 290 .oprofile_cpu_type = "ppc64/ibm-compat-v1", > 291 .oprofile_type = PPC_OPROFILE_POWER4, > 292 .platform = "power5+", > 293 }, > 294 { /* Power6 */ > 295 .pvr_mask = 0xffff0000, > 296 .pvr_value = 0x003e0000, > 297 .cpu_name = "POWER6 (raw)", > 298 .cpu_features = CPU_FTRS_POWER6, > 299 .cpu_user_features = COMMON_USER_POWER6 | > 300 PPC_FEATURE_POWER6_EXT, > 301 .mmu_features = MMU_FTRS_POWER6, > 302 .icache_bsize = 128, > 303 .dcache_bsize = 128, > 304 .num_pmcs = 6, > 305 .pmc_type = PPC_PMC_IBM, > 306 .oprofile_cpu_type = "ppc64/power6", > 307 .oprofile_type = PPC_OPROFILE_POWER4, > 308 .oprofile_mmcra_sihv = POWER6_MMCRA_SIHV, > 309 .oprofile_mmcra_sipr = POWER6_MMCRA_SIPR, > 310 .oprofile_mmcra_clear = POWER6_MMCRA_THRM | > 311 POWER6_MMCRA_OTHER, > 312 .platform = "power6x", > 313 }, > 314 { /* 2.05-compliant processor, i.e. Power6 "architected" mode */ > 315 .pvr_mask = 0xffffffff, > 316 .pvr_value = 0x0f000002, > 317 .cpu_name = "POWER6 (architected)", > 318 .cpu_features = CPU_FTRS_POWER6, > 319 .cpu_user_features = COMMON_USER_POWER6, > 320 .mmu_features = MMU_FTRS_POWER6, > 321 .icache_bsize = 128, > 322 .dcache_bsize = 128, > 323 .oprofile_cpu_type = "ppc64/ibm-compat-v1", > 324 .oprofile_type = PPC_OPROFILE_POWER4, > 325 .platform = "power6", > 326 }, > 327 { /* 2.06-compliant processor, i.e. Power7 "architected" mode */ > 328 .pvr_mask = 0xffffffff, > 329 .pvr_value = 0x0f000003, > 330 .cpu_name = "POWER7 (architected)", > 331 .cpu_features = CPU_FTRS_POWER7, > 332 .cpu_user_features = COMMON_USER_POWER7, > 333 .cpu_user_features2 = COMMON_USER2_POWER7, > 334 .mmu_features = MMU_FTRS_POWER7, > 335 .icache_bsize = 128, > 336 .dcache_bsize = 128, > 337 .oprofile_type = PPC_OPROFILE_POWER4, > 338 .oprofile_cpu_type = "ppc64/ibm-compat-v1", > 339 .cpu_setup = __setup_cpu_power7, > 340 .cpu_restore = __restore_cpu_power7, > 341 .machine_check_early = __machine_check_early_realmode_p7, > 342 .platform = "power7", > 343 }, > 344 { /* 2.07-compliant processor, i.e. Power8 "architected" mode */ > 345 .pvr_mask = 0xffffffff, > 346 .pvr_value = 0x0f000004, > 347 .cpu_name = "POWER8 (architected)", > 348 .cpu_features = CPU_FTRS_POWER8, > 349 .cpu_user_features = COMMON_USER_POWER8, > 350 .cpu_user_features2 = COMMON_USER2_POWER8, > 351 .mmu_features = MMU_FTRS_POWER8, > 352 .icache_bsize = 128, > 353 .dcache_bsize = 128, > 354 .oprofile_type = PPC_OPROFILE_INVALID, > 355 .oprofile_cpu_type = "ppc64/ibm-compat-v1", > 356 .cpu_setup = __setup_cpu_power8, > 357 .cpu_restore = __restore_cpu_power8, > 358 .machine_check_early = __machine_check_early_realmode_p8, > 359 .platform = "power8", > 360 }, > 361 { /* 3.00-compliant processor, i.e. Power9 "architected" mode */ > 362 .pvr_mask = 0xffffffff, > 363 .pvr_value = 0x0f000005, > 364 .cpu_name = "POWER9 (architected)", > 365 .cpu_features = CPU_FTRS_POWER9, > 366 .cpu_user_features = COMMON_USER_POWER9, > 367 .cpu_user_features2 = COMMON_USER2_POWER9, > 368 .mmu_features = MMU_FTRS_POWER9, > 369 .icache_bsize = 128, > 370 .dcache_bsize = 128, > 371 .oprofile_type = PPC_OPROFILE_INVALID, > 372 .oprofile_cpu_type = "ppc64/ibm-compat-v1", > 373 .cpu_setup = __setup_cpu_power9, > 374 .cpu_restore = __restore_cpu_power9, > 375 .platform = "power9", > 376 }, > 377 { /* 3.1-compliant processor, i.e. Power10 "architected" mode */ > 378 .pvr_mask = 0xffffffff, > 379 .pvr_value = 0x0f000006, > 380 .cpu_name = "POWER10 (architected)", > 381 .cpu_features = CPU_FTRS_POWER10, > 382 .cpu_user_features = COMMON_USER_POWER10, > 383 .cpu_user_features2 = COMMON_USER2_POWER10, > 384 .mmu_features = MMU_FTRS_POWER10, > 385 .icache_bsize = 128, > 386 .dcache_bsize = 128, > 387 .oprofile_type = PPC_OPROFILE_INVALID, > 388 .oprofile_cpu_type = "ppc64/ibm-compat-v1", > 389 .cpu_setup = __setup_cpu_power10, > 390 .cpu_restore = __restore_cpu_power10, > 391 .platform = "power10", > 392 }, > 393 { /* Power7 */ > 394 .pvr_mask = 0xffff0000, > 395 .pvr_value = 0x003f0000, > 396 .cpu_name = "POWER7 (raw)", > 397 .cpu_features = CPU_FTRS_POWER7, > 398 .cpu_user_features = COMMON_USER_POWER7, > 399 .cpu_user_features2 = COMMON_USER2_POWER7, > 400 .mmu_features = MMU_FTRS_POWER7, > 401 .icache_bsize = 128, > 402 .dcache_bsize = 128, > 403 .num_pmcs = 6, > 404 .pmc_type = PPC_PMC_IBM, > 405 .oprofile_cpu_type = "ppc64/power7", > 406 .oprofile_type = PPC_OPROFILE_POWER4, > 407 .cpu_setup = __setup_cpu_power7, > 408 .cpu_restore = __restore_cpu_power7, > 409 .machine_check_early = __machine_check_early_realmode_p7, > 410 .platform = "power7", > 411 }, > 412 { /* Power7+ */ > 413 .pvr_mask = 0xffff0000, > 414 .pvr_value = 0x004A0000, > 415 .cpu_name = "POWER7+ (raw)", > 416 .cpu_features = CPU_FTRS_POWER7, > 417 .cpu_user_features = COMMON_USER_POWER7, > 418 .cpu_user_features2 = COMMON_USER2_POWER7, > 419 .mmu_features = MMU_FTRS_POWER7, > 420 .icache_bsize = 128, > 421 .dcache_bsize = 128, > 422 .num_pmcs = 6, > 423 .pmc_type = PPC_PMC_IBM, > 424 .oprofile_cpu_type = "ppc64/power7", > 425 .oprofile_type = PPC_OPROFILE_POWER4, > 426 .cpu_setup = __setup_cpu_power7, > 427 .cpu_restore = __restore_cpu_power7, > 428 .machine_check_early = __machine_check_early_realmode_p7, > 429 .platform = "power7+", > 430 }, > 431 { /* Power8E */ > 432 .pvr_mask = 0xffff0000, > 433 .pvr_value = 0x004b0000, > 434 .cpu_name = "POWER8E (raw)", > 435 .cpu_features = CPU_FTRS_POWER8E, > 436 .cpu_user_features = COMMON_USER_POWER8, > 437 .cpu_user_features2 = COMMON_USER2_POWER8, > 438 .mmu_features = MMU_FTRS_POWER8, > 439 .icache_bsize = 128, > 440 .dcache_bsize = 128, > 441 .num_pmcs = 6, > 442 .pmc_type = PPC_PMC_IBM, > 443 .oprofile_cpu_type = "ppc64/power8", > 444 .oprofile_type = PPC_OPROFILE_INVALID, > 445 .cpu_setup = __setup_cpu_power8, > 446 .cpu_restore = __restore_cpu_power8, > 447 .machine_check_early = __machine_check_early_realmode_p8, > 448 .platform = "power8", > 449 }, > 450 { /* Power8NVL */ > 451 .pvr_mask = 0xffff0000, > 452 .pvr_value = 0x004c0000, > 453 .cpu_name = "POWER8NVL (raw)", > 454 .cpu_features = CPU_FTRS_POWER8, > 455 .cpu_user_features = COMMON_USER_POWER8, > 456 .cpu_user_features2 = COMMON_USER2_POWER8, > 457 .mmu_features = MMU_FTRS_POWER8, > 458 .icache_bsize = 128, > 459 .dcache_bsize = 128, > 460 .num_pmcs = 6, > 461 .pmc_type = PPC_PMC_IBM, > 462 .oprofile_cpu_type = "ppc64/power8", > 463 .oprofile_type = PPC_OPROFILE_INVALID, > 464 .cpu_setup = __setup_cpu_power8, > 465 .cpu_restore = __restore_cpu_power8, > 466 .machine_check_early = __machine_check_early_realmode_p8, > 467 .platform = "power8", > 468 }, > 469 { /* Power8 */ > 470 .pvr_mask = 0xffff0000, > 471 .pvr_value = 0x004d0000, > 472 .cpu_name = "POWER8 (raw)", > 473 .cpu_features = CPU_FTRS_POWER8, > 474 .cpu_user_features = COMMON_USER_POWER8, > 475 .cpu_user_features2 = COMMON_USER2_POWER8, > 476 .mmu_features = MMU_FTRS_POWER8, > 477 .icache_bsize = 128, > 478 .dcache_bsize = 128, > 479 .num_pmcs = 6, > 480 .pmc_type = PPC_PMC_IBM, > 481 .oprofile_cpu_type = "ppc64/power8", > 482 .oprofile_type = PPC_OPROFILE_INVALID, > 483 .cpu_setup = __setup_cpu_power8, > 484 .cpu_restore = __restore_cpu_power8, > 485 .machine_check_early = __machine_check_early_realmode_p8, > 486 .platform = "power8", > 487 }, > 488 { /* Power9 DD2.0 */ > 489 .pvr_mask = 0xffffefff, > 490 .pvr_value = 0x004e0200, > 491 .cpu_name = "POWER9 (raw)", > 492 .cpu_features = CPU_FTRS_POWER9_DD2_0, > 493 .cpu_user_features = COMMON_USER_POWER9, > 494 .cpu_user_features2 = COMMON_USER2_POWER9, > 495 .mmu_features = MMU_FTRS_POWER9, > 496 .icache_bsize = 128, > 497 .dcache_bsize = 128, > 498 .num_pmcs = 6, > 499 .pmc_type = PPC_PMC_IBM, > 500 .oprofile_cpu_type = "ppc64/power9", > 501 .oprofile_type = PPC_OPROFILE_INVALID, > 502 .cpu_setup = __setup_cpu_power9, > 503 .cpu_restore = __restore_cpu_power9, > 504 .machine_check_early = __machine_check_early_realmode_p9, > 505 .platform = "power9", > 506 }, > 507 { /* Power9 DD 2.1 */ > 508 .pvr_mask = 0xffffefff, > 509 .pvr_value = 0x004e0201, > 510 .cpu_name = "POWER9 (raw)", > 511 .cpu_features = CPU_FTRS_POWER9_DD2_1, > 512 .cpu_user_features = COMMON_USER_POWER9, > 513 .cpu_user_features2 = COMMON_USER2_POWER9, > 514 .mmu_features = MMU_FTRS_POWER9, > 515 .icache_bsize = 128, > 516 .dcache_bsize = 128, > 517 .num_pmcs = 6, > 518 .pmc_type = PPC_PMC_IBM, > 519 .oprofile_cpu_type = "ppc64/power9", > 520 .oprofile_type = PPC_OPROFILE_INVALID, > 521 .cpu_setup = __setup_cpu_power9, > 522 .cpu_restore = __restore_cpu_power9, > 523 .machine_check_early = __machine_check_early_realmode_p9, > 524 .platform = "power9", > 525 }, > 526 { /* Power9 DD2.2 or later */ > 527 .pvr_mask = 0xffff0000, > 528 .pvr_value = 0x004e0000, > 529 .cpu_name = "POWER9 (raw)", > 530 .cpu_features = CPU_FTRS_POWER9_DD2_2, > 531 .cpu_user_features = COMMON_USER_POWER9, > 532 .cpu_user_features2 = COMMON_USER2_POWER9, > 533 .mmu_features = MMU_FTRS_POWER9, > 534 .icache_bsize = 128, > 535 .dcache_bsize = 128, > 536 .num_pmcs = 6, > 537 .pmc_type = PPC_PMC_IBM, > 538 .oprofile_cpu_type = "ppc64/power9", > 539 .oprofile_type = PPC_OPROFILE_INVALID, > 540 .cpu_setup = __setup_cpu_power9, > 541 .cpu_restore = __restore_cpu_power9, > 542 .machine_check_early = __machine_check_early_realmode_p9, > 543 .platform = "power9", > 544 }, > 545 { /* Power10 */ > 546 .pvr_mask = 0xffff0000, > 547 .pvr_value = 0x00800000, > 548 .cpu_name = "POWER10 (raw)", > 549 .cpu_features = CPU_FTRS_POWER10, > 550 .cpu_user_features = COMMON_USER_POWER10, > 551 .cpu_user_features2 = COMMON_USER2_POWER10, > 552 .mmu_features = MMU_FTRS_POWER10, > 553 .icache_bsize = 128, > 554 .dcache_bsize = 128, > 555 .num_pmcs = 6, > 556 .pmc_type = PPC_PMC_IBM, > 557 .oprofile_cpu_type = "ppc64/power10", > 558 .oprofile_type = PPC_OPROFILE_INVALID, > 559 .cpu_setup = __setup_cpu_power10, > 560 .cpu_restore = __restore_cpu_power10, > > 561 .machine_check_early = __machine_check_early_realmode_p10, > 562 .platform = "power10", > 563 }, > 564 { /* Cell Broadband Engine */ > 565 .pvr_mask = 0xffff0000, > 566 .pvr_value = 0x00700000, > 567 .cpu_name = "Cell Broadband Engine", > 568 .cpu_features = CPU_FTRS_CELL, > 569 .cpu_user_features = COMMON_USER_PPC64 | > 570 PPC_FEATURE_CELL | PPC_FEATURE_HAS_ALTIVEC_COMP | > 571 PPC_FEATURE_SMT, > 572 .mmu_features = MMU_FTRS_CELL, > 573 .icache_bsize = 128, > 574 .dcache_bsize = 128, > 575 .num_pmcs = 4, > 576 .pmc_type = PPC_PMC_IBM, > 577 .oprofile_cpu_type = "ppc64/cell-be", > 578 .oprofile_type = PPC_OPROFILE_CELL, > 579 .platform = "ppc-cell-be", > 580 }, > 581 { /* PA Semi PA6T */ > 582 .pvr_mask = 0x7fff0000, > 583 .pvr_value = 0x00900000, > 584 .cpu_name = "PA6T", > 585 .cpu_features = CPU_FTRS_PA6T, > 586 .cpu_user_features = COMMON_USER_PA6T, > 587 .mmu_features = MMU_FTRS_PA6T, > 588 .icache_bsize = 64, > 589 .dcache_bsize = 64, > 590 .num_pmcs = 6, > 591 .pmc_type = PPC_PMC_PA6T, > 592 .cpu_setup = __setup_cpu_pa6t, > 593 .cpu_restore = __restore_cpu_pa6t, > 594 .oprofile_cpu_type = "ppc64/pa6t", > 595 .oprofile_type = PPC_OPROFILE_PA6T, > 596 .platform = "pa6t", > 597 }, > 598 { /* default match */ > 599 .pvr_mask = 0x00000000, > 600 .pvr_value = 0x00000000, > 601 .cpu_name = "POWER5 (compatible)", > 602 .cpu_features = CPU_FTRS_COMPATIBLE, > 603 .cpu_user_features = COMMON_USER_PPC64, > 604 .mmu_features = MMU_FTRS_POWER, > 605 .icache_bsize = 128, > 606 .dcache_bsize = 128, > 607 .num_pmcs = 6, > 608 .pmc_type = PPC_PMC_IBM, > 609 .platform = "power5", > 610 } > 611 #endif /* CONFIG_PPC_BOOK3S_64 */ > 612 > > --- > 0-DAY CI Kernel Test Service, Intel Corporation > https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c index b4066354f0730..1e052f53e5dca 100644 --- a/arch/powerpc/kernel/cputable.c +++ b/arch/powerpc/kernel/cputable.c @@ -541,6 +541,25 @@ static struct cpu_spec __initdata cpu_specs[] = { .machine_check_early = __machine_check_early_realmode_p9, .platform = "power9", }, + { /* Power10 */ + .pvr_mask = 0xffff0000, + .pvr_value = 0x00800000, + .cpu_name = "POWER10 (raw)", + .cpu_features = CPU_FTRS_POWER10, + .cpu_user_features = COMMON_USER_POWER10, + .cpu_user_features2 = COMMON_USER2_POWER10, + .mmu_features = MMU_FTRS_POWER10, + .icache_bsize = 128, + .dcache_bsize = 128, + .num_pmcs = 6, + .pmc_type = PPC_PMC_IBM, + .oprofile_cpu_type = "ppc64/power10", + .oprofile_type = PPC_OPROFILE_INVALID, + .cpu_setup = __setup_cpu_power10, + .cpu_restore = __restore_cpu_power10, + .machine_check_early = __machine_check_early_realmode_p10, + .platform = "power10", + }, { /* Cell Broadband Engine */ .pvr_mask = 0xffff0000, .pvr_value = 0x00700000,
Add a raw mode cputable entry for POWER10. Copies most of the fields from commit a3ea40d5c736 ("powerpc: Add POWER10 architected mode") except for oprofile_cpu_type, machine_check_early, pvr_mask and pvr_mask filed. On bare metal systems we use DT CPU features, which doesn't need a cputable entry. But in VMs we still rely on the raw cputable entry to set the correct values for the PMU related fields. Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com> --- arch/powerpc/kernel/cputable.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)