Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 15 additions & 13 deletions components/drivers/clk/clk.c
Original file line number Diff line number Diff line change
Expand Up @@ -454,9 +454,14 @@ static void clk_unprepare(struct rt_clk *clk, struct rt_clk_node *clk_np)
}
}

rt_err_t rt_clk_unprepare(struct rt_clk *clk)
/**
* @brief Unprepare clock
*
* @param clk point to clock
*
*/
void rt_clk_unprepare(struct rt_clk *clk)
{
rt_err_t err = RT_EOK;

RT_DEBUG_NOT_IN_INTERRUPT;

Expand All @@ -469,7 +474,6 @@ rt_err_t rt_clk_unprepare(struct rt_clk *clk)
rt_hw_spin_unlock(&_clk_lock.lock);
}

return err;
}

/**
Expand Down Expand Up @@ -647,25 +651,23 @@ rt_err_t rt_clk_array_prepare(struct rt_clk_array *clk_arr)
return err;
}

rt_err_t rt_clk_array_unprepare(struct rt_clk_array *clk_arr)
/**
* @brief Unprepare clock array for mutipule out clock
*
* @param clk_arr point to clock array
*
*/
void rt_clk_array_unprepare(struct rt_clk_array *clk_arr)
{
rt_err_t err = RT_EOK;

if (clk_arr)
{
for (int i = 0; i < clk_arr->count; ++i)
{
if ((err = rt_clk_unprepare(clk_arr->clks[i])))
{
LOG_E("CLK Array[%d] %s failed error = %s", i,
"unprepare", rt_strerror(err));

break;
}
rt_clk_unprepare(clk_arr->clks[i]);
}
}

return err;
}

/**
Expand Down
4 changes: 2 additions & 2 deletions components/drivers/include/drivers/clk.h
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ rt_err_t rt_clk_notifier_unregister(struct rt_clk *clk, struct rt_clk_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_unprepare(struct rt_clk *clk);
void rt_clk_unprepare(struct rt_clk *clk);

rt_err_t rt_clk_enable(struct rt_clk *clk);
void rt_clk_disable(struct rt_clk *clk);
Expand All @@ -169,7 +169,7 @@ 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_unprepare(struct rt_clk_array *clk_arr);
void rt_clk_array_unprepare(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);
Expand Down