[U-Boot] [PATCH 13/17] aspeed: Add support for Clocks needed by MACs

Maxim Sloyko maxims at google.com
Mon Mar 20 17:52:12 UTC 2017


On Mon, Mar 20, 2017 at 10:30 AM, Tom Rini <trini at konsulko.com> wrote:

> On Mon, Mar 20, 2017 at 10:24:20AM -0700, Maxim Sloyko wrote:
> > On Sun, Mar 19, 2017 at 9:42 AM, Tom Rini <trini at konsulko.com> wrote:
> >
> > > On Thu, Mar 16, 2017 at 02:36:20PM -0700, Maxim Sloyko wrote:
> > > > Add support for clocks needed by MACs to ast2500 clock driver.
> > > > The clocks are D2-PLL, which is used by both MACs and PCLK_MAC1 and
> > > > PCLK_MAC2 for MAC1 and MAC2 respectively.
> > > >
> > > > The rate of D2-PLL is hardcoded to 250MHz -- the value used in Aspeed
> > > > SDK. It is not entirely clear from the datasheet how this clock is
> used
> > > > by MACs, so not clear if the rate would ever need to be different.
> So,
> > > > for now, hardcoding it is probably safer.
> > > >
> > > > The rate of PCLK_MAC{1,2} is chosen based on MAC speed selected
> through
> > > > hardware strapping.
> > > >
> > > > So, the network driver would only need to enable these clocks, no
> need
> > > > to configure the rate.
> > > >
> > > > Signed-off-by: Maxim Sloyko <maxims at google.com>
> > > > ---
> > > >
> > > >  arch/arm/dts/ast2500-u-boot.dtsi               |   8 +
> > > >  arch/arm/include/asm/arch-aspeed/scu_ast2500.h |  62 +++++-
> > > >  drivers/clk/aspeed/clk_ast2500.c               | 265
> > > ++++++++++++++++++++++---
> > > >  include/dt-bindings/clock/ast2500-scu.h        |   2 +
> > > >  4 files changed, 304 insertions(+), 33 deletions(-)
> > > >
> > > > diff --git a/arch/arm/dts/ast2500-u-boot.dtsi
> > > b/arch/arm/dts/ast2500-u-boot.dtsi
> > > > index faeeec1be4..f826646095 100644
> > > > --- a/arch/arm/dts/ast2500-u-boot.dtsi
> > > > +++ b/arch/arm/dts/ast2500-u-boot.dtsi
> > > > @@ -61,3 +61,11 @@
> > > >               };
> > > >       };
> > > >  };
> > > > +
> > > > +&mac0 {
> > > > +     clocks = <&scu PCLK_MAC1>, <&scu PLL_D2PLL>;
> > > > +};
> > > > +
> > > > +&mac1 {
> > > > +     clocks = <&scu PCLK_MAC2>, <&scu PLL_D2PLL>;
> > > > +};
> > >
> > > Why is this here and not in the main dts file?  The -u-boot.dtsi is for
> > > stuff that's not appropriate in the upstream dts file.  Thanks!
> >
> > There is no clock driver for this part in mainline Linux Kernel yet and I
> > don't know how it will end up being configured. I suspect that they might
> > not use the same bindings though.
> >
> > Should I put this into board specific dts?
>
> So this applies to a lot of parts of the series here.  What we don't
> want to do is have places where the DTS here diverges from the Linux
> kernel DTS and we don't reconcile them.  If the relevant Linux drivers
> are not in mainline, are they at least in linux-next or otherwise
> submitted to the relevant subtrees?
>

No, as far as I know, maybe Rick (cc'ed) knows what is the plan there.

I'm not really working on the linux driver and it's outside of my control.

I can change network driver, so that it does not use this DT configuration
and either hard code clock config into it, or configure it's clocks in
board specific file -- would that be more acceptable?


>
> --
> Tom
>



-- 
*M*axim *S*loyko


More information about the U-Boot mailing list