From 8fb737b7dc94e495be02c775afe1e7de0e06f3f5 Mon Sep 17 00:00:00 2001
From: Dmitry Belimov <d.belimov@gmail.com>
Date: Wed, 23 Apr 2008 14:07:09 -0300
Subject: [PATCH] V4L/DVB (7676): saa7134: fix: Properly handle busy states on
 i2c bus

There are two conditions, reported by saa7134 that indicates that the I2C bus
is busy: TO_SCL and TO_ARB.

On both states, it needs to wait for I2C release, before using the bus.

Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
---
 drivers/media/video/saa7134/saa7134-i2c.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/media/video/saa7134/saa7134-i2c.c b/drivers/media/video/saa7134/saa7134-i2c.c
index ba71dd0040be0..2ccfaba0c490b 100644
--- a/drivers/media/video/saa7134/saa7134-i2c.c
+++ b/drivers/media/video/saa7134/saa7134-i2c.c
@@ -140,6 +140,8 @@ static inline int i2c_is_busy(enum i2c_status status)
 {
 	switch (status) {
 	case BUSY:
+	case TO_SCL:
+	case TO_ARB:
 		return true;
 	default:
 		return false;
-- 
GitLab