File tree 1 file changed +8
-2
lines changed
1 file changed +8
-2
lines changed Original file line number Diff line number Diff line change @@ -86,10 +86,10 @@ static struct usb_phy *__device_to_usb_phy(struct device *dev)
86
86
87
87
list_for_each_entry (usb_phy , & phy_list , head ) {
88
88
if (usb_phy -> dev == dev )
89
- break ;
89
+ return usb_phy ;
90
90
}
91
91
92
- return usb_phy ;
92
+ return NULL ;
93
93
}
94
94
95
95
static void usb_phy_set_default_current (struct usb_phy * usb_phy )
@@ -150,8 +150,14 @@ static int usb_phy_uevent(struct device *dev, struct kobj_uevent_env *env)
150
150
struct usb_phy * usb_phy ;
151
151
char uchger_state [50 ] = { 0 };
152
152
char uchger_type [50 ] = { 0 };
153
+ unsigned long flags ;
153
154
155
+ spin_lock_irqsave (& phy_lock , flags );
154
156
usb_phy = __device_to_usb_phy (dev );
157
+ spin_unlock_irqrestore (& phy_lock , flags );
158
+
159
+ if (!usb_phy )
160
+ return - ENODEV ;
155
161
156
162
snprintf (uchger_state , ARRAY_SIZE (uchger_state ),
157
163
"USB_CHARGER_STATE=%s" , usb_chger_state [usb_phy -> chg_state ]);
You can’t perform that action at this time.
0 commit comments