Merge branch 'mimc200' into next
[oweals/u-boot.git] / post / tests.c
index 4ec307b33979c31025b7e8e3857bc549af569e37..3224f009a67d883fe4632114d318ea74b6e72877 100644 (file)
  * MA 02111-1307 USA
  *
  * Be sure to mark tests to be run before relocation as such with the
- * CFG_POST_PREREL flag so that logging is done correctly if the
+ * CONFIG_SYS_POST_PREREL flag so that logging is done correctly if the
  * logbuffer support is enabled.
  */
 
 #include <common.h>
 
-#ifdef CONFIG_POST
-
 #include <post.h>
 
+extern int ocm_post_test (int flags);
 extern int cache_post_test (int flags);
 extern int watchdog_post_test (int flags);
 extern int i2c_post_test (int flags);
 extern int rtc_post_test (int flags);
 extern int memory_post_test (int flags);
 extern int cpu_post_test (int flags);
+extern int fpu_post_test (int flags);
 extern int uart_post_test (int flags);
 extern int ether_post_test (int flags);
 extern int spi_post_test (int flags);
 extern int usb_post_test (int flags);
 extern int spr_post_test (int flags);
+extern int sysmon_post_test (int flags);
+extern int dsp_post_test (int flags);
+extern int codec_post_test (int flags);
+extern int ecc_post_test (int flags);
+
+extern int dspic_init_post_test (int flags);
+extern int dspic_post_test (int flags);
+extern int gdc_post_test (int flags);
+extern int fpga_post_test (int flags);
+extern int lwmon5_watchdog_post_test(int flags);
+extern int sysmon1_post_test(int flags);
+
+extern int sysmon_init_f (void);
+
+extern void sysmon_reloc (void);
+
 
 struct post_test post_list[] =
 {
-#if CONFIG_POST & CFG_POST_CACHE
+#if CONFIG_POST & CONFIG_SYS_POST_OCM
+    {
+       "OCM test",
+       "ocm",
+       "This test checks on chip memory (OCM).",
+       POST_ROM | POST_ALWAYS | POST_PREREL | POST_CRITICAL | POST_STOP,
+       &ocm_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_OCM
+    },
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_CACHE
+    {
+       "Cache test",
+       "cache",
+       "This test verifies the CPU cache operation.",
+       POST_RAM | POST_ALWAYS,
+       &cache_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_CACHE
+    },
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_WATCHDOG
+#if defined(CONFIG_POST_WATCHDOG)
+       CONFIG_POST_WATCHDOG,
+#else
+    {
+       "Watchdog timer test",
+       "watchdog",
+       "This test checks the watchdog timer.",
+       POST_RAM | POST_POWERON | POST_SLOWTEST | POST_MANUAL | POST_REBOOT,
+       &watchdog_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_WATCHDOG
+    },
+#endif
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_I2C
     {
-        "Cache test",
-        "cache",
-        "This test verifies the CPU cache operation.",
-        POST_RAM | POST_ALWAYS,
-        &cache_post_test,
-       CFG_POST_CACHE
+       "I2C test",
+       "i2c",
+       "This test verifies the I2C operation.",
+       POST_RAM | POST_ALWAYS,
+       &i2c_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_I2C
     },
 #endif
-#if CONFIG_POST & CFG_POST_WATCHDOG
+#if CONFIG_POST & CONFIG_SYS_POST_RTC
     {
-        "Watchdog timer test",
-        "watchdog",
-        "This test checks the watchdog timer.",
-        POST_RAM | POST_POWERON | POST_POWERFAIL | POST_MANUAL | POST_REBOOT,
-        &watchdog_post_test,
-       CFG_POST_WATCHDOG
+       "RTC test",
+       "rtc",
+       "This test verifies the RTC operation.",
+       POST_RAM | POST_SLOWTEST | POST_MANUAL,
+       &rtc_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_RTC
     },
 #endif
-#if CONFIG_POST & CFG_POST_I2C
+#if CONFIG_POST & CONFIG_SYS_POST_MEMORY
     {
-        "I2C test",
-        "i2c",
-        "This test verifies the I2C operation.",
-        POST_RAM | POST_ALWAYS,
-        &i2c_post_test,
-       CFG_POST_I2C
+       "Memory test",
+       "memory",
+       "This test checks RAM.",
+       POST_ROM | POST_POWERON | POST_SLOWTEST | POST_PREREL,
+       &memory_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_MEMORY
     },
 #endif
-#if CONFIG_POST & CFG_POST_RTC
+#if CONFIG_POST & CONFIG_SYS_POST_CPU
     {
-        "RTC test",
-        "rtc",
-        "This test verifies the RTC operation.",
-        POST_RAM | POST_POWERFAIL | POST_MANUAL,
-        &rtc_post_test,
-       CFG_POST_RTC
+       "CPU test",
+       "cpu",
+       "This test verifies the arithmetic logic unit of"
+       " CPU.",
+       POST_RAM | POST_ALWAYS,
+       &cpu_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_CPU
     },
 #endif
-#if CONFIG_POST & CFG_POST_MEMORY
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
     {
-        "Memory test",
-        "memory",
-        "This test checks RAM.",
-        POST_ROM | POST_POWERON | POST_POWERFAIL | POST_PREREL,
-        &memory_post_test,
-       CFG_POST_MEMORY
+       "FPU test",
+       "fpu",
+       "This test verifies the arithmetic logic unit of"
+       " FPU.",
+       POST_RAM | POST_ALWAYS,
+       &fpu_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_FPU
     },
 #endif
-#if CONFIG_POST & CFG_POST_CPU
+#if CONFIG_POST & CONFIG_SYS_POST_UART
     {
-        "CPU test",
-        "cpu",
-        "This test verifies the arithmetic logic unit of"
-        " CPU.",
-        POST_RAM | POST_ALWAYS,
-        &cpu_post_test,
-       CFG_POST_CPU
+       "UART test",
+       "uart",
+       "This test verifies the UART operation.",
+       POST_RAM | POST_SLOWTEST | POST_MANUAL,
+       &uart_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_UART
     },
 #endif
-#if CONFIG_POST & CFG_POST_UART
+#if CONFIG_POST & CONFIG_SYS_POST_ETHER
     {
-        "UART test",
-        "uart",
-        "This test verifies the UART operation.",
-        POST_RAM | POST_POWERFAIL | POST_MANUAL,
-        &uart_post_test,
-       CFG_POST_UART
+       "ETHERNET test",
+       "ethernet",
+       "This test verifies the ETHERNET operation.",
+       POST_RAM | POST_ALWAYS | POST_MANUAL,
+       &ether_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_ETHER
     },
 #endif
-#if CONFIG_POST & CFG_POST_ETHER
+#if CONFIG_POST & CONFIG_SYS_POST_SPI
     {
-        "ETHERNET test",
-        "ethernet",
-        "This test verifies the ETHERNET operation.",
-        POST_RAM | POST_ALWAYS | POST_MANUAL,
-        &ether_post_test,
-       CFG_POST_ETHER
+       "SPI test",
+       "spi",
+       "This test verifies the SPI operation.",
+       POST_RAM | POST_ALWAYS | POST_MANUAL,
+       &spi_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_SPI
     },
 #endif
-#if CONFIG_POST & CFG_POST_SPI
+#if CONFIG_POST & CONFIG_SYS_POST_USB
     {
-        "SPI test",
-        "spi",
-        "This test verifies the SPI operation.",
-        POST_RAM | POST_ALWAYS | POST_MANUAL,
-        &spi_post_test,
-       CFG_POST_SPI
+       "USB test",
+       "usb",
+       "This test verifies the USB operation.",
+       POST_RAM | POST_ALWAYS | POST_MANUAL,
+       &usb_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_USB
     },
 #endif
-#if CONFIG_POST & CFG_POST_USB
+#if CONFIG_POST & CONFIG_SYS_POST_SPR
     {
-        "USB test",
-        "usb",
-        "This test verifies the USB operation.",
-        POST_RAM | POST_ALWAYS | POST_MANUAL,
-        &usb_post_test,
-       CFG_POST_USB
+       "SPR test",
+       "spr",
+       "This test checks SPR contents.",
+       POST_RAM | POST_ALWAYS,
+       &spr_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_SPR
     },
 #endif
-#if CONFIG_POST & CFG_POST_SPR
+#if CONFIG_POST & CONFIG_SYS_POST_SYSMON
     {
-        "SPR test",
-        "spr",
-        "This test checks SPR contents.",
-        POST_ROM | POST_ALWAYS | POST_PREREL,
-        &spr_post_test,
-       CFG_POST_SPR
+       "SYSMON test",
+       "sysmon",
+       "This test monitors system hardware.",
+       POST_RAM | POST_ALWAYS,
+       &sysmon_post_test,
+       &sysmon_init_f,
+       &sysmon_reloc,
+       CONFIG_SYS_POST_SYSMON
     },
 #endif
+#if CONFIG_POST & CONFIG_SYS_POST_DSP
+    {
+       "DSP test",
+       "dsp",
+       "This test checks any connected DSP(s).",
+       POST_RAM | POST_ALWAYS | POST_MANUAL,
+       &dsp_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_DSP
+    },
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_CODEC
+    {
+       "CODEC test",
+       "codec",
+       "This test checks any connected codec(s).",
+       POST_RAM | POST_MANUAL,
+       &codec_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_CODEC
+    },
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_ECC
+    {
+       "ECC test",
+       "ecc",
+       "This test checks the ECC facility of memory.",
+       POST_ROM | POST_ALWAYS | POST_PREREL,
+       &ecc_post_test,
+       NULL,
+       NULL,
+       CONFIG_SYS_POST_ECC
+    },
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_BSPEC1
+       CONFIG_POST_BSPEC1,
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_BSPEC2
+       CONFIG_POST_BSPEC2,
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_BSPEC3
+       CONFIG_POST_BSPEC3,
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_BSPEC4
+       CONFIG_POST_BSPEC4,
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_BSPEC5
+       CONFIG_POST_BSPEC5,
+#endif
 };
 
 unsigned int post_list_size = sizeof (post_list) / sizeof (struct post_test);
-
-#endif /* CONFIG_POST */