linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Yao Yuan <yao.yuan@freescale.com>
To: "Marek Vasut" <marex@denx.de>, "Lothar Waßmann" <LW@karo-electronics.de>
Cc: Varka Bhadram <varkabhadram@gmail.com>,
	"wsa@the-dreams.de" <wsa@the-dreams.de>,
	"mark.rutland@arm.com" <mark.rutland@arm.com>,
	"shawn.guo@linaro.org" <shawn.guo@linaro.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"linux-i2c@vger.kernel.org" <linux-i2c@vger.kernel.org>
Subject: RE: [PATCH v5 1/2] i2c: add DMA support for freescale i2c driver
Date: Thu, 31 Jul 2014 06:16:55 +0000	[thread overview]
Message-ID: <1a4d2e9ddc67421d8588305c927f3d3d@BL2PR03MB338.namprd03.prod.outlook.com> (raw)
In-Reply-To: <201407231852.53893.marex@denx.de>

Marek Vasut wrote:
> On Wednesday, July 23, 2014 at 02:15:02 PM, Lothar Waßmann wrote:
> > Hi,
> >
> > Varka Bhadram wrote:
> > > On 07/23/2014 04:41 PM, Yao Yuan wrote:
> > > > Hi,
> > > >
> > > > Thanks for your review.
> > > >
> > > > Lothar Waßmann wrote:
> > > >> Yuan Yao wrote:
> > > >>> Add dma support for i2c. This function depend on DMA driver.
> > > >>> You can turn on it by write both the dmas and dma-name
> > > >>> properties in dts node.
> > > >>>
> > > >>> Signed-off-by: Yuan Yao <yao.yuan@freescale.com>
> > > >>> ---
> > > >>>
> > > >>>   drivers/i2c/busses/i2c-imx.c | 377
> > > >
> > > > [...]
> > > >
> > > >>> +
> > > >>> +fail_rx:
> > > >>> +	dma_release_channel(dma->chan_rx);
> > > >>> +fail_tx:
> > > >>> +	dma_release_channel(dma->chan_tx);
> > > >>> +fail_al:
> > > >>> +	devm_kfree(dev, dma);
> > > >>
> > > >> No need for this one (that's the whole point of using devm_kzalloc())!
> > > >
> > > > When DMA request failed, I2C will switch to PIO mode. So if the
> > > > failed reason is just like DMA channel request failed. At this
> > > > time the DMA should free by devm_kfree(). Is it?
> > >
> > > If probe failed the memory will be freed automatically because we
> > > are using devm_kzalloc()...
> > >
> > > If we use devm_kzalloc() ,no need to free manually on fail...
> >
> > Yes, but as Yuan Yao stated, the driver will still work without DMA
> > but carry around the unecessary allocated imx_i2c_dma struct.
> > The devm_kfree() is not in the failure path of the driver's probe()
> > function, but in the function that tries to initialize the optional
> > DMA support.
> 
> If the DMA fails, I'd just make the entire probe fail. In case you cannot probe
> DMA for your hardware, which is exected to be DMA capable, it means
> something is wrong anyway.

Yes, but if there is something wrong in dma, I think the i2c is innocent. So I think the error message is necessary but i2c can continue work.


Best regards,
Yuan Yao

  reply	other threads:[~2014-07-31  6:17 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-23  8:24 [PATCH v5 0/2] i2c: add DMA support for freescale i2c driver Yuan Yao
2014-07-23  8:24 ` [PATCH v5 1/2] " Yuan Yao
2014-07-23  9:48   ` Lothar Waßmann
2014-07-23 11:11     ` Yao Yuan
2014-07-23 11:14       ` Varka Bhadram
2014-07-23 12:15         ` Lothar Waßmann
2014-07-23 16:52           ` Marek Vasut
2014-07-31  6:16             ` Yao Yuan [this message]
2014-07-23 12:11       ` Lothar Waßmann
2014-07-23  8:24 ` [PATCH v5 2/2] Documentation:add " Yuan Yao
2014-07-23 12:28 ` [PATCH v5 0/2] i2c: add " Marek Vasut
2014-07-24  3:36   ` Yao Yuan
2014-07-24  4:16     ` Marek Vasut

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1a4d2e9ddc67421d8588305c927f3d3d@BL2PR03MB338.namprd03.prod.outlook.com \
    --to=yao.yuan@freescale.com \
    --cc=LW@karo-electronics.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marex@denx.de \
    --cc=mark.rutland@arm.com \
    --cc=shawn.guo@linaro.org \
    --cc=varkabhadram@gmail.com \
    --cc=wsa@the-dreams.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).