Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754605AbaLBMwT (ORCPT ); Tue, 2 Dec 2014 07:52:19 -0500 Received: from sauhun.de ([89.238.76.85]:41649 "EHLO pokefinder.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751211AbaLBMwR (ORCPT ); Tue, 2 Dec 2014 07:52:17 -0500 Date: Tue, 2 Dec 2014 13:52:03 +0100 From: Wolfram Sang To: Harini Katakam Cc: Mark Rutland , "grant.likely@linaro.org" , "robh+dt@kernel.org" , Pawel Moll , "ijc+devicetree@hellion.org.uk" , "galak@codeaurora.org" , "michal.simek@xilinx.com" , "soren.brinkmann@xilinx.com" , "linux-arm-kernel@lists.infradead.org" , "linux-i2c@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "devicetree@vger.kernel.org" , "vishnum@xilinx.com" Subject: Re: [PATCH 3/4] devicetree: bindings: Add defeature-repeated-start property for Cadence I2C Message-ID: <20141202125203.GA4072@katana> References: <1417514749-24319-1-git-send-email-harinik@xilinx.com> <1417514749-24319-4-git-send-email-harinik@xilinx.com> <20141202111907.GC23671@leverpostej> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="RnlQjJ0d97Da+TV1" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --RnlQjJ0d97Da+TV1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > >> + - defeature-repeated-start: Include this property to defeature repe= ated start > >> + This defeature is due to a few bugs in the > >> + I2C controller. > >> + Completion interrupt after a read/receive > >> + operation is NOT obtained if HOLD bit is s= et > >> + at that time. Because of this bug, repeate= d start > >> + will only work if there are no transfers f= ollowing > >> + a read/receive transfer. > >> + If HOLD is held for long without a transfe= r, > >> + invalid read transactions are generated by= the > >> + controller due to a HW timeout related bug. > > > > I'm not keen on the name; it sounds like we're disabling a feature > > rather than describing the problem (and "defeature" is not a common > > term in this sense, "disable" would be better). > > > > It sounds like there are two issues with staying in the HOLD state? Lost > > completion IRQs and a separate HW timeout bug? Or are the two related? > > >=20 > Yes, there are two issues here and they are not related. > But a combination of both is leading to not using repeated start. > The intention was to defeature except that it works in some scenarios > (such as a typical write+read in that order with repeated start) > and there are people who already use the driver with slaves that need thi= s. That should not be handled using a binding. If you get a transfer (at runtime) with criteria you don't support, return with -EOPNOTSUPP from the master xfer routine. That being said, the number of broken/not-fully-compliant I2C controllers has increased a lot recent times (why can't we just use the established old ones?). Maybe we will have core support for a subset of I2C (wr+rd) in the future, but that's still ahead... --RnlQjJ0d97Da+TV1 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJUfbXzAAoJEBQN5MwUoCm2SVEQAKislH9uLpKzI/F6xVYHO86O wojbo5Mmrpx5sCZfFgfl2iK7emBL9zDUVrZbX1gelrCGuVmwP0f/n8LwLNweu9YZ B4hwRbnAusMaxxU95OdeHKDEYJN8NUY62bhmjhSFANZ1m03XK+YN+m+BUxvb8yfk hv2ORgRn+pXb9QMim7dAYaETRzNi6TRZ8orbRuckt9b8tYojzGUJcaDQRAB9xy35 2kDVlxzPDodY9l/AZBt+yckhRUu0uJgUvcvO2NILqJDXAQwBtKMSKULaSMNVdJcc o8rVAjYXj57RAr2iNf+xNPgfFUGx13BK7gjxZJg1G/6wJtesz1sfa/MJ7ALFqrMt CnebxMTWOyMahU1AvZOZee4PDX4FU4pyh3kxKM51hgz2abNEaCb6Md9hrRy3Y0Z8 isoyIds1RbluLkYMZLHFLJIZrU+bxECMnYsSPchZ4GFhB+yNKhkTLSE73vMcy1K2 U/BIOLyaqHFmSK8GMYu1S6LoJMHG/enFcvaS9LHWBgLxXftx3qElgG+lK9NaaCfN MK2qz2hxmK+BE0a26wiDv6oA6aJs8Jj9bz3Hg1pEaNwN/dVZuHAjOwnbdHbaWl2J pIjS58EwjNyVDhHC5eQyWs2ZHxX7dYXkcpziy1uuPlB2j5sjrgIPfsgZupQ951CF NlZJ/ACPfhgk8lH33WGD =TJQZ -----END PGP SIGNATURE----- --RnlQjJ0d97Da+TV1-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/