dcd disconnect/connect for transdimension ip
This commit is contained in:
		@@ -322,7 +322,7 @@ void dcd_init(uint8_t rhport)
 | 
			
		||||
{
 | 
			
		||||
  tu_memclr(&_dcd_data, sizeof(dcd_data_t));
 | 
			
		||||
 | 
			
		||||
  dcd_registers_t* const dcd_reg = _dcd_controller[rhport].regs;
 | 
			
		||||
  dcd_registers_t* dcd_reg = _dcd_controller[rhport].regs;
 | 
			
		||||
 | 
			
		||||
  // Reset controller
 | 
			
		||||
  dcd_reg->USBCMD |= USBCMD_RESET;
 | 
			
		||||
@@ -342,7 +342,6 @@ void dcd_init(uint8_t rhport)
 | 
			
		||||
  dcd_reg->USBINTR = INTR_USB | INTR_ERROR | INTR_PORT_CHANGE | INTR_RESET | INTR_SUSPEND /*| INTR_SOF*/;
 | 
			
		||||
 | 
			
		||||
  dcd_reg->USBCMD &= ~0x00FF0000; // Interrupt Threshold Interval = 0
 | 
			
		||||
  dcd_reg->USBCMD |= TU_BIT(0); // connect
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void dcd_int_enable(uint8_t rhport)
 | 
			
		||||
@@ -376,6 +375,18 @@ void dcd_remote_wakeup(uint8_t rhport)
 | 
			
		||||
  (void) rhport;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void dcd_connect(uint8_t rhport)
 | 
			
		||||
{
 | 
			
		||||
  dcd_registers_t* dcd_reg = _dcd_controller[rhport].regs;
 | 
			
		||||
  dcd_reg->USBCMD |= USBCMD_RUN_STOP;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void dcd_disconnect(uint8_t rhport)
 | 
			
		||||
{
 | 
			
		||||
  dcd_registers_t* dcd_reg = _dcd_controller[rhport].regs;
 | 
			
		||||
  dcd_reg->USBCMD &= ~USBCMD_RUN_STOP;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//--------------------------------------------------------------------+
 | 
			
		||||
// HELPER
 | 
			
		||||
//--------------------------------------------------------------------+
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user