aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c/algos/i2c-algo-bit.c
diff options
context:
space:
mode:
authorNicola Corna <nicola@corna.info>2015-10-29 07:34:24 -0400
committerWolfram Sang <wsa@the-dreams.de>2015-11-30 12:37:25 -0500
commita94d306b71a5202cb928a7a1328dedab4fe0e968 (patch)
tree3f5fab1ee6e2e9a06561576c21c100970af205c0 /drivers/i2c/algos/i2c-algo-bit.c
parent749de3dac5e4d65cbed3b58f89c56883e31d1a5a (diff)
i2c: algo-bit: add I2C_AQ_NO_CLK_STRETCH
Add I2C_AQ_NO_CLK_STRETCH to drivers/i2c/algos/i2c-algo-bit.c when getscl is not available. Signed-off-by: Nicola Corna <nicola@corna.info> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers/i2c/algos/i2c-algo-bit.c')
-rw-r--r--drivers/i2c/algos/i2c-algo-bit.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/i2c/algos/i2c-algo-bit.c b/drivers/i2c/algos/i2c-algo-bit.c
index 899bede81b31..9d233bbde5e1 100644
--- a/drivers/i2c/algos/i2c-algo-bit.c
+++ b/drivers/i2c/algos/i2c-algo-bit.c
@@ -617,6 +617,10 @@ const struct i2c_algorithm i2c_bit_algo = {
617}; 617};
618EXPORT_SYMBOL(i2c_bit_algo); 618EXPORT_SYMBOL(i2c_bit_algo);
619 619
620const struct i2c_adapter_quirks i2c_bit_quirk_no_clk_stretch = {
621 .flags = I2C_AQ_NO_CLK_STRETCH,
622};
623
620/* 624/*
621 * registering functions to load algorithms at runtime 625 * registering functions to load algorithms at runtime
622 */ 626 */
@@ -635,6 +639,8 @@ static int __i2c_bit_add_bus(struct i2c_adapter *adap,
635 /* register new adapter to i2c module... */ 639 /* register new adapter to i2c module... */
636 adap->algo = &i2c_bit_algo; 640 adap->algo = &i2c_bit_algo;
637 adap->retries = 3; 641 adap->retries = 3;
642 if (bit_adap->getscl == NULL)
643 adap->quirks = &i2c_bit_quirk_no_clk_stretch;
638 644
639 ret = add_adapter(adap); 645 ret = add_adapter(adap);
640 if (ret < 0) 646 if (ret < 0)