From 58ed90de3ef58a19c035355a4a0cd6dfef6d6b0c Mon Sep 17 00:00:00 2001 From: Guenter Roeck Date: Wed, 22 Aug 2012 17:28:55 -0700 Subject: spi/sc18is602: Return -EINVAL for probe failures due to I2C function mismatch If the I2C bus master driver does not support the required functionality, the driver returns -ENODEV. This causes a silent probe failure without error message. Since the device has to be explicitly instantiated, and the user should know the correct bus, this event really reflects an error condition. Replace error return value with -EINVAL to trigger an error message showing that the probe function failed. Signed-off-by: Guenter Roeck Signed-off-by: Mark Brown diff --git a/drivers/spi/spi-sc18is602.c b/drivers/spi/spi-sc18is602.c index dd98964..9eda21d 100644 --- a/drivers/spi/spi-sc18is602.c +++ b/drivers/spi/spi-sc18is602.c @@ -275,7 +275,7 @@ static int sc18is602_probe(struct i2c_client *client, if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C | I2C_FUNC_SMBUS_WRITE_BYTE_DATA)) - return -ENODEV; + return -EINVAL; master = spi_alloc_master(dev, sizeof(struct sc18is602)); if (!master) -- cgit v0.10.2