usb: chipidea: use common definition for USBMODE bits
Some of the bits of USBMODE register are defined in <usb/ehci_def.h>, use them instead of having our own definitions. Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
		
							parent
							
								
									f7daaa2d6e
								
							
						
					
					
						commit
						758fc9860c
					
				| @ -13,6 +13,8 @@ | ||||
| #ifndef __DRIVERS_USB_CHIPIDEA_BITS_H | ||||
| #define __DRIVERS_USB_CHIPIDEA_BITS_H | ||||
| 
 | ||||
| #include <linux/usb/ehci_def.h> | ||||
| 
 | ||||
| /* HCCPARAMS */ | ||||
| #define HCCPARAMS_LEN         BIT(17) | ||||
| 
 | ||||
| @ -70,11 +72,9 @@ | ||||
| 
 | ||||
| /* USBMODE */ | ||||
| #define USBMODE_CM            (0x03UL <<  0) | ||||
| #define    USBMODE_CM_IDLE    (0x00UL <<  0) | ||||
| #define    USBMODE_CM_DEVICE  (0x02UL <<  0) | ||||
| #define    USBMODE_CM_HOST    (0x03UL <<  0) | ||||
| #define USBMODE_CM_DC         (0x02UL <<  0) | ||||
| #define USBMODE_SLOM          BIT(3) | ||||
| #define USBMODE_SDIS          BIT(4) | ||||
| #define USBMODE_CI_SDIS       BIT(4) | ||||
| 
 | ||||
| /* ENDPTCTRL */ | ||||
| #define ENDPTCTRL_RXS         BIT(0) | ||||
|  | ||||
| @ -231,15 +231,15 @@ int hw_device_reset(struct ci13xxx *ci) | ||||
| 			CI13XXX_CONTROLLER_RESET_EVENT); | ||||
| 
 | ||||
| 	if (ci->udc_driver->flags & CI13XXX_DISABLE_STREAMING) | ||||
| 		hw_write(ci, OP_USBMODE, USBMODE_SDIS, USBMODE_SDIS); | ||||
| 		hw_write(ci, OP_USBMODE, USBMODE_CI_SDIS, USBMODE_CI_SDIS); | ||||
| 
 | ||||
| 	/* USBMODE should be configured step by step */ | ||||
| 	hw_write(ci, OP_USBMODE, USBMODE_CM, USBMODE_CM_IDLE); | ||||
| 	hw_write(ci, OP_USBMODE, USBMODE_CM, USBMODE_CM_DEVICE); | ||||
| 	hw_write(ci, OP_USBMODE, USBMODE_CM, USBMODE_CM_DC); | ||||
| 	/* HW >= 2.3 */ | ||||
| 	hw_write(ci, OP_USBMODE, USBMODE_SLOM, USBMODE_SLOM); | ||||
| 
 | ||||
| 	if (hw_read(ci, OP_USBMODE, USBMODE_CM) != USBMODE_CM_DEVICE) { | ||||
| 	if (hw_read(ci, OP_USBMODE, USBMODE_CM) != USBMODE_CM_DC) { | ||||
| 		pr_err("cannot enter in device mode"); | ||||
| 		pr_err("lpm = %i", ci->hw_bank.lpm); | ||||
| 		return -ENODEV; | ||||
|  | ||||
| @ -1606,7 +1606,7 @@ static irqreturn_t udc_irq(struct ci13xxx *udc) | ||||
| 
 | ||||
| 	if (udc->udc_driver->flags & CI13XXX_REGS_SHARED) { | ||||
| 		if (hw_read(udc, OP_USBMODE, USBMODE_CM) != | ||||
| 				USBMODE_CM_DEVICE) { | ||||
| 				USBMODE_CM_DC) { | ||||
| 			spin_unlock(&udc->lock); | ||||
| 			return IRQ_NONE; | ||||
| 		} | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user