> On Fri, Mar 15, 2013 at 10:35:38AM +0400, Alexander Shiyan wrote: > > > > Signed-off-by: Alexander Shiyan <shc_work@xxxxxxx> > > --- > > drivers/clk/clk-divider-table.c | 4 +--- > > drivers/clk/clk-divider.c | 4 +--- > > drivers/clk/clk-fixed-factor.c | 4 +--- > > drivers/clk/clk-gate.c | 4 +--- > > 4 files changed, 4 insertions(+), 12 deletions(-) > > > > diff --git a/drivers/clk/clk-divider-table.c b/drivers/clk/clk-divider-table.c > > index 204e24d..e75fb78 100644 > > --- a/drivers/clk/clk-divider-table.c > > +++ b/drivers/clk/clk-divider-table.c > > @@ -25,7 +25,6 @@ struct clk_divider_table { > > u8 shift; > > u8 width; > > void __iomem *reg; > > - const char *parent; > > const struct clk_div_table *table; > > int table_size; > > int max_div_index; > > @@ -94,10 +93,9 @@ struct clk *clk_divider_table(const char *name, > > div->shift = shift; > > div->reg = reg; > > div->width = width; > > - div->parent = parent; > > div->clk.ops = &clk_divider_table_ops; > > div->clk.name = name; > > - div->clk.parent_names = &div->parent; > > + div->clk.parent_names = &parent; > > You can't do that. You can assume that the string *name points to stays > valid, but the pointer itself might not stay valid when leaving this > function. parent_names is an array of pointers, with the divider it only > has one entry, but still you need to keep a pointer for it. This is what > div->parent is for. You are right. Thanks. --- _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox