Re: [RFC PATCH] smsc911x: Ignore error return from device_get_phy_mode()

2015-08-26 Thread Jeremy Linton

On 08/26/2015 01:49 PM, Guenter Roeck wrote:

Check the return value from device_property_read_u32() to see if there
is a suitable firmware interface to read the data, and abort if not.
The function should return -ENXIO in that case; however, it returns
-ENODATA. Check for both.

Fixes: 62ee783bf1f8 (smsc911x: Fix crash seen if neither ACPI nor OF is configured 
or used)
Signed-off-by: Guenter Roeck li...@roeck-us.net
---
Needs testing. RFC because I am not sure if the -ENODATA check is acceptable.


I'm not really sure about it myself. I can think of cases where it might 
cause problems. That said it does work in an ACPI environment with or 
without the _DSD block. If the DSD/property isn't set, obviously the 
device doesn't configure (but it doesn't crash either) so that is good 
and an overall improvement for ACPI.


Also, I personally might have hoisted the reg-io-width ahead of the 
device_get_phy_mode() and removed the phy checks, but I don't imagine 
there is much functional difference at this point.


Tested-by: Jeremy Linton jeremy.lin...@arm.com




--
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [RFC PATCH] smsc911x: Ignore error return from device_get_phy_mode()

2015-08-26 Thread Guenter Roeck

On 08/26/2015 12:44 PM, Jeremy Linton wrote:

On 08/26/2015 01:49 PM, Guenter Roeck wrote:

Check the return value from device_property_read_u32() to see if there
is a suitable firmware interface to read the data, and abort if not.
The function should return -ENXIO in that case; however, it returns
-ENODATA. Check for both.

Fixes: 62ee783bf1f8 (smsc911x: Fix crash seen if neither ACPI nor OF is configured 
or used)
Signed-off-by: Guenter Roeck li...@roeck-us.net
---
Needs testing. RFC because I am not sure if the -ENODATA check is acceptable.


I'm not really sure about it myself. I can think of cases where it might cause 
problems. That said it does work in an ACPI environment with or without the 
_DSD block. If the DSD/property isn't set, obviously the device doesn't 
configure (but it doesn't crash either) so that is good and an overall 
improvement for ACPI.

Also, I personally might have hoisted the reg-io-width ahead of the 
device_get_phy_mode() and removed the phy checks, but I don't imagine there is 
much functional difference at this point.

Tested-by: Jeremy Linton jeremy.lin...@arm.com



I'll post a separate two-patch series which introduces -ENXIO as return value.

Guenter

--
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html