From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark Rutland Subject: Re: [PATCH 4/4] i2c: cadence: Defeature repeated start based on devicetree property Date: Tue, 2 Dec 2014 11:21:30 +0000 Message-ID: <20141202112130.GD23671@leverpostej> References: <1417514749-24319-1-git-send-email-harinik@xilinx.com> <1417514749-24319-5-git-send-email-harinik@xilinx.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1417514749-24319-5-git-send-email-harinik-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org> Sender: linux-i2c-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Harini Katakam Cc: "wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org" , "grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org" , "robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org" , Pawel Moll , "ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org" , "galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org" , "michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org" , "soren.brinkmann-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org" , "linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org" , "linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "vishnum-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org" List-Id: linux-i2c@vger.kernel.org On Tue, Dec 02, 2014 at 10:05:49AM +0000, Harini Katakam wrote: > From: Vishnu Motghare > > This patch defeatures repeated start in the driver if > "defeature-repeated-start" property is present in the devicetree. > > This defeature is proposed due to a few bugs in the controller > - completion indication is not given to the driver at the end of > a read/receive transfer with HOLD bit set. > - Invalid read transaction are generated on the bus when HW timeout > condition occurs with HOLD bit set. > > Signed-off-by: Vishnu Motghare > Signed-off-by: Harini Katakam > --- > drivers/i2c/busses/i2c-cadence.c | 44 +++++++++++++++++++++++++++----------- > 1 file changed, 31 insertions(+), 13 deletions(-) [...] > @@ -840,6 +856,8 @@ static int cdns_i2c_probe(struct platform_device *pdev) > cdns_i2c_writereg(CDNS_I2C_CR_ACK_EN | CDNS_I2C_CR_NEA | CDNS_I2C_CR_MS, > CDNS_I2C_CR_OFFSET); > > + of_property_read_u32(pdev->dev.of_node, "defeature-repeated-start", > + &id->defeature_repeated_start); This will not work with the binding you described. You want to treat this as a bool, and use of_property_read_bool. Thanks, Mark.