Lines Matching defs:hwd

144 	struct cdce706_hw_data *hwd = to_hw_data(hw);
146 hwd->parent = index;
152 struct cdce706_hw_data *hwd = to_hw_data(hw);
154 return hwd->parent;
165 struct cdce706_hw_data *hwd = to_hw_data(hw);
167 dev_dbg(&hwd->dev_data->client->dev,
169 __func__, hwd->idx, hwd->mux, hwd->mul, hwd->div);
171 if (!hwd->mux) {
172 if (hwd->div && hwd->mul) {
173 u64 res = (u64)parent_rate * hwd->mul;
175 do_div(res, hwd->div);
179 if (hwd->div)
180 return parent_rate / hwd->div;
188 struct cdce706_hw_data *hwd = to_hw_data(hw);
192 dev_dbg(&hwd->dev_data->client->dev,
199 hwd->mul = mul;
200 hwd->div = div;
202 dev_dbg(&hwd->dev_data->client->dev,
204 __func__, hwd->idx, mul, div);
206 res = (u64)*parent_rate * hwd->mul;
207 do_div(res, hwd->div);
214 struct cdce706_hw_data *hwd = to_hw_data(hw);
215 unsigned long mul = hwd->mul, div = hwd->div;
218 dev_dbg(&hwd->dev_data->client->dev,
220 __func__, hwd->idx, mul, div);
222 err = cdce706_reg_update(hwd->dev_data,
223 CDCE706_PLL_HI(hwd->idx),
231 err = cdce706_reg_write(hwd->dev_data,
232 CDCE706_PLL_M_LOW(hwd->idx),
237 err = cdce706_reg_write(hwd->dev_data,
238 CDCE706_PLL_N_LOW(hwd->idx),
243 err = cdce706_reg_update(hwd->dev_data,
245 CDCE706_PLL_FVCO_MASK(hwd->idx),
247 CDCE706_PLL_FVCO_MASK(hwd->idx) : 0);
259 struct cdce706_hw_data *hwd = to_hw_data(hw);
261 if (hwd->parent == index)
263 hwd->parent = index;
264 return cdce706_reg_update(hwd->dev_data,
265 CDCE706_DIVIDER_PLL(hwd->idx),
266 CDCE706_DIVIDER_PLL_MASK(hwd->idx),
267 index << CDCE706_DIVIDER_PLL_SHIFT(hwd->idx));
272 struct cdce706_hw_data *hwd = to_hw_data(hw);
274 return hwd->parent;
280 struct cdce706_hw_data *hwd = to_hw_data(hw);
282 dev_dbg(&hwd->dev_data->client->dev,
284 __func__, hwd->idx, hwd->div);
285 if (hwd->div)
286 return parent_rate / hwd->div;
293 struct cdce706_hw_data *hwd = to_hw_data(hw);
294 struct cdce706_dev_data *cdce = hwd->dev_data;
297 dev_dbg(&hwd->dev_data->client->dev,
336 dev_dbg(&hwd->dev_data->client->dev,
344 dev_dbg(&hwd->dev_data->client->dev,
349 hwd->div = div;
351 dev_dbg(&hwd->dev_data->client->dev,
353 __func__, hwd->idx, div);
361 struct cdce706_hw_data *hwd = to_hw_data(hw);
363 dev_dbg(&hwd->dev_data->client->dev,
365 __func__, hwd->idx, hwd->div);
367 return cdce706_reg_update(hwd->dev_data,
368 CDCE706_DIVIDER(hwd->idx),
370 hwd->div);
383 struct cdce706_hw_data *hwd = to_hw_data(hw);
385 return cdce706_reg_update(hwd->dev_data, CDCE706_CLKOUT(hwd->idx),
392 struct cdce706_hw_data *hwd = to_hw_data(hw);
394 cdce706_reg_update(hwd->dev_data, CDCE706_CLKOUT(hwd->idx),
400 struct cdce706_hw_data *hwd = to_hw_data(hw);
402 if (hwd->parent == index)
404 hwd->parent = index;
405 return cdce706_reg_update(hwd->dev_data,
406 CDCE706_CLKOUT(hwd->idx),
412 struct cdce706_hw_data *hwd = to_hw_data(hw);
414 return hwd->parent;