* 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 flash_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 coprocessor_post_test(int flags);
+extern int led_post_test(int flags);
+extern int button_post_test(int flags);
+extern int memory_regions_post_test(int flags);
extern int sysmon_init_f (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,
- CFG_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 & CFG_POST_WATCHDOG
+#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
{
- "Watchdog timer test",
- "watchdog",
- "This test checks the watchdog timer.",
- POST_RAM | POST_POWERON | POST_POWERFAIL | POST_MANUAL | POST_REBOOT,
- &watchdog_post_test,
- NULL,
- NULL,
- CFG_POST_WATCHDOG
+ "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_I2C
+#if CONFIG_POST & CONFIG_SYS_POST_RTC
{
- "I2C test",
- "i2c",
- "This test verifies the I2C operation.",
- POST_RAM | POST_ALWAYS,
- &i2c_post_test,
- NULL,
- NULL,
- CFG_POST_I2C
+ "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_RTC
+#if CONFIG_POST & CONFIG_SYS_POST_MEMORY
{
- "RTC test",
- "rtc",
- "This test verifies the RTC operation.",
- POST_RAM | POST_POWERFAIL | POST_MANUAL,
- &rtc_post_test,
- NULL,
- NULL,
- CFG_POST_RTC
+ "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_MEMORY
+#if CONFIG_POST & CONFIG_SYS_POST_CPU
{
- "Memory test",
- "memory",
- "This test checks RAM.",
- POST_ROM | POST_POWERON | POST_POWERFAIL | POST_PREREL,
- &memory_post_test,
- NULL,
- NULL,
- CFG_POST_MEMORY
+ "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_CPU
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
{
- "CPU test",
- "cpu",
- "This test verifies the arithmetic logic unit of"
- " CPU.",
- POST_RAM | POST_ALWAYS,
- &cpu_post_test,
- NULL,
- NULL,
- CFG_POST_CPU
+ "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_UART
+#if CONFIG_POST & CONFIG_SYS_POST_UART
+#if defined(CONFIG_POST_UART)
+ CONFIG_POST_UART,
+#else
{
- "UART test",
- "uart",
- "This test verifies the UART operation.",
- POST_RAM | POST_POWERFAIL | POST_MANUAL,
- &uart_post_test,
- NULL,
- NULL,
- CFG_POST_UART
+ "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 /* CONFIG_POST_UART */
#endif
-#if CONFIG_POST & CFG_POST_ETHER
+#if CONFIG_POST & CONFIG_SYS_POST_ETHER
{
- "ETHERNET test",
- "ethernet",
- "This test verifies the ETHERNET operation.",
- POST_RAM | POST_ALWAYS | POST_MANUAL,
- ðer_post_test,
- NULL,
- NULL,
- CFG_POST_ETHER
+ "ETHERNET test",
+ "ethernet",
+ "This test verifies the ETHERNET operation.",
+ POST_RAM | POST_ALWAYS | POST_MANUAL,
+ ðer_post_test,
+ NULL,
+ NULL,
+ CONFIG_SYS_POST_ETHER
},
#endif
-#if CONFIG_POST & CFG_POST_SPI
+#if CONFIG_POST & CONFIG_SYS_POST_SPI
{
- "SPI test",
- "spi",
- "This test verifies the SPI operation.",
- POST_RAM | POST_ALWAYS | POST_MANUAL,
- &spi_post_test,
- NULL,
- NULL,
- CFG_POST_SPI
+ "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_USB
+#if CONFIG_POST & CONFIG_SYS_POST_USB
{
- "USB test",
- "usb",
- "This test verifies the USB operation.",
- POST_RAM | POST_ALWAYS | POST_MANUAL,
- &usb_post_test,
- NULL,
- NULL,
- CFG_POST_USB
+ "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_SPR
+#if CONFIG_POST & CONFIG_SYS_POST_SPR
{
- "SPR test",
- "spr",
- "This test checks SPR contents.",
- POST_ROM | POST_ALWAYS | POST_PREREL,
- &spr_post_test,
- NULL,
- NULL,
- CFG_POST_SPR
+ "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_SYSMON
+#if CONFIG_POST & CONFIG_SYS_POST_SYSMON
{
- "SYSMON test",
- "sysmon",
- "This test monitors system hardware.",
- POST_RAM | POST_ALWAYS,
- &sysmon_post_test,
- &sysmon_init_f,
- &sysmon_reloc,
- CFG_POST_SYSMON
+ "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
+#if CONFIG_POST & CONFIG_SYS_POST_COPROC
+ {
+ "Coprocessors communication test",
+ "coproc_com",
+ "This test checks communication with coprocessors.",
+ POST_RAM | POST_ALWAYS | POST_CRITICAL,
+ &coprocessor_post_test,
+ NULL,
+ NULL,
+ CONFIG_SYS_POST_COPROC
+ },
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_FLASH
+ {
+ "Parallel NOR flash test",
+ "flash",
+ "This test verifies parallel flash operations.",
+ POST_RAM | POST_SLOWTEST | POST_MANUAL,
+ &flash_post_test,
+ NULL,
+ NULL,
+ CONFIG_SYS_POST_FLASH
+ },
+#endif
+#if CONFIG_POST & CONFIG_SYS_POST_MEM_REGIONS
+ {
+ "Memory regions test",
+ "mem_regions",
+ "This test checks regularly placed regions of the RAM.",
+ POST_ROM | POST_SLOWTEST | POST_PREREL,
+ &memory_regions_post_test,
+ NULL,
+ NULL,
+ CONFIG_SYS_POST_MEM_REGIONS
},
#endif
};
-unsigned int post_list_size = sizeof (post_list) / sizeof (struct post_test);
-
-#endif /* CONFIG_POST */
+unsigned int post_list_size = ARRAY_SIZE(post_list);