USB: usbtmc: Set rigol_quirk if device is listed
These patches implement a modification of the USBTMC protocol to allow operation with Rigol equipment. It an idVendor and idProduct is found on the usbtmc_id_quirk array, the rigol_quirk is set for this device. Signed-off-by: Alexandre Peixoto Ferreira <alexandref75@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
		
					parent
					
						
							
								88d9b2b38c
							
						
					
				
			
			
				commit
				
					
						c2e314835a
					
				
			
		
					 1 changed files with 14 additions and 0 deletions
				
			
		|  | @ -1040,6 +1040,20 @@ static int usbtmc_probe(struct usb_interface *intf, | ||||||
| 	mutex_init(&data->io_mutex); | 	mutex_init(&data->io_mutex); | ||||||
| 	data->zombie = 0; | 	data->zombie = 0; | ||||||
| 
 | 
 | ||||||
|  | 	/* Determine if it is a Rigol or not */ | ||||||
|  | 	data->rigol_quirk = 0; | ||||||
|  | 	dev_dbg(&intf->dev, "Trying to find if device Vendor 0x%04X Product 0x%04X has the RIGOL quirk\n", | ||||||
|  | 		data->usb_dev->descriptor.idVendor, | ||||||
|  | 		data->usb_dev->descriptor.idProduct); | ||||||
|  | 	for(n = 0; usbtmc_id_quirk[n].idVendor > 0; n++) { | ||||||
|  | 		if ((usbtmc_id_quirk[n].idVendor == data->usb_dev->descriptor.idVendor) && | ||||||
|  | 		    (usbtmc_id_quirk[n].idProduct == data->usb_dev->descriptor.idProduct)) { | ||||||
|  | 			dev_dbg(&intf->dev, "Setting this device as having the RIGOL quirk\n"); | ||||||
|  | 			data->rigol_quirk = 1; | ||||||
|  | 			break; | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	/* Initialize USBTMC bTag and other fields */ | 	/* Initialize USBTMC bTag and other fields */ | ||||||
| 	data->bTag	= 1; | 	data->bTag	= 1; | ||||||
| 	data->TermCharEnabled = 0; | 	data->TermCharEnabled = 0; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Alexandre Peixoto Ferreira
				Alexandre Peixoto Ferreira