void emulator_destroy(emulator_t* emu) { fb_destroy(&emu->fb); pr_destroy(&emu->pr); mbox_destroy(&emu->mbox); gpio_destroy(&emu->gpio); cpu_destroy(&emu->cpu); vfp_destroy(&emu->vfp); memory_destroy(&emu->memory); }
int main( int argc, const char *argv[] ) { gpio_config_t led_config; gpio_config_t btn_config; gpio_config_t dip_config; gpio_t leds; gpio_t btns; gpio_t dips; led_config.base = GPIOLED_BASEADDR; led_config.dual = 0; led_config.intr = 1; led_config.bits = 4; btn_config.base = GPIOBTN_BASEADDR; btn_config.dual = 0; btn_config.intr = 1; btn_config.bits = 5; dip_config.base = GPIODIP_BASEADDR; dip_config.dual = 0; dip_config.intr = 1; dip_config.bits = 4; gpio_create( &leds, &led_config ); gpio_create( &btns, &btn_config ); gpio_create( &dips, &dip_config ); gpio_test( &leds, &btns, &dips ); gpio_destroy( &leds ); gpio_destroy( &btns ); gpio_destroy( &dips ); return 0; }