2015-11-30 12:54 GMT-08:00 Simon Arlott <simon@xxxxxxxxxxx>: > The BCM63xx contains clocks gated with a register. Clocks are indexed > by bits in the register and are active high. Clock gate bits are > interleaved with other status bits and configurable clocks in the same > register. > > Enabled by default for BMIPS_GENERIC. > > Signed-off-by: Simon Arlott <simon@xxxxxxxxxxx> > --- [snip] > + > +config CLK_BCM63XX > + bool "Broadcom BCM63xx clock support" > + depends on BMIPS_GENERIC > + depends on COMMON_CLK > + default y default BMIPS_GENERIC? > + help > + Enable clock framework support for Broadcom 63xx SoCs > diff --git a/drivers/clk/bcm/Makefile b/drivers/clk/bcm/Makefile > index 3fc9506..4f5f8ce 100644 > --- a/drivers/clk/bcm/Makefile > +++ b/drivers/clk/bcm/Makefile > @@ -8,3 +8,4 @@ obj-$(CONFIG_COMMON_CLK_IPROC) += clk-ns2.o > obj-$(CONFIG_ARCH_BCM_CYGNUS) += clk-cygnus.o > obj-$(CONFIG_ARCH_BCM_NSP) += clk-nsp.o > obj-$(CONFIG_ARCH_BCM_5301X) += clk-nsp.o > +obj-$(CONFIG_CLK_BCM63XX) += clk-bcm63xx.o > diff --git a/drivers/clk/bcm/clk-bcm63xx.c b/drivers/clk/bcm/clk-bcm63xx.c > new file mode 100644 > index 0000000..0e8cc06 > --- /dev/null > +++ b/drivers/clk/bcm/clk-bcm63xx.c There is a pending clk-bcm63xx.c implementation, covering BCM63138 in Stephen Boyd's clk/next tree, which you would want to base your patches on, it is not a huge deal to resolve the conflict, and there will be separate entry points and functions based on the compatible string anyway... > @@ -0,0 +1,187 @@ > +/* > + * Copyright 2015 Simon Arlott > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License version 2 as > + * published by the Free Software Foundation. > + * > + * Based on clk-gate.c: > + * Copyright (C) 2010-2011 Canonical Ltd <jeremy.kerr@xxxxxxxxxxxxx> > + * Copyright (C) 2011-2012 Mike Turquette, Linaro Ltd <mturquette@xxxxxxxxxx> > + */ I am not really anything very specific to 63xx chips in there, in fact, this looks like a fairly generic clk-gate driver using regmap to get its masks and offsets, would it make sense to create clk-gate-regmap.c which exposes the bulk of what you are doing and you could match using a specific compatible string? -- Florian