int adb_iop_send_request(struct adb_request *req, int sync) { int err; err = adb_iop_write(req); if (err) return err; if (sync) { while (!req->complete) adb_iop_poll(); } return 0; }
int adb_iop_reset_bus(void) { struct adb_request req; req.reply_expected = 0; req.nbytes = 2; req.data[0] = ADB_PACKET; req.data[1] = 0; /* RESET */ adb_iop_write(&req); while (!req.complete) adb_iop_poll(); return 0; }
int adb_iop_reset_bus(void) { struct adb_request req = { .reply_expected = 0, .nbytes = 2, .data = { ADB_PACKET, 0 }, }; adb_iop_write(&req); while (!req.complete) { adb_iop_poll(); schedule(); } return 0; }