From 49b809586730a77b57ce620b2f9689de765d790b Mon Sep 17 00:00:00 2001 From: Robert Hancock Date: Tue, 4 Jun 2019 15:55:51 -0600 Subject: [PATCH 1/2] i2c: xiic: Add max_read_len quirk This driver does not support reading more than 255 bytes at once because the register for storing the number of bytes to read is only 8 bits. Add a max_read_len quirk to enforce this. This was found when using this driver with the SFP driver, which was previously reading all 256 bytes in the SFP EEPROM in one transaction. This caused a bunch of hard-to-debug errors in the xiic driver since the driver/logic was treating the number of bytes to read as zero. Rejecting transactions that aren't supported at least allows the problem to be diagnosed more easily. Signed-off-by: Robert Hancock Reviewed-by: Michal Simek Signed-off-by: Wolfram Sang Cc: stable@kernel.org --- drivers/i2c/busses/i2c-xiic.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/i2c/busses/i2c-xiic.c b/drivers/i2c/busses/i2c-xiic.c index 0fea7c54f788..37b3b9307d07 100644 --- a/drivers/i2c/busses/i2c-xiic.c +++ b/drivers/i2c/busses/i2c-xiic.c @@ -709,11 +709,16 @@ static const struct i2c_algorithm xiic_algorithm = { .functionality = xiic_func, }; +static const struct i2c_adapter_quirks xiic_quirks = { + .max_read_len = 255, +}; + static const struct i2c_adapter xiic_adapter = { .owner = THIS_MODULE, .name = DRIVER_NAME, .class = I2C_CLASS_DEPRECATED, .algo = &xiic_algorithm, + .quirks = &xiic_quirks, }; From 8f77293cca1f5116edc98d7a0e36c6da3917fc08 Mon Sep 17 00:00:00 2001 From: Wolfram Sang Date: Mon, 27 May 2019 21:45:45 +0200 Subject: [PATCH 2/2] MAINTAINERS: Karthikeyan Ramasubramanian is MIA A mail just bounced back with "user unknown": 550 5.1.1 User doesn't exist I also couldn't find a more recent address in git history. So, remove this stale entry. Signed-off-by: Wolfram Sang --- MAINTAINERS | 1 - 1 file changed, 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index a6954776a37e..1009b2b1ec8c 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -13057,7 +13057,6 @@ F: Documentation/devicetree/bindings/net/qcom,dwmac.txt QUALCOMM GENERIC INTERFACE I2C DRIVER M: Alok Chauhan -M: Karthikeyan Ramasubramanian L: linux-i2c@vger.kernel.org L: linux-arm-msm@vger.kernel.org S: Supported