ata

int ftm_register(struct ftm_module *mod, ftm_entry_fn entry, void *priv)
{
if (mod == NULL || entry == NULL)
return -EINVAL;
if (mod->id < 0 || mod->id > ITEM_MAX_IDS - 1)
return -EINVAL;

mod->test_result = FTM_TEST_UNKNOWN;
mod->visible = true;
mod->entry = entry;
mod->priv = priv;
ftm_mods[mod->id] = mod;

return 0;
}

typedef int (*ftm_entry_fn)(struct ftm_param *param, void *priv);

struct ftm_module {
int id;
bool visible;
void *priv;
ftm_entry_fn entry;
int test_result;
};

struct ftm_param {
const char *name;
int test_type;
};

原文地址:https://www.cnblogs.com/chjgongzuo/p/10488301.html