Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

i2c: i801: make FEATURE_BLOCK_PROC dependent on FEATURE_BLOCK_BUFFER

According to the datasheet the block process call requires block
buffer mode. The user may disable block buffer mode by module
parameter disable_features, in such a case we have to clear
FEATURE_BLOCK_PROC.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Jean Delvare <jdelvare@suse.de>
Signed-off-by: Wolfram Sang <wsa@kernel.org>

authored by

Heiner Kallweit and committed by
Wolfram Sang
e98a3bc0 f0c8f0ee

+4
+4
drivers/i2c/busses/i2c-i801.c
··· 1658 1658 } 1659 1659 priv->features &= ~disable_features; 1660 1660 1661 + /* The block process call uses block buffer mode */ 1662 + if (!(priv->features & FEATURE_BLOCK_BUFFER)) 1663 + priv->features &= ~FEATURE_BLOCK_PROC; 1664 + 1661 1665 err = pcim_enable_device(dev); 1662 1666 if (err) { 1663 1667 dev_err(&dev->dev, "Failed to enable SMBus PCI device (%d)\n",