![]() |
RT-Thread RTOS
An open source embedded real-time operating system
|
Collaboration diagram for Clock:Data Structures | |
| struct | rt_clk_node |
| struct | rt_clk_fixed_rate |
| struct | rt_clk |
| struct | rt_clk_array |
| struct | rt_clk_notifier |
Functions | |
| rt_err_t | rt_clk_register (struct rt_clk_node *clk_np, struct rt_clk_node *parent_np) |
| rt_err_t | rt_clk_unregister (struct rt_clk_node *clk_np) |
| rt_err_t | rt_clk_notifier_register (struct rt_clk *clk, struct rt_clk_notifier *notifier) |
| rt_err_t | rt_clk_notifier_unregister (struct rt_clk *clk, struct rt_clk_notifier *notifier) |
| rt_err_t | rt_clk_set_parent (struct rt_clk *clk, struct rt_clk *clk_parent) |
| rt_err_t | rt_clk_prepare (struct rt_clk *clk) |
| rt_err_t | rt_clk_enable (struct rt_clk *clk) |
| void | rt_clk_disable (struct rt_clk *clk) |
| rt_err_t | rt_clk_prepare_enable (struct rt_clk *clk) |
| void | rt_clk_disable_unprepare (struct rt_clk *clk) |
| rt_err_t | rt_clk_array_prepare (struct rt_clk_array *clk_arr) |
| rt_err_t | rt_clk_array_enable (struct rt_clk_array *clk_arr) |
| void | rt_clk_array_disable (struct rt_clk_array *clk_arr) |
| rt_err_t | rt_clk_array_prepare_enable (struct rt_clk_array *clk_arr) |
| void | rt_clk_array_disable_unprepare (struct rt_clk_array *clk_arr) |
| rt_err_t | rt_clk_set_rate_range (struct rt_clk *clk, rt_ubase_t min, rt_ubase_t max) |
| rt_err_t | rt_clk_set_min_rate (struct rt_clk *clk, rt_ubase_t rate) |
| rt_err_t | rt_clk_set_max_rate (struct rt_clk *clk, rt_ubase_t rate) |
| rt_err_t | rt_clk_set_rate (struct rt_clk *clk, rt_ubase_t rate) |
| rt_ubase_t | rt_clk_get_rate (struct rt_clk *clk) |
| rt_err_t | rt_clk_set_phase (struct rt_clk *clk, int degrees) |
| rt_base_t | rt_clk_get_phase (struct rt_clk *clk) |
| rt_base_t | rt_clk_round_rate (struct rt_clk *clk, rt_ubase_t rate) |
| struct rt_clk * | rt_clk_get_parent (struct rt_clk *clk) |
| struct rt_clk_array * | rt_clk_get_array (struct rt_device *dev) |
| struct rt_clk * | rt_clk_get_by_index (struct rt_device *dev, int index) |
| struct rt_clk * | rt_clk_get_by_name (struct rt_device *dev, const char *name) |
| void | rt_clk_array_put (struct rt_clk_array *clk_arr) |
| void | rt_clk_put (struct rt_clk *clk) |
| rt_inline struct rt_clk_node * | clk_get (struct rt_clk_node *clk_np) |
| rt_inline void | clk_put (struct rt_clk_node *clk_np) |
Clock driver API.
| rt_err_t rt_clk_register | ( | struct rt_clk_node * | clk_np, |
| struct rt_clk_node * | parent_np | ||
| ) |
Register clock node into clock list.
| clk_np | point to child node that will be registered node. |
| parent_np | point to parent rt_clk. If it is RT_NULL, clock node will be linked to init node. |
| RT_EOK | |
| -RT_ENOMEM |
| rt_err_t rt_clk_unregister | ( | struct rt_clk_node * | clk_np | ) |
Unregister clock node from clock list.
| clk_np | point to child node that will be Unregistered node. |
| RT_EOK | |
| -RT_EBUSY | |
| -RT_EINVAL |
| rt_err_t rt_clk_notifier_register | ( | struct rt_clk * | clk, |
| struct rt_clk_notifier * | notifier | ||
| ) |
Register clock notifier into notifier list.
| clk | point to clock |
| notifier | point to notifier for register |
| RT_EOK | |
| -RT_EINVAL |
| rt_err_t rt_clk_notifier_unregister | ( | struct rt_clk * | clk, |
| struct rt_clk_notifier * | notifier | ||
| ) |
Unregister clock notifier into notifier list.
| clk | point to clock |
| notifier | point to notifier for unregister |
| RT_EOK | |
| -RT_EINVAL |
Set clock parent object.
| clk | point to clock |
| clk_parent | point to parent clock |
| rt_err_t rt_clk_prepare | ( | struct rt_clk * | clk | ) |
Prepare clock.
| clk |
| rt_err_t rt_clk_enable | ( | struct rt_clk * | clk | ) |
Enable clock.
| clk | point to clock |
| void rt_clk_disable | ( | struct rt_clk * | clk | ) |
Disable clock.
| clk | point to clock |
| rt_err_t rt_clk_prepare_enable | ( | struct rt_clk * | clk | ) |
Prepare and enable clock.
| clk | point to clock |
| void rt_clk_disable_unprepare | ( | struct rt_clk * | clk | ) |
Disable and unprepare clock.
| clk | point to clock |
| rt_err_t rt_clk_array_prepare | ( | struct rt_clk_array * | clk_arr | ) |
Prepare clock array for mutipule out clock.
| clk_arr | point to clock array |
| rt_err_t rt_clk_array_enable | ( | struct rt_clk_array * | clk_arr | ) |
Enable clock array for mutipule out clock.
| clk_arr | point to clock array |
| void rt_clk_array_disable | ( | struct rt_clk_array * | clk_arr | ) |
Enable clock array for mutipule out clock.
| clk_arr | point to clock array |
| rt_err_t rt_clk_array_prepare_enable | ( | struct rt_clk_array * | clk_arr | ) |
Prepare and enable clock array.
| clk_arr | point to clock array |
| void rt_clk_array_disable_unprepare | ( | struct rt_clk_array * | clk_arr | ) |
Disable and unprepare clock array.
| clk_arr | point to clock array |
| rt_err_t rt_clk_set_rate_range | ( | struct rt_clk * | clk, |
| rt_ubase_t | min, | ||
| rt_ubase_t | max | ||
| ) |
Set clock rate range.
| clk | point to clock |
| min | minimum clock rate |
| max | minimum clock rate |
| rt_err_t rt_clk_set_min_rate | ( | struct rt_clk * | clk, |
| rt_ubase_t | rate | ||
| ) |
Set minimum clock rate.
| clk | point to clock |
| rate | miminum clock rate |
| rt_err_t rt_clk_set_max_rate | ( | struct rt_clk * | clk, |
| rt_ubase_t | rate | ||
| ) |
Set maximum clock rate.
| clk | point to clock |
| rate | maximum clock rate |
| rt_err_t rt_clk_set_rate | ( | struct rt_clk * | clk, |
| rt_ubase_t | rate | ||
| ) |
Set clock rate.
| clk | point to clock |
| rate | target rate |
| rt_ubase_t rt_clk_get_rate | ( | struct rt_clk * | clk | ) |
Get clock rate.
| clk | point to clock |
| rt_err_t rt_clk_set_phase | ( | struct rt_clk * | clk, |
| int | degrees | ||
| ) |
Set clock phase.
| clk | point to clock |
| degrees | target phase and the unit of phase is degree |
| rt_base_t rt_clk_get_phase | ( | struct rt_clk * | clk | ) |
Get clock phase.
| clk | point to clock |
| rt_base_t rt_clk_round_rate | ( | struct rt_clk * | clk, |
| rt_ubase_t | rate | ||
| ) |
Check if clock rate is in the minimum to maximun and get it.
| clk | point to clock |
| rate | rate will be checked |
Get parent clock pointer.
| clk | child clock |
| struct rt_clk_array * rt_clk_get_array | ( | struct rt_device * | dev | ) |
Get clock array pointer from ofw device node.
| dev | point to dev |
Get clock pointer from ofw device node by index.
| dev | point to dev |
| index | index of clock object |
Get clock pointer from ofw device node by name.
| dev | point to dev |
| name | name of clock object |
| void rt_clk_array_put | ( | struct rt_clk_array * | clk_arr | ) |
Put reference count of all colock in the clock array.
| clk_arr | point to clock array |
| void rt_clk_put | ( | struct rt_clk * | clk | ) |
Put reference count of clock.
| clk | point to clock |
| rt_inline struct rt_clk_node* clk_get | ( | struct rt_clk_node * | clk_np | ) |
Increase reference count for clock node.
| clk_np | point to clock node |
| rt_inline void clk_put | ( | struct rt_clk_node * | clk_np | ) |
Decrease reference count for clock node.
| clk_np | point to clock node |