mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-10-31 21:32:31 +01:00 
			
		
		
		
	Fixed internal device serial not being accessible on the ATMEGAXXU2 AVRs (thanks to Axel Rohde).
This commit is contained in:
		
							parent
							
								
									328ed71ce7
								
							
						
					
					
						commit
						e95c96ea20
					
				| @ -80,7 +80,10 @@ | |||||||
| 			 */ | 			 */ | ||||||
| 			#define NO_DESCRIPTOR                     0 | 			#define NO_DESCRIPTOR                     0 | ||||||
| 
 | 
 | ||||||
| 			#if (!defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR))) || defined(__DOXYGEN__) | 			#if (!defined(NO_INTERNAL_SERIAL) && \ | ||||||
|  | 			     (defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1287__) || \ | ||||||
|  | 			      defined(__AVR_ATmega32U6__) || defined(__AVR_AT90USB646__)  || defined(__AVR_AT90USB1286__) ||  \ | ||||||
|  | 			      defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U2__)  || defined(__AVR_ATmega8U2__))) | ||||||
| 				/** String descriptor index for the device's unique serial number string descriptor within the device.
 | 				/** String descriptor index for the device's unique serial number string descriptor within the device.
 | ||||||
| 				 *  This unique serial number is used by the host to associate resources to the device (such as drivers or COM port | 				 *  This unique serial number is used by the host to associate resources to the device (such as drivers or COM port | ||||||
| 				 *  number allocations) to a device regardless of the port it is plugged in to on the host. Some USB AVRs contain | 				 *  number allocations) to a device regardless of the port it is plugged in to on the host. Some USB AVRs contain | ||||||
|  | |||||||
| @ -208,7 +208,7 @@ void USB_Device_GetConfiguration(void) | |||||||
| 	Endpoint_ClearStatusStage(); | 	Endpoint_ClearStatusStage(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| #if !defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)) | #if !defined(NO_INTERNAL_SERIAL) && (USE_INTERNAL_SERIAL != NO_DESCRIPTOR) | ||||||
| static char USB_Device_NibbleToASCII(uint8_t Nibble) | static char USB_Device_NibbleToASCII(uint8_t Nibble) | ||||||
| { | { | ||||||
| 	Nibble = ((Nibble & 0x0F) + '0'); | 	Nibble = ((Nibble & 0x0F) + '0'); | ||||||
| @ -261,7 +261,7 @@ static void USB_Device_GetDescriptor(void) | |||||||
| 	uint8_t  DescriptorAddressSpace; | 	uint8_t  DescriptorAddressSpace; | ||||||
| 	#endif | 	#endif | ||||||
| 	 | 	 | ||||||
| 	#if !defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)) | 	#if !defined(NO_INTERNAL_SERIAL) && (USE_INTERNAL_SERIAL != NO_DESCRIPTOR) | ||||||
| 	if (USB_ControlRequest.wValue == ((DTYPE_String << 8) | USE_INTERNAL_SERIAL)) | 	if (USB_ControlRequest.wValue == ((DTYPE_String << 8) | USE_INTERNAL_SERIAL)) | ||||||
| 	{ | 	{ | ||||||
| 		USB_Device_GetInternalSerialDescriptor(); | 		USB_Device_GetInternalSerialDescriptor(); | ||||||
|  | |||||||
| @ -149,7 +149,7 @@ | |||||||
| 				static void USB_Device_GetStatus(void); | 				static void USB_Device_GetStatus(void); | ||||||
| 				static void USB_Device_ClearSetFeature(void); | 				static void USB_Device_ClearSetFeature(void); | ||||||
| 				 | 				 | ||||||
| 				#if !defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)) | 				#if !defined(NO_INTERNAL_SERIAL) && (USE_INTERNAL_SERIAL != NO_DESCRIPTOR) | ||||||
| 					static char USB_Device_NibbleToASCII(uint8_t Nibble) ATTR_ALWAYS_INLINE; | 					static char USB_Device_NibbleToASCII(uint8_t Nibble) ATTR_ALWAYS_INLINE; | ||||||
| 					static void USB_Device_GetInternalSerialDescriptor(void); | 					static void USB_Device_GetInternalSerialDescriptor(void); | ||||||
| 				#endif				 | 				#endif				 | ||||||
|  | |||||||
| @ -30,6 +30,7 @@ | |||||||
|   *    an overflow in the checksum calculation loop (thanks to Kevin Malec) |   *    an overflow in the checksum calculation loop (thanks to Kevin Malec) | ||||||
|   *  - Fixed XPLAINBridge project not correctly reading the XMEGA's supply voltage when reporting back to the host |   *  - Fixed XPLAINBridge project not correctly reading the XMEGA's supply voltage when reporting back to the host | ||||||
|   *  - Fixed incorrect signature for the ATMEGA32U2 in the DFU bootloader (thanks to Axel Rohde) |   *  - Fixed incorrect signature for the ATMEGA32U2 in the DFU bootloader (thanks to Axel Rohde) | ||||||
|  |   *  - Fixed internal device serial not being accessible on the ATMEGAXXU2 AVRs (thanks to Axel Rohde) | ||||||
|   * |   * | ||||||
|   *  \section Sec_ChangeLog100513 Version 100513 |   *  \section Sec_ChangeLog100513 Version 100513 | ||||||
|   *  <b>New:</b> |   *  <b>New:</b> | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Dean Camera
						Dean Camera