lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1555480437.10179.203.camel@mhfsdcap03>
Date:   Wed, 17 Apr 2019 13:53:57 +0800
From:   Chunfeng Yun <chunfeng.yun@...iatek.com>
To:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>
CC:     Mathias Nyman <mathias.nyman@...el.com>,
        Matthias Brugger <matthias.bgg@...il.com>,
        Marek Szyprowski <m.szyprowski@...sung.com>,
        <linux-usb@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
        <linux-arm-kernel@...ts.infradead.org>,
        <linux-mediatek@...ts.infradead.org>
Subject: Re: [v2 PATCH 1/6] usb: xhci-mtk: get optional clock by
 devm_clk_get_optional()

On Tue, 2019-04-16 at 12:15 +0200, Greg Kroah-Hartman wrote:
> On Wed, Apr 10, 2019 at 02:47:24PM +0800, Chunfeng Yun wrote:
> > Use devm_clk_get_optional() to get optional clock
> > 
> > Signed-off-by: Chunfeng Yun <chunfeng.yun@...iatek.com>
> > ---
> > v2: no changes
> > ---
> >  drivers/usb/host/xhci-mtk.c | 19 +++----------------
> >  1 file changed, 3 insertions(+), 16 deletions(-)
> > 
> > diff --git a/drivers/usb/host/xhci-mtk.c b/drivers/usb/host/xhci-mtk.c
> > index 60987c787e44..026fe18972d3 100644
> > --- a/drivers/usb/host/xhci-mtk.c
> > +++ b/drivers/usb/host/xhci-mtk.c
> > @@ -206,19 +206,6 @@ static int xhci_mtk_ssusb_config(struct xhci_hcd_mtk *mtk)
> >  	return xhci_mtk_host_enable(mtk);
> >  }
> >  
> > -/* ignore the error if the clock does not exist */
> > -static struct clk *optional_clk_get(struct device *dev, const char *id)
> > -{
> > -	struct clk *opt_clk;
> > -
> > -	opt_clk = devm_clk_get(dev, id);
> > -	/* ignore error number except EPROBE_DEFER */
> > -	if (IS_ERR(opt_clk) && (PTR_ERR(opt_clk) != -EPROBE_DEFER))
> > -		opt_clk = NULL;
> > -
> > -	return opt_clk;
> > -}
> > -
> >  static int xhci_mtk_clks_get(struct xhci_hcd_mtk *mtk)
> >  {
> >  	struct device *dev = mtk->dev;
> > @@ -229,15 +216,15 @@ static int xhci_mtk_clks_get(struct xhci_hcd_mtk *mtk)
> >  		return PTR_ERR(mtk->sys_clk);
> >  	}
> >  
> > -	mtk->ref_clk = optional_clk_get(dev, "ref_ck");
> > +	mtk->ref_clk = devm_clk_get_optional(dev, "ref_ck");
> >  	if (IS_ERR(mtk->ref_clk))
> >  		return PTR_ERR(mtk->ref_clk);
> >  
> > -	mtk->mcu_clk = optional_clk_get(dev, "mcu_ck");
> > +	mtk->mcu_clk = devm_clk_get_optional(dev, "mcu_ck");
> >  	if (IS_ERR(mtk->mcu_clk))
> >  		return PTR_ERR(mtk->mcu_clk);
> >  
> > -	mtk->dma_clk = optional_clk_get(dev, "dma_ck");
> > +	mtk->dma_clk = devm_clk_get_optional(dev, "dma_ck");
> 
> Also, now that this clock (and the others here) are controlled by the
> devm infrastructure, do you have to change when you were cleaning up and
> stopping the clock?  
No need, optional_clk_get() uses devm_clk_get() to get clock

Thanks

> That logic seems to be the same here, which does
> not seem to be correct to me.
> 
> Please also document that in your changelog comments when resending this
> series, as all of these patches have this issue as well.
> 
> thanks,
> 
> greg k-h


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ