• Mauro Carvalho Chehab's avatar
    [media] em28xx-i2c: Fix error code for I2C error transfers · e63b009d
    Mauro Carvalho Chehab authored
    Follow the error codes for I2C as described at Documentation/i2c/fault-codes.
    
    In the case of the I2C status register (0x05), this is mapped into:
    
    	- ENXIO - when reg 05 returns 0x10
    	- ETIMEDOUT - when the device is not temporarily not responding
    		      (e. g. reg 05 returning something not 0x10 or 0x00)
    	- EIO - for generic I/O errors that don't fit into the above.
    
    In the specific case of 0-byte reads, used only during I2C device
    probing, it keeps returning -ENODEV.
    
    TODO: return EBUSY when reg 05 returns 0x20 on em2874 and upper.
    Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
    e63b009d
em28xx-i2c.c 24.1 KB