Lines Matching refs:asiu
20 struct iproc_asiu *asiu;
39 struct iproc_asiu *asiu = clk->asiu;
46 val = readl(asiu->gate_base + clk->gate.offset);
48 writel(val, asiu->gate_base + clk->gate.offset);
56 struct iproc_asiu *asiu = clk->asiu;
63 val = readl(asiu->gate_base + clk->gate.offset);
65 writel(val, asiu->gate_base + clk->gate.offset);
72 struct iproc_asiu *asiu = clk->asiu;
82 val = readl(asiu->div_base + clk->div.offset);
123 struct iproc_asiu *asiu = clk->asiu;
132 val = readl(asiu->div_base + clk->div.offset);
134 writel(val, asiu->div_base + clk->div.offset);
146 val = readl(asiu->div_base + clk->div.offset);
162 writel(val, asiu->div_base + clk->div.offset);
181 struct iproc_asiu *asiu;
186 asiu = kzalloc(sizeof(*asiu), GFP_KERNEL);
187 if (WARN_ON(!asiu))
190 asiu->clk_data = kzalloc(struct_size(asiu->clk_data, hws, num_clks),
192 if (WARN_ON(!asiu->clk_data))
194 asiu->clk_data->num = num_clks;
196 asiu->clks = kcalloc(num_clks, sizeof(*asiu->clks), GFP_KERNEL);
197 if (WARN_ON(!asiu->clks))
200 asiu->div_base = of_iomap(node, 0);
201 if (WARN_ON(!asiu->div_base))
204 asiu->gate_base = of_iomap(node, 1);
205 if (WARN_ON(!asiu->gate_base))
219 asiu_clk = &asiu->clks[i];
221 asiu_clk->asiu = asiu;
235 asiu->clk_data->hws[i] = &asiu_clk->hw;
239 asiu->clk_data);
247 clk_hw_unregister(asiu->clk_data->hws[i]);
248 iounmap(asiu->gate_base);
251 iounmap(asiu->div_base);
254 kfree(asiu->clks);
257 kfree(asiu->clk_data);
260 kfree(asiu);