diff options
| -rw-r--r-- | ao-tools/ao-view/aoview_monitor.c | 9 | ||||
| -rw-r--r-- | src/ao.h | 1 | ||||
| -rw-r--r-- | src/ao_usb.c | 2 | 
3 files changed, 7 insertions, 5 deletions
diff --git a/ao-tools/ao-view/aoview_monitor.c b/ao-tools/ao-view/aoview_monitor.c index 4d7e7a9f..1f9937b2 100644 --- a/ao-tools/ao-view/aoview_monitor.c +++ b/ao-tools/ao-view/aoview_monitor.c @@ -83,8 +83,11 @@ aoview_monitor_callback(gpointer user_data,  void  aoview_monitor_set_channel(int channel)  { -	if (monitor_serial) +	if (monitor_serial) { +		aoview_serial_printf(monitor_serial, "m 0\n");  		aoview_serial_printf(monitor_serial, "c r %d\n", channel); +		aoview_serial_printf(monitor_serial, "m 1\n"); +	}  }  gboolean @@ -98,9 +101,7 @@ aoview_monitor_connect(char *tty)  	aoview_table_clear();  	aoview_state_reset();  	channel = aoview_channel_current(); -	if (channel >= 0) -		aoview_monitor_set_channel(channel); -	aoview_serial_printf(monitor_serial, "m 1\n"); +	aoview_monitor_set_channel(channel);  	aoview_serial_set_callback(monitor_serial,  				   aoview_monitor_callback);  	return TRUE; @@ -110,6 +110,7 @@ ao_start_scheduler(void);  #define AO_PANIC_STDIO		7	/* Too many stdio handlers registered */  #define AO_PANIC_REBOOT		8	/* Reboot failed */  #define AO_PANIC_FLASH		9	/* Invalid flash part (or wrong blocksize) */ +#define AO_PANIC_USB		10	/* Trying to send USB packet while busy */  /* Stop the operating system, beeping and blinking the reason */  void diff --git a/src/ao_usb.c b/src/ao_usb.c index e4af8e45..d071fe6f 100644 --- a/src/ao_usb.c +++ b/src/ao_usb.c @@ -85,7 +85,7 @@ ao_usb_ep0_flush(void)  	USBINDEX = 0;  	cs0 = USBCS0;  	if (cs0 & USBCS0_INPKT_RDY) -		ao_panic(0); +		ao_panic(AO_PANIC_USB);  	this_len = ao_usb_ep0_in_len;  	if (this_len > AO_USB_CONTROL_SIZE)  | 
