00001 #ifndef LIBSDIO_TEST_H
00002 #define LIBSDIO_TEST_H
00003
00004 #ifdef __cplusplus
00005 extern "C" {
00006 #endif
00007
00008 #include <stdlib.h>
00009 #include <stdint.h>
00010
00011 #include <sdioemb/libsdio.h>
00012 #include <sdioemb/sdio.h>
00013 #include <sdioemb/sdio_csr.h>
00014
00015 struct sdioemb_test_card {
00016 uint16_t manf_id;
00017 uint16_t card_id;
00018 const char *name;
00019 void *card_data;
00020 };
00021
00022 typedef void (*sdioemb_test_func_t)(sdio_uif_t uif, void *arg);
00023
00024 int sdioemb_test_run(const char *test, int argc, char *argv[],
00025 sdioemb_test_func_t test_func, void *test_arg,
00026 sdio_int_handler_t int_handler, void *int_arg);
00027
00028 void *sdioemb_test_check_cards(const struct sdioemb_test_card *cards);
00029
00030 void sdioemb_test_info(const char *fmt, ...);
00031 void sdioemb_test_pass(void);
00032 void sdioemb_test_fail(const char *fmt, ...);
00033 void sdioemb_test_abort(const char *fmt, ...);
00034
00035 int sdioemb_test_max_iters(void);
00036
00037 #ifdef __cplusplus
00038 }
00039 #endif
00040
00041 #endif