Slight changes to TeensyHID bootloader to ensure it builds under the 2KB boundary.
Changed USB_Init() and USB_Shutdown() so that they are no longer dependant on oneanother for possible code savings when the interface is never explicitly shut down.
This commit is contained in:
		
							parent
							
								
									e071f3897a
								
							
						
					
					
						commit
						7a5d045987
					
				
					 4 changed files with 12 additions and 39 deletions
				
			
		| 
						 | 
				
			
			@ -54,8 +54,6 @@ void USB_Init(
 | 
			
		|||
               #endif
 | 
			
		||||
               )
 | 
			
		||||
{
 | 
			
		||||
	USB_ShutDown();
 | 
			
		||||
 | 
			
		||||
	#if defined(USB_CAN_BE_BOTH)
 | 
			
		||||
	USB_CurrentMode = Mode;
 | 
			
		||||
	#endif
 | 
			
		||||
| 
						 | 
				
			
			@ -120,29 +118,9 @@ void USB_ShutDown(void)
 | 
			
		|||
	  EVENT_USB_Disconnect();
 | 
			
		||||
	#endif
 | 
			
		||||
 | 
			
		||||
	USB_ResetInterface();
 | 
			
		||||
	USB_Detach();
 | 
			
		||||
 | 
			
		||||
	USB_INT_DisableAllInterrupts();
 | 
			
		||||
	USB_INT_ClearAllInterrupts();
 | 
			
		||||
 | 
			
		||||
	USB_IsInitialized = false;
 | 
			
		||||
 | 
			
		||||
	#if defined(USB_CAN_BE_HOST)
 | 
			
		||||
	USB_HostState = HOST_STATE_Unattached;
 | 
			
		||||
	#endif
 | 
			
		||||
 | 
			
		||||
	#if defined(USB_CAN_BE_DEVICE)
 | 
			
		||||
	USB_DeviceState = DEVICE_STATE_Unattached;
 | 
			
		||||
	USB_ConfigurationNumber  = 0;
 | 
			
		||||
	USB_RemoteWakeupEnabled  = false;
 | 
			
		||||
	USB_CurrentlySelfPowered = false;
 | 
			
		||||
	#endif
 | 
			
		||||
 | 
			
		||||
	#if defined(CAN_BE_BOTH)
 | 
			
		||||
	USB_CurrentMode = USB_MODE_NONE;
 | 
			
		||||
	#endif
 | 
			
		||||
 | 
			
		||||
	USB_Interface_Disable();
 | 
			
		||||
	USB_Controller_Disable();
 | 
			
		||||
	USB_PLL_Off();
 | 
			
		||||
	
 | 
			
		||||
	#if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)
 | 
			
		||||
| 
						 | 
				
			
			@ -152,6 +130,12 @@ void USB_ShutDown(void)
 | 
			
		|||
	#if defined(USB_CAN_BE_BOTH)
 | 
			
		||||
	UHWCON &= ~(1 << UIDE);
 | 
			
		||||
	#endif
 | 
			
		||||
 | 
			
		||||
	USB_IsInitialized = false;
 | 
			
		||||
 | 
			
		||||
	#if defined(CAN_BE_BOTH)
 | 
			
		||||
	USB_CurrentMode = USB_MODE_NONE;
 | 
			
		||||
	#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void USB_ResetInterface(void)
 | 
			
		||||
| 
						 | 
				
			
			@ -180,7 +164,7 @@ void USB_ResetInterface(void)
 | 
			
		|||
		while (!(USB_PLL_IsReady()));
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	USB_Interface_Reset();
 | 
			
		||||
	USB_Controller_Reset();
 | 
			
		||||
	
 | 
			
		||||
	#if defined(USB_CAN_BE_BOTH)
 | 
			
		||||
	if (UHWCON & (1 << UIDE))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -334,9 +334,9 @@
 | 
			
		|||
			#define USB_CLK_Freeze()           MACROS{ USBCON  |=  (1 << FRZCLK);               }MACROE
 | 
			
		||||
			#define USB_CLK_Unfreeze()         MACROS{ USBCON  &= ~(1 << FRZCLK);               }MACROE
 | 
			
		||||
 | 
			
		||||
			#define USB_Interface_Enable()     MACROS{ USBCON  |=  (1 << USBE);                 }MACROE
 | 
			
		||||
			#define USB_Interface_Disable()    MACROS{ USBCON  &= ~(1 << USBE);                 }MACROE
 | 
			
		||||
			#define USB_Interface_Reset()      MACROS{ uint8_t Temp = USBCON; USBCON = (Temp & ~(1 << USBE)); \
 | 
			
		||||
			#define USB_Controller_Enable()    MACROS{ USBCON  |=  (1 << USBE);                 }MACROE
 | 
			
		||||
			#define USB_Controller_Disable()   MACROS{ USBCON  &= ~(1 << USBE);                 }MACROE
 | 
			
		||||
			#define USB_Controller_Reset()     MACROS{ uint8_t Temp = USBCON; USBCON = (Temp & ~(1 << USBE)); \
 | 
			
		||||
			                                           USBCON = (Temp | (1 << USBE));           }MACROE
 | 
			
		||||
	
 | 
			
		||||
		/* Inline Functions: */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue