static int h4_close(){ // first remove run loop handler run_loop_remove_data_source(hci_transport_h4->ds); // close device close(hci_transport_h4->ds->fd); // let module sleep h4_enforce_wake_off(); // free struct free(hci_transport_h4->ds); hci_transport_h4->ds = NULL; return 0; }
static void h4_enforce_wake_timeout(struct timer *ts) { h4_enforce_wake_off(); }