diff options
Diffstat (limited to 'target/linux/ipq40xx/patches-4.14/088-0008-i2c-qup-use-the-complete-transfer-length-to-choose-D.patch')
-rw-r--r-- | target/linux/ipq40xx/patches-4.14/088-0008-i2c-qup-use-the-complete-transfer-length-to-choose-D.patch | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/target/linux/ipq40xx/patches-4.14/088-0008-i2c-qup-use-the-complete-transfer-length-to-choose-D.patch b/target/linux/ipq40xx/patches-4.14/088-0008-i2c-qup-use-the-complete-transfer-length-to-choose-D.patch deleted file mode 100644 index 3d68695588..0000000000 --- a/target/linux/ipq40xx/patches-4.14/088-0008-i2c-qup-use-the-complete-transfer-length-to-choose-D.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 08f15963bc751bc818294c0f75a9aaca299c4052 Mon Sep 17 00:00:00 2001 -From: Abhishek Sahu <absahu@codeaurora.org> -Date: Mon, 12 Mar 2018 18:44:57 +0530 -Subject: [PATCH 08/13] i2c: qup: use the complete transfer length to choose - DMA mode - -Currently each message length in complete transfer is being -checked for determining DMA mode and if any of the message length -is less than FIFO length then non DMA mode is being used which -will increase overhead. DMA can be used for any length and it -should be determined with complete transfer length. Now, this -patch selects DMA mode if the total length is greater than FIFO -length. - -Signed-off-by: Abhishek Sahu <absahu@codeaurora.org> -Reviewed-by: Austin Christ <austinwc@codeaurora.org> -Reviewed-by: Andy Gross <andy.gross@linaro.org> -Signed-off-by: Wolfram Sang <wsa@the-dreams.de> ---- - drivers/i2c/busses/i2c-qup.c | 13 +++++++------ - 1 file changed, 7 insertions(+), 6 deletions(-) - ---- a/drivers/i2c/busses/i2c-qup.c -+++ b/drivers/i2c/busses/i2c-qup.c -@@ -1300,7 +1300,8 @@ static int qup_i2c_xfer_v2(struct i2c_ad - int num) - { - struct qup_i2c_dev *qup = i2c_get_adapdata(adap); -- int ret, len, idx = 0; -+ int ret, idx = 0; -+ unsigned int total_len = 0; - - qup->bus_err = 0; - qup->qup_err = 0; -@@ -1326,14 +1327,14 @@ static int qup_i2c_xfer_v2(struct i2c_ad - goto out; - } - -- len = (msgs[idx].len > qup->out_fifo_sz) || -- (msgs[idx].len > qup->in_fifo_sz); -- -- if (is_vmalloc_addr(msgs[idx].buf) || !len) -+ if (is_vmalloc_addr(msgs[idx].buf)) - break; -+ -+ total_len += msgs[idx].len; - } - -- if (idx == num) -+ if (idx == num && (total_len > qup->out_fifo_sz || -+ total_len > qup->in_fifo_sz)) - qup->use_dma = true; - } - |