Эх сурвалжийг харах

usb: phy: Find the right match in devm_usb_phy_match

The res parameter passed to devm_usb_phy_match() is the location where the
pointer to the usb_phy is stored, hence it needs to be dereferenced before
comparing to the match data in order to find the correct match.

Fixes: 410219dcd2ba ("usb: otg: utils: devres: Add API's to associate a device with the phy")
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Cc: <stable@vger.kernel.org> # v3.6+
Signed-off-by: Felipe Balbi <balbi@ti.com>
Axel Lin 10 жил өмнө
parent
commit
869aee0f31
1 өөрчлөгдсөн 3 нэмэгдсэн , 1 устгасан
  1. 3 1
      drivers/usb/phy/phy.c

+ 3 - 1
drivers/usb/phy/phy.c

@@ -81,7 +81,9 @@ static void devm_usb_phy_release(struct device *dev, void *res)
 
 static int devm_usb_phy_match(struct device *dev, void *res, void *match_data)
 {
-	return res == match_data;
+	struct usb_phy **phy = res;
+
+	return *phy == match_data;
 }
 
 /**