Lines Matching refs:ph

111 scmi_clock_protocol_attributes_get(const struct scmi_protocol_handle *ph,  in scmi_clock_protocol_attributes_get()  argument
118 ret = ph->xops->xfer_get_init(ph, PROTOCOL_ATTRIBUTES, in scmi_clock_protocol_attributes_get()
125 ret = ph->xops->do_xfer(ph, t); in scmi_clock_protocol_attributes_get()
131 ph->xops->xfer_put(ph, t); in scmi_clock_protocol_attributes_get()
135 static int scmi_clock_attributes_get(const struct scmi_protocol_handle *ph, in scmi_clock_attributes_get() argument
144 ret = ph->xops->xfer_get_init(ph, CLOCK_ATTRIBUTES, in scmi_clock_attributes_get()
152 ret = ph->xops->do_xfer(ph, t); in scmi_clock_attributes_get()
163 ph->xops->xfer_put(ph, t); in scmi_clock_attributes_get()
171 ph->hops->extended_name_get(ph, CLOCK_NAME_GET, clk_id, in scmi_clock_attributes_get()
254 iter_clk_describe_process_response(const struct scmi_protocol_handle *ph, in iter_clk_describe_process_response() argument
288 scmi_clock_describe_rates_get(const struct scmi_protocol_handle *ph, u32 clk_id, in scmi_clock_describe_rates_get() argument
301 .dev = ph->dev, in scmi_clock_describe_rates_get()
304 iter = ph->hops->iter_response_init(ph, &ops, SCMI_MAX_NUM_RATES, in scmi_clock_describe_rates_get()
311 ret = ph->hops->iter_response_run(iter); in scmi_clock_describe_rates_get()
316 dev_dbg(ph->dev, "Min %llu Max %llu Step %llu Hz\n", in scmi_clock_describe_rates_get()
328 scmi_clock_rate_get(const struct scmi_protocol_handle *ph, in scmi_clock_rate_get() argument
334 ret = ph->xops->xfer_get_init(ph, CLOCK_RATE_GET, in scmi_clock_rate_get()
341 ret = ph->xops->do_xfer(ph, t); in scmi_clock_rate_get()
345 ph->xops->xfer_put(ph, t); in scmi_clock_rate_get()
349 static int scmi_clock_rate_set(const struct scmi_protocol_handle *ph, in scmi_clock_rate_set() argument
356 struct clock_info *ci = ph->get_priv(ph); in scmi_clock_rate_set()
358 ret = ph->xops->xfer_get_init(ph, CLOCK_RATE_SET, sizeof(*cfg), 0, &t); in scmi_clock_rate_set()
373 ret = ph->xops->do_xfer_with_response(ph, t); in scmi_clock_rate_set()
379 dev_dbg(ph->dev, in scmi_clock_rate_set()
386 ret = ph->xops->do_xfer(ph, t); in scmi_clock_rate_set()
392 ph->xops->xfer_put(ph, t); in scmi_clock_rate_set()
397 scmi_clock_config_set(const struct scmi_protocol_handle *ph, u32 clk_id, in scmi_clock_config_set() argument
404 ret = ph->xops->xfer_get_init(ph, CLOCK_CONFIG_SET, in scmi_clock_config_set()
415 ret = ph->xops->do_xfer(ph, t); in scmi_clock_config_set()
417 ph->xops->xfer_put(ph, t); in scmi_clock_config_set()
421 static int scmi_clock_enable(const struct scmi_protocol_handle *ph, u32 clk_id) in scmi_clock_enable() argument
423 return scmi_clock_config_set(ph, clk_id, CLOCK_ENABLE, false); in scmi_clock_enable()
426 static int scmi_clock_disable(const struct scmi_protocol_handle *ph, u32 clk_id) in scmi_clock_disable() argument
428 return scmi_clock_config_set(ph, clk_id, 0, false); in scmi_clock_disable()
431 static int scmi_clock_enable_atomic(const struct scmi_protocol_handle *ph, in scmi_clock_enable_atomic() argument
434 return scmi_clock_config_set(ph, clk_id, CLOCK_ENABLE, true); in scmi_clock_enable_atomic()
437 static int scmi_clock_disable_atomic(const struct scmi_protocol_handle *ph, in scmi_clock_disable_atomic() argument
440 return scmi_clock_config_set(ph, clk_id, 0, true); in scmi_clock_disable_atomic()
443 static int scmi_clock_count_get(const struct scmi_protocol_handle *ph) in scmi_clock_count_get() argument
445 struct clock_info *ci = ph->get_priv(ph); in scmi_clock_count_get()
451 scmi_clock_info_get(const struct scmi_protocol_handle *ph, u32 clk_id) in scmi_clock_info_get() argument
454 struct clock_info *ci = ph->get_priv(ph); in scmi_clock_info_get()
477 static int scmi_clk_rate_notify(const struct scmi_protocol_handle *ph, in scmi_clk_rate_notify() argument
484 ret = ph->xops->xfer_get_init(ph, message_id, sizeof(*notify), 0, &t); in scmi_clk_rate_notify()
492 ret = ph->xops->do_xfer(ph, t); in scmi_clk_rate_notify()
494 ph->xops->xfer_put(ph, t); in scmi_clk_rate_notify()
498 static int scmi_clk_set_notify_enabled(const struct scmi_protocol_handle *ph, in scmi_clk_set_notify_enabled() argument
507 ret = scmi_clk_rate_notify(ph, src_id, cmd_id, enable); in scmi_clk_set_notify_enabled()
515 static void *scmi_clk_fill_custom_report(const struct scmi_protocol_handle *ph, in scmi_clk_fill_custom_report() argument
537 static int scmi_clk_get_num_sources(const struct scmi_protocol_handle *ph) in scmi_clk_get_num_sources() argument
539 struct clock_info *ci = ph->get_priv(ph); in scmi_clk_get_num_sources()
573 static int scmi_clock_protocol_init(const struct scmi_protocol_handle *ph) in scmi_clock_protocol_init() argument
579 ret = ph->xops->version_get(ph, &version); in scmi_clock_protocol_init()
583 dev_dbg(ph->dev, "Clock Version %d.%d\n", in scmi_clock_protocol_init()
586 cinfo = devm_kzalloc(ph->dev, sizeof(*cinfo), GFP_KERNEL); in scmi_clock_protocol_init()
590 ret = scmi_clock_protocol_attributes_get(ph, cinfo); in scmi_clock_protocol_init()
594 cinfo->clk = devm_kcalloc(ph->dev, cinfo->num_clocks, in scmi_clock_protocol_init()
602 ret = scmi_clock_attributes_get(ph, clkid, clk, version); in scmi_clock_protocol_init()
604 scmi_clock_describe_rates_get(ph, clkid, clk); in scmi_clock_protocol_init()
608 return ph->set_priv(ph, cinfo); in scmi_clock_protocol_init()