linux-sh.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* emev2: clock driver dt proposal
@ 2013-07-09 17:24 Ben Dooks
  2013-07-10 16:07 ` Ben Dooks
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Ben Dooks @ 2013-07-09 17:24 UTC (permalink / raw)
  To: linux-sh

To deal with peripheral clocks, I was working on the following idea
for a clock binding to deal with the gclk and sclks to each peripheral.

The parent control devices:

	sclk: clock-controller@e011600 {
	      compatible = "renesas,em-sclk";
	      reg = <0xe011600 0x100>;


	      #clock-cells = <2>;
	};

	This registers a clock-divider for the clock and a clock-mux to control the
	divder's parents.

	gclk: clock-controller@e011400 {
	      compatible = "renesas,em-gclk";
	      reg = <0xe011400 0x200>;
	      #clock-cells = <3>;
	}

	This driver provides the clock gates for both the bus clock and the sclk.


For each peripheral:

	shdci0 {
	       clocks = <&gclk 0xc8 0x5 0x2>, <&sclk 0x48 &pll3 &pll4 &osc0 
&osc1>;
	       clock-names = "bus", "sclk";
	}

	In this case, the gclk is in the form of:

	< &gclk register-offset-from-base bus-control-bitmask 
sclk-control-bitmask >

	And the sclk is in the form of:

	< &sclk register-offset-from-base
	  parent-clock-0 parent-clock-1 parent-clock-2 parent-clock-3 >



-- 
Ben Dooks				http://www.codethink.co.uk/
Senior Engineer				Codethink - Providing Genius

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-07-11 16:56 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-09 17:24 emev2: clock driver dt proposal Ben Dooks
2013-07-10 16:07 ` Ben Dooks
2013-07-11  0:26 ` Simon Horman
2013-07-11 16:44 ` Magnus Damm
2013-07-11 16:56 ` Ben Dooks

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).