sh: add a list of parent configurations to struct clk
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Wed, 21 Jul 2010 10:13:06 +0000 (10:13 +0000)
committerPaul Mundt <lethal@linux-sh.org>
Wed, 4 Aug 2010 07:11:56 +0000 (16:11 +0900)
Many system clocks can select a parent by writing a value to a specific field
in the configuration register. Add a list of parents and location and width of
the source selection field in the clock configuration register to struct clk to
assist in clk_set_parent() implementation.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
include/linux/sh_clk.h

index 1636d1e..08a07b9 100644 (file)
@@ -25,6 +25,10 @@ struct clk {
        int                     id;
 
        struct clk              *parent;
+       struct clk              **parent_table; /* list of parents to */
+       unsigned short          parent_num;     /* choose between */
+       unsigned char           src_shift;      /* source clock field in the */
+       unsigned char           src_width;      /* configuration register */
        struct clk_ops          *ops;
 
        struct list_head        children;