Received: by 10.223.164.221 with SMTP id h29csp528501wrb; Wed, 11 Oct 2017 04:54:58 -0700 (PDT) X-Received: by 10.84.252.149 with SMTP id y21mr12273557pll.276.1507722898784; Wed, 11 Oct 2017 04:54:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1507722898; cv=none; d=google.com; s=arc-20160816; b=lCLpyVEuXCka6dfdsDCDVnOvl91uo/AC2JjQaxqAdH7DHzKwBcN6GL9UI07AjQ2GXm FCHR1BPquaadLM6LDtkU7si7oOD62s9J+SQlxU9+9ACN85R2spVZW3kUOm4eyuRbttAM E1LV93hAW/uVfV/yvJ9jkRgA9WiskcLkn3P6jTgP2rHvObSbguYzcKG2qeEDbPlfcYIP nVKWEH/7EutxZWvpeobxISTX7UrDuc+q/CULy1oXiqv9T7mzrit6Ldfpt5z5rurVzOMB EgdeNUv/Tlv4Hw02YXpdbY676sMdwaiyUWgAGn49AnkZEn/uGDhabkdnKWQjpr3NoK1C GqVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=w9txoNhWVOyJITrsPAaYpb67DZDTKvhwv75fVwDdI3U=; b=KWOTc/1pAD90BgVCdW0ci3ZTfitxx6oLVMmoQ6f3fshxEn1Zqfjygv/nFAdK+GUL12 14Z6zGfDPbzAF4uY0vRmFIG7yjHMvq3e7fD8+/k4UzfmmtkFZm0xmy4gP+1x5/oqe1xF 4T2ezHGrQLzyHmG0R8tHdSRxlnaDeYPwtntWA11FYV9YCbn5qjswxl9ZBHjzostRreZZ hWsyBGkw0CZ50lnyKXrhARuufs8TRXnJh4m+qghqInCfjNDzlXpbrunUNpmkhx+jzhrB UzEjbi6irL97Z714ebpirgxolPT32JwaKwMGrgHlkMwHlRLsm8yUQl4J3nUwIKrdoEEo yyKg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=tDrmf2vs; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w61si10926855plb.135.2017.10.11.04.54.44; Wed, 11 Oct 2017 04:54:58 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=tDrmf2vs; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757279AbdJKLxY (ORCPT + 99 others); Wed, 11 Oct 2017 07:53:24 -0400 Received: from mail-lf0-f68.google.com ([209.85.215.68]:50261 "EHLO mail-lf0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752183AbdJKLxV (ORCPT ); Wed, 11 Oct 2017 07:53:21 -0400 Received: by mail-lf0-f68.google.com with SMTP id a132so1768655lfa.7; Wed, 11 Oct 2017 04:53:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=w9txoNhWVOyJITrsPAaYpb67DZDTKvhwv75fVwDdI3U=; b=tDrmf2vs/GUJWxY4lIznYKgpM9P3/TMBqg/Et32JTgxA7zMXstB4Krt3y3RAM06Lum vkVe2PYv2GZVh8270hgpWjKT2R9Ksv6DPVzJSBf5BzraysLyGXGHZaXvYfaWtPz16gly 65mOvLsi00rOa61739vDGhPa7FHd8cjN1eY1iv8Is9NhaekR9D7mEpdZ63nVVJ6y3EF3 5TwfrM/3vsT2n0mY5z6KBePfxfhaFJ9C8VugHZYArkG5OMMe1OzdVXuYv6fgL9A0+hdm nLD86RD5byqSvPN9pXJSJ5uRoCgQVb+FiS0BgWzJAJTtG9mNNfG1zzEtlItvfdJ7Kl4K Qw2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=w9txoNhWVOyJITrsPAaYpb67DZDTKvhwv75fVwDdI3U=; b=YJTVM1uhg5qndSgHYmrxv0heahNY/XdcerRQf6CIZI7ZovwUSZl0YQifxoJxu0djfj ztS0KR7rG+wwpL4Z2d99rYoC/KCsI8iTwqVYcjOL7gzlDzXRni9U/DciTfmUR8NLiVyD v8gVzNwROJ6XS4rhOgnQKCpz6akdOj/wBOVvyfJj4DY8jXRf+HSCcosBu0oD3+C6/fG/ cgCWXVFRMzraP1LzX36LwChZwrZazcH/47bmWuGU3se8cuHntTXUgeL0QJLK6Vn5JmoX jNdIpZ6xm1eD/+6FcEhiO9ljRyiDwXEVsWFXeWYV/s73xeQpyKbnp6nY5+cS+8fUYzZ3 JJhw== X-Gm-Message-State: AMCzsaVx5DpacHH/2hz9qNBSfdPbvxnBb/SFGTiMEXCSAnCldkqIUHkt +gzdzywLesGWUj8EAhweSaQ= X-Google-Smtp-Source: AOwi7QBsq9GR/NvDeh4N3IxZiHyAfXME3wlRHl/RzpjWlX2AGUamF266g6WUuMH4yvLRrirIh2yAPg== X-Received: by 10.25.168.78 with SMTP id r75mr4736291lfe.65.1507722799566; Wed, 11 Oct 2017 04:53:19 -0700 (PDT) Received: from PLLZPC317.harman.com ([212.91.28.199]) by smtp.gmail.com with ESMTPSA id h140sm2238130lfh.42.2017.10.11.04.53.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 11 Oct 2017 04:53:18 -0700 (PDT) From: Radoslaw Pietrzyk To: Wolfram Sang , Maxime Coquelin , Alexandre Torgue , linux-i2c@vger.kernel.org (open list:I2C SUBSYSTEM), linux-arm-kernel@lists.infradead.org (moderated list:ARM/STM32 ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Cc: Radoslaw Pietrzyk Subject: [PATCH] i2c: stm32: Fixes multibyte transfer for STM32F4 I2C controller Date: Wed, 11 Oct 2017 13:53:08 +0200 Message-Id: <1507722788-31224-1-git-send-email-radoslaw.pietrzyk@gmail.com> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Do not read data on RXNE but on BTF only due to HW synchronisation problems and NACKing read data too early. It was found during testing of stmpe811 touchscreen driver. Signed-off-by: Radoslaw Pietrzyk --- drivers/i2c/busses/i2c-stm32f4.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/drivers/i2c/busses/i2c-stm32f4.c b/drivers/i2c/busses/i2c-stm32f4.c index 4ec1084..86bcf4c 100644 --- a/drivers/i2c/busses/i2c-stm32f4.c +++ b/drivers/i2c/busses/i2c-stm32f4.c @@ -409,16 +409,9 @@ static void stm32f4_i2c_handle_read(struct stm32f4_i2c_dev *i2c_dev) * So, here we just disable buffer interrupt in order to avoid another * system preemption due to RX not empty event. */ - case 2: - case 3: + default: stm32f4_i2c_clr_bits(reg, STM32F4_I2C_CR2_ITBUFEN); break; - /* - * For N byte reception with N > 3 we directly read data register - * until N-2 data. - */ - default: - stm32f4_i2c_read_msg(i2c_dev); } } @@ -470,8 +463,6 @@ static void stm32f4_i2c_handle_rx_done(struct stm32f4_i2c_dev *i2c_dev) */ reg = i2c_dev->base + STM32F4_I2C_CR1; stm32f4_i2c_clr_bits(reg, STM32F4_I2C_CR1_ACK); - stm32f4_i2c_read_msg(i2c_dev); - break; default: stm32f4_i2c_read_msg(i2c_dev); } -- 1.9.1 From 1585510936199286942@xxx Thu Nov 30 16:57:38 +0000 2017 X-GM-THRID: 1585444882307905855 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread