[PATCH 1/1] designware: add clock support
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Wed Oct 10 05:06:29 EDT 2012
On 11:03 Wed 10 Oct , Sascha Hauer wrote:
> On Sun, Oct 07, 2012 at 03:03:03PM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote:
> > allow the driver to request it's clock and enable it
> >
> > Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com>
> > ---
> > drivers/net/designware.c | 20 +++++++++++++++++++-
> > 1 file changed, 19 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/designware.c b/drivers/net/designware.c
> > index ec51825..1cbcd5a 100644
> > --- a/drivers/net/designware.c
> > +++ b/drivers/net/designware.c
> > @@ -32,8 +32,10 @@
> > #include <asm/mmu.h>
> > #include <net/designware.h>
> > #include <linux/phy.h>
> > -#include "designware.h"
> > +#include <linux/clk.h>
> > +#include <linux/err.h>
> >
> > +#include "designware.h"
> >
> > struct dw_eth_dev {
> > struct eth_device netdev;
> > @@ -390,6 +392,8 @@ static int dwc_ether_probe(struct device_d *dev)
> > struct mii_bus *miibus;
> > void __iomem *base;
> > struct dwc_ether_platform_data *pdata = dev->platform_data;
> > + struct clk *clk;
> > + int ret;
> >
> > if (!pdata) {
> > printf("dwc_ether: no platform_data\n");
> > @@ -427,6 +431,20 @@ static int dwc_ether_probe(struct device_d *dev)
> > miibus->write = dwc_ether_mii_write;
> > miibus->priv = priv;
> >
> > + clk = clk_get(dev, NULL);
> > + if (IS_ERR(clk)) {
> > + ret = PTR_ERR(clk);
> > + dev_err(dev, "no clk ret = %d\n", ret);
> > + return ret;
> > + }
> > +
> > + ret = clk_enable(clk);
> > + if (ret) {
> > + dev_err(dev, "can not enable clk ret = %d\n", ret);
> > + clk_put(clk);
> > + return ret;
> > + }
>
> I really doubt it makes sense to request clks in drivers just to enable
> it in barebox. The clock ends up being enabled everytime anyway since
> the clk enable is done in the probe function and is never disabled
> again. This forces every user of this driver to provide the clk API for
> absolutely no gain.
I'm working on the phy and on specific part no ready yet but I net the rate
too as this IP support specific rate on SH4
Best Regards,
J.
More information about the barebox
mailing list