From: Guenter Roeck Date: Thu, 1 Sep 2011 15:34:31 +0000 (-0700) Subject: hwmon: (pmbus) Replace EINVAL return codes with more appropriate errors X-Git-Tag: v3.2-rc1~171^2~14 X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=179144a0d4128e7588b3d613a14807402f5e7c37;p=pandora-kernel.git hwmon: (pmbus) Replace EINVAL return codes with more appropriate errors EINVAL was over-used in the code. Replace it with more appropriate errors. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson --- diff --git a/drivers/hwmon/pmbus/lm25066.c b/drivers/hwmon/pmbus/lm25066.c index 2107f413e4fc..a72bb9f51dec 100644 --- a/drivers/hwmon/pmbus/lm25066.c +++ b/drivers/hwmon/pmbus/lm25066.c @@ -57,7 +57,7 @@ static int lm25066_read_word_data(struct i2c_client *client, int page, int reg) int ret; if (page > 1) - return -EINVAL; + return -ENXIO; /* Map READ_VAUX into READ_VOUT register on page 1 */ if (page == 1) { @@ -85,7 +85,7 @@ static int lm25066_read_word_data(struct i2c_client *client, int page, int reg) break; default: /* No other valid registers on page 1 */ - ret = -EINVAL; + ret = -ENXIO; break; } goto done; @@ -138,7 +138,7 @@ static int lm25066_write_word_data(struct i2c_client *client, int page, int reg, int ret; if (page > 1) - return -EINVAL; + return -ENXIO; switch (reg) { case PMBUS_IIN_OC_WARN_LIMIT: @@ -164,7 +164,7 @@ static int lm25066_write_word_data(struct i2c_client *client, int page, int reg, static int lm25066_write_byte(struct i2c_client *client, int page, u8 value) { if (page > 1) - return -EINVAL; + return -ENXIO; if (page == 0) return pmbus_write_byte(client, 0, value); diff --git a/drivers/hwmon/pmbus/max8688.c b/drivers/hwmon/pmbus/max8688.c index e148e2c5a756..7113f1131e4a 100644 --- a/drivers/hwmon/pmbus/max8688.c +++ b/drivers/hwmon/pmbus/max8688.c @@ -45,7 +45,7 @@ static int max8688_read_word_data(struct i2c_client *client, int page, int reg) int ret; if (page) - return -EINVAL; + return -ENXIO; switch (reg) { case PMBUS_VIRT_READ_VOUT_MAX: @@ -102,7 +102,7 @@ static int max8688_read_byte_data(struct i2c_client *client, int page, int reg) int mfg_status; if (page) - return -EINVAL; + return -ENXIO; switch (reg) { case PMBUS_STATUS_VOUT: diff --git a/drivers/hwmon/pmbus/pmbus_core.c b/drivers/hwmon/pmbus/pmbus_core.c index 36f287076ee2..7841ea0c10a3 100644 --- a/drivers/hwmon/pmbus/pmbus_core.c +++ b/drivers/hwmon/pmbus/pmbus_core.c @@ -160,7 +160,7 @@ int pmbus_set_page(struct i2c_client *client, u8 page) rv = i2c_smbus_write_byte_data(client, PMBUS_PAGE, page); newpage = i2c_smbus_read_byte_data(client, PMBUS_PAGE); if (newpage != page) - rv = -EINVAL; + rv = -EIO; else data->currpage = page; } @@ -229,7 +229,7 @@ static int _pmbus_write_word_data(struct i2c_client *client, int page, int reg, return status; } if (reg >= PMBUS_VIRT_BASE) - return -EINVAL; + return -ENXIO; return pmbus_write_word_data(client, page, reg, word); } @@ -261,7 +261,7 @@ static int _pmbus_read_word_data(struct i2c_client *client, int page, int reg) return status; } if (reg >= PMBUS_VIRT_BASE) - return -EINVAL; + return -ENXIO; return pmbus_read_word_data(client, page, reg); } @@ -320,7 +320,7 @@ static int pmbus_check_status_cml(struct i2c_client *client) if (status < 0 || (status & PB_STATUS_CML)) { status2 = pmbus_read_byte_data(client, -1, PMBUS_STATUS_CML); if (status2 < 0 || (status2 & PB_CML_FAULT_INVALID_COMMAND)) - return -EINVAL; + return -EIO; } return 0; } @@ -1682,7 +1682,7 @@ int pmbus_do_probe(struct i2c_client *client, const struct i2c_device_id *id, if (info->pages <= 0 || info->pages > PMBUS_PAGES) { dev_err(&client->dev, "Bad number of PMBus pages: %d\n", info->pages); - ret = -EINVAL; + ret = -ENODEV; goto out_data; } diff --git a/drivers/hwmon/pmbus/ucd9000.c b/drivers/hwmon/pmbus/ucd9000.c index 640a9c9de7f8..1536db6543f0 100644 --- a/drivers/hwmon/pmbus/ucd9000.c +++ b/drivers/hwmon/pmbus/ucd9000.c @@ -75,7 +75,7 @@ static int ucd9000_read_byte_data(struct i2c_client *client, int page, int reg) switch (reg) { case PMBUS_FAN_CONFIG_12: if (page) - return -EINVAL; + return -ENXIO; ret = ucd9000_get_fan_config(client, 0); if (ret < 0) @@ -89,7 +89,7 @@ static int ucd9000_read_byte_data(struct i2c_client *client, int page, int reg) break; case PMBUS_FAN_CONFIG_34: if (page) - return -EINVAL; + return -ENXIO; ret = ucd9000_get_fan_config(client, 2); if (ret < 0)