diff options
author | Andrey Smirnov <andrew.smirnov@gmail.com> | 2018-12-12 23:03:33 -0800 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2018-12-17 10:41:56 +0100 |
commit | 1f5c33154d90db41489983152351e6410586482e (patch) | |
tree | 15d72e5a8214eeb788793f5779aced483db0b2ec /drivers/net/e1000 | |
parent | 67e8215eea2c44f769750dfa1f47405af6009242 (diff) | |
download | barebox-1f5c33154d90db41489983152351e6410586482e.tar.gz barebox-1f5c33154d90db41489983152351e6410586482e.tar.xz |
net/e1000: Map custom error codes to more appropriate errno values
A number of custom error codes used by e1000 driver will be propagated
all the way up to generic networking code and will end up being fed to
strerror(). As a result of that, some of the current error codes will
result in not very helpful failure messages. For example, trying to
ping a host on a system where access to i210's EEPROM fails results in
the following message:
barebox@ZII RDU2 Board:/ ping 192.168.53.7
ping failed: Operation not permitted
In order to make message like that one a little bit more helpful,
change definitions of various E1000_ERR_* constants to map to a bit
more appropriate error codes.
While at it, remove E1000_ERR_MASTER_REQUESTS_PENDING and
E1000_ERR_HOST_INTERFACE_COMMAND that are not referenced anywhere in
the codebase.
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/net/e1000')
-rw-r--r-- | drivers/net/e1000/e1000.h | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/drivers/net/e1000/e1000.h b/drivers/net/e1000/e1000.h index 4a1a1aa336..0a9e107c07 100644 --- a/drivers/net/e1000/e1000.h +++ b/drivers/net/e1000/e1000.h @@ -95,19 +95,17 @@ typedef enum { /* Error Codes */ #define E1000_SUCCESS 0 -#define E1000_ERR_EEPROM 1 -#define E1000_ERR_PHY 2 -#define E1000_ERR_CONFIG 3 -#define E1000_ERR_PARAM 4 -#define E1000_ERR_MAC_TYPE 5 -#define E1000_ERR_PHY_TYPE 6 -#define E1000_ERR_NOLINK 7 -#define E1000_ERR_TIMEOUT 8 -#define E1000_ERR_RESET 9 -#define E1000_ERR_MASTER_REQUESTS_PENDING 10 -#define E1000_ERR_HOST_INTERFACE_COMMAND 11 -#define E1000_BLK_PHY_RESET 12 -#define E1000_ERR_SWFW_SYNC 13 +#define E1000_ERR_EEPROM EIO +#define E1000_ERR_PHY EIO +#define E1000_ERR_CONFIG EINVAL +#define E1000_ERR_PARAM EINVAL +#define E1000_ERR_MAC_TYPE EINVAL +#define E1000_ERR_PHY_TYPE EINVAL +#define E1000_ERR_NOLINK ENETDOWN +#define E1000_ERR_TIMEOUT ETIMEDOUT +#define E1000_ERR_RESET EIO +#define E1000_BLK_PHY_RESET EWOULDBLOCK +#define E1000_ERR_SWFW_SYNC EBUSY /* PCI Device IDs */ #define E1000_DEV_ID_82542 0x1000 |