APMXGenePkg/AcpiPlatformDxe: depend on ArmMpCoreInfo conftab explicitly

The MADT (APIC) ACPI table that XGeneInstallApicTable() installs depends
on the UEFI system config table with GUID gArmMpCoreInfoGuid. For that
reason it makes sense to delay the MADT installation until the CpuDxe
driver installs the config table with the necessary MP core info.

However, installing an ACPI table using EFI_ACPI_TABLE_PROTOCOL in an
EVT_SIGNAL_EXIT_BOOT_SERVICES event handler is a grave error:

ExitBootServices()
  ...
    OnAcpiExitBootServices()
      XGeneInstallApicTable()
        AllocateZeroPool()
        AcpiTableProtocol->InstallAcpiTable()
          gBS->AllocatePages()

Handlers of the EVT_SIGNAL_EXIT_BOOT_SERVICES type are expressly forbidden
from (directly or indirectly) calling memory allocation services. See the
documentation under CreateEvent() in the UEFI spec.

Failure to comply with this restriction may cause unpredictable results;
for example the UEFI memory map reporting the space occupied by the MADT
as Conventional Memory (which the OS is then free to use).

Instead, we can register a callback for when the configuration table
becomes available, and install our ACPI table then.

Signed-off-by: Laszlo Ersek <lersek@redhat.com>