[tuxdroid-svn] r367 - daemon/trunk/libs
Status: Beta
Brought to you by:
ks156
From: jaguarondi <c2m...@c2...> - 2007-06-11 16:07:35
|
Author: jaguarondi Date: 2007-06-11 18:07:01 +0200 (Mon, 11 Jun 2007) New Revision: 367 Modified: daemon/trunk/libs/USBDaemon_command_tux.c Log: * Fixed indentation of the blocks within the switch statement * Added the correct body of the wakeup function Modified: daemon/trunk/libs/USBDaemon_command_tux.c =================================================================== --- daemon/trunk/libs/USBDaemon_command_tux.c 2007-06-10 08:55:44 UTC (rev 366) +++ daemon/trunk/libs/USBDaemon_command_tux.c 2007-06-11 16:07:01 UTC (rev 367) @@ -49,7 +49,7 @@ int id_request(uint16_t *id); int id_lookup(uint16_t *id); int change_id(uint16_t id); -int wakeup_tux(void); +int wakeup_tux(const uint16_t id); int avoid_wifi_channel(unsigned char wifi_channel); int random_tux_connection(void); @@ -818,54 +818,53 @@ result[1] = TUX_CONNECTION_NACK; break; case TUX_CONNECTION_CONNECT: - { - union_uint16_t id; - id.b[1] = data[1]; - id.b[0] = data[2]; - printf("coucou\n"); - if (connect_to_tux(id.w) >= 0) - result[1] = TUX_CONNECTION_ACK; - else - result[1] = TUX_CONNECTION_NACK; + { + union_uint16_t id; + id.b[1] = data[1]; + id.b[0] = data[2]; + if (connect_to_tux(id.w) >= 0) + result[1] = TUX_CONNECTION_ACK; + else + result[1] = TUX_CONNECTION_NACK; + } break; - } case TUX_CONNECTION_ID_REQUEST: - { - union_uint16_t id; - if (id_request((uint16_t *)&id) >= 0) { - result[1] = TUX_CONNECTION_ACK; - result[2] = id.b[1]; /* MSB */ - result[3] = id.b[0]; /* LSB */ + union_uint16_t id; + if (id_request((uint16_t *)&id) >= 0) + { + result[1] = TUX_CONNECTION_ACK; + result[2] = id.b[1]; /* MSB */ + result[3] = id.b[0]; /* LSB */ + } + else + result[1] = TUX_CONNECTION_NACK; } - else - result[1] = TUX_CONNECTION_NACK; break; - } case TUX_CONNECTION_ID_LOOKUP: - { - union_uint16_t id; - if (id_lookup((uint16_t *)&id) >= 0) { - result[1] = TUX_CONNECTION_ACK; - result[2] = id.b[1]; /* MSB */ - result[3] = id.b[0]; /* LSB */ + union_uint16_t id; + if (id_lookup((uint16_t *)&id) >= 0) + { + result[1] = TUX_CONNECTION_ACK; + result[2] = id.b[1]; /* MSB */ + result[3] = id.b[0]; /* LSB */ + } + else + result[1] = TUX_CONNECTION_NACK; } - else - result[1] = TUX_CONNECTION_NACK; break; - } case TUX_CONNECTION_CHANGE_ID: - { - union_uint16_t id; - id.b[0] = data[2]; /* LSB */ - id.b[1] = data[1]; /* MSB */ - if (change_id(id.w) >= 0) - result[1] = TUX_CONNECTION_ACK; - else - result[1] = TUX_CONNECTION_NACK; + { + union_uint16_t id; + id.b[0] = data[2]; /* LSB */ + id.b[1] = data[1]; /* MSB */ + if (change_id(id.w) >= 0) + result[1] = TUX_CONNECTION_ACK; + else + result[1] = TUX_CONNECTION_NACK; + } break; - } case TUX_CONNECTION_SLEEP: if (send_usb_tux_cmd(SLEEP_CMD, 0, SLEEP_MODE, 0) == ACK_CMD_OK) result[1] = TUX_CONNECTION_ACK; @@ -873,10 +872,15 @@ result[1] = TUX_CONNECTION_NACK; break; case TUX_CONNECTION_WAKEUP: - if (wakeup_tux() >= 0) - result[1] = TUX_CONNECTION_ACK; - else - result[1] = TUX_CONNECTION_NACK; + { + union_uint16_t id; + id.b[0] = data[2]; /* LSB */ + id.b[1] = data[1]; /* MSB */ + if (wakeup_tux(id.w) >= 0) + result[1] = TUX_CONNECTION_ACK; + else + result[1] = TUX_CONNECTION_NACK; + } break; case TUX_CONNECTION_RANDOM: if (random_tux_connection() >= 0) @@ -1103,7 +1107,7 @@ * \return 0 if successful, -1 otherwise */ #define CHANGE_ID_TIMEOUT 70 -int change_id(uint16_t id) +int change_id(const uint16_t id) { int timeout_cnt = 0; @@ -1149,10 +1153,14 @@ * * \return 0 if successful, -1 otherwise */ -int wakeup_tux(void) +int wakeup_tux(const uint16_t id) { - if (send_usb_dongle_cmd(USB_TUX_CONNECTION_CMD, - USB_TUX_CONNECTION_ID_LOOKUP, 0, 0) == USB_FRAME_SIZE) + /* Send the wakeup command then a connection with the given id */ + if (send_usb_dongle_cmd(USB_TUX_CONNECTION_CMD, USB_TUX_CONNECTION_WAKEUP, + 0, 0) != USB_FRAME_SIZE) + return -1; + if (send_usb_dongle_cmd(USB_TUX_CONNECTION_CMD, USB_TUX_CONNECTION_CONNECT, + (uint8_t)(id>>8), (uint8_t)id) == USB_FRAME_SIZE) return 0; else return -1; |