Update the Silicon Wave init routine
diff --git a/tools/hciattach.c b/tools/hciattach.c
index bcdad95..d0e03cc 100644
--- a/tools/hciattach.c
+++ b/tools/hciattach.c
@@ -648,7 +648,7 @@
  */
 static int swave(int fd, struct uart_t *u, struct termios *ti)
 {
-	struct timespec tm = {0, 500000};
+	struct timespec tm = { 0, 500000 };
 	char cmd[10], rsp[100];
 	int r;
 
@@ -688,7 +688,7 @@
 	}
 
 	/* Send initialization command */
-	if (write(fd, cmd, 9) != 9) {
+	if (write(fd, cmd, 10) != 10) {
 		perror("Failed to write init command");
 		return -1;
 	}
@@ -720,15 +720,16 @@
 		return -1;
 	}
 
-	// we probably got the reply. Now we must send the "soft reset":
+	// we probably got the reply. Now we must send the "soft reset"
+	// which is standard HCI RESET.
+
 	cmd[0] = HCI_COMMAND_PKT;	// it's a command packet
-	cmd[1] = 0x0B;			// OCF 0x0B	= param access set	
-	cmd[2] = 0xfc;			// OGF bx111111 = vendor specific
-	cmd[3] = 0x01;			// 1 byte of data following 
-	cmd[4] = 0x03;			// HCI Reset Subcommand
-			
-	// Send initialization command
-	if (write(fd, cmd, 5) != 5) {
+	cmd[1] = 0x03;
+	cmd[2] = 0x0c;
+	cmd[3] = 0x00;
+
+	/* Send reset command */
+	if (write(fd, cmd, 4) != 4) {
 		perror("Can't write Silicon Wave reset cmd.");
 		return -1;
 	}