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