Subject: linux-next: manual merge of the usb tree with the usb.current tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 23 Apr 2018 13:04:44 +1000

Hi Greg,

Today's linux-next merge of the usb tree got a conflict in:

  drivers/usb/core/hcd.c

between commit:

  63cb03f5c11e ("usb: core: split usb_phy_roothub_{init,alloc}")

from the usb.current tree and commit:

  bc40f5341741 ("USB: core: hcd: drop support for legacy phys")

from the usb tree.

I fixed it up (see below - though I am not sure what happens to the
phy_roothub allocation when usb_phy_roothub_init fails) and can carry
the fix as necessary. This is now fixed as far as linux-next is
concerned, but any non trivial conflicts should be mentioned to your
upstream maintainer when your tree is submitted for merging.  You may
also want to consider cooperating with the maintainer of the
conflicting tree to minimise any particularly complex conflicts.

-- 
Cheers,
Stephen Rothwell

diff --cc drivers/usb/core/hcd.c
index 0a42c5df3c0f,ac5bcf449d7d..000000000000
--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
@@@ -2742,35 -2740,11 +2743,15 @@@ int usb_add_hcd(struct usb_hcd *hcd
  	int retval;
  	struct usb_device *rhdev;
  
- 	if (IS_ENABLED(CONFIG_USB_PHY) && !hcd->skip_phy_initialization) {
- 		struct usb_phy *phy = usb_get_phy_dev(hcd->self.sysdev, 0);
- 
- 		if (IS_ERR(phy)) {
- 			retval = PTR_ERR(phy);
- 			if (retval == -EPROBE_DEFER)
- 				return retval;
- 		} else {
- 			retval = usb_phy_init(phy);
- 			if (retval) {
- 				usb_put_phy(phy);
- 				return retval;
- 			}
- 			hcd->usb_phy = phy;
- 			hcd->remove_phy = 1;
- 		}
- 	}
- 
  	if (!hcd->skip_phy_initialization && usb_hcd_is_primary_hcd(hcd)) {
 -		hcd->phy_roothub = usb_phy_roothub_init(hcd->self.sysdev);
 +		hcd->phy_roothub = usb_phy_roothub_alloc(hcd->self.sysdev);
- 		if (IS_ERR(hcd->phy_roothub)) {
- 			retval = PTR_ERR(hcd->phy_roothub);
- 			goto err_phy_roothub_alloc;
- 		}
+ 		if (IS_ERR(hcd->phy_roothub))
+ 			return PTR_ERR(hcd->phy_roothub);
  
 +		retval = usb_phy_roothub_init(hcd->phy_roothub);
 +		if (retval)
- 			goto err_phy_roothub_alloc;
++			return retval;
 +
  		retval = usb_phy_roothub_power_on(hcd->phy_roothub);
  		if (retval)
  			goto err_usb_phy_roothub_power_on;