x86: apl: Skip init code when chain loading
[oweals/u-boot.git] / arch / x86 / cpu / apollolake / fsp_s.c
index f8fa4dec8f718352954b66efd31944c9338e95b2..7ef169b147f97970518d108a260b9c988c96ca44 100644 (file)
@@ -5,10 +5,11 @@
  */
 
 #include <common.h>
-#include <acpi_s3.h>
 #include <binman.h>
 #include <dm.h>
 #include <irq.h>
+#include <malloc.h>
+#include <acpi/acpi_s3.h>
 #include <asm/intel_pinctrl.h>
 #include <asm/io.h>
 #include <asm/intel_regs.h>
@@ -535,7 +536,7 @@ int arch_fsps_preinit(void)
        struct udevice *itss;
        int ret;
 
-       ret = uclass_first_device_err(UCLASS_IRQ, &itss);
+       ret = irq_first_device_type(X86_IRQT_ITSS, &itss);
        if (ret)
                return log_msg_ret("no itss", ret);
        /*
@@ -565,6 +566,8 @@ int arch_fsp_init_r(void)
        struct udevice *dev, *itss;
        int ret;
 
+       if (!ll_boot_init())
+               return 0;
        /*
         * This must be called before any devices are probed. Put any probing
         * into arch_fsps_preinit() above.
@@ -576,7 +579,7 @@ int arch_fsp_init_r(void)
        if (ret)
                return ret;
 
-       ret = uclass_first_device_err(UCLASS_IRQ, &itss);
+       ret = irq_first_device_type(X86_IRQT_ITSS, &itss);
        if (ret)
                return log_msg_ret("no itss", ret);
        /* Restore GPIO IRQ polarities back to previous settings */