Re: [RFC PATCH] smsc911x: Ignore error return from device_get_phy_mode()
From: Jeremy Linton
Date: Wed Aug 26 2015 - 15:45:04 EST
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 <linux@xxxxxxxxxxxx>
---
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.linton@xxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/