Keith Hui has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/42576 )
Change subject: mb/asus/p2b: only select HAVE_MP_TABLE for D and DS variant ......................................................................
Patch Set 1:
Still a non-issue, because GENERATE_MP_TABLE depends on HAVE_MP_TABLE which this Kconfig fragment only sets for P2B-D[S].
This patch is wrong at the moment and doesn't fix the issue. The real issue is that build system doesn't find the mptable.c since it's not in the mainboard directory, but in the variant directory where the build system doesn't expect it. At the moment the mptable.c files aren't included in the build due to that. This needs to be fixed in order for me to land an updated version of https://review.coreboot.org/c/coreboot/+/42572/ which prevents such things in the future. Probably the way to go is to allow the mainboard to specify the path to the mptable.c file as an overide for the default location, but still fail the build if that also results in no file
When I did the variant conversion, I add mptable.c as a ramstage compile unit via Makefile.inc based on GENERATE_MP_TABLE, following the pattern of other boards. If you just call write_smp_table(), and it isn't defined (in mptable.c or elsewhere) the build will fail. No override needed. Let mainboard be responsible for providing mptable.c. (This does not preclude sharing if appropriate.) I hope this points you in the right direction.
But yes, this patch is still wrong.