forked from mirrors/linux
		
	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);
 | 
			
		||||
	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 */
 | 
			
		||||
	data->bTag	= 1;
 | 
			
		||||
	data->TermCharEnabled = 0;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue