summaryrefslogtreecommitdiff
path: root/include/clock.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/clock.h')
-rw-r--r--include/clock.h32
1 files changed, 24 insertions, 8 deletions
diff --git a/include/clock.h b/include/clock.h
index c28dbb1bf2..1d2506029d 100644
--- a/include/clock.h
+++ b/include/clock.h
@@ -3,24 +3,40 @@
* found in the LICENSE file.
*/
-/* Clocks and power management settings */
+/* Clocks and power management settings */
#ifndef __CROS_EC_CLOCK_H
#define __CROS_EC_CLOCK_H
#include "common.h"
-/* Set the CPU clocks and PLLs. */
+/**
+ * Set the CPU clocks and PLLs.
+ */
int clock_init(void);
-/* Return the current clock frequency in Hz. */
+/**
+ * Return the current clock frequency in Hz.
+ */
int clock_get_freq(void);
-/* Enable or disable the PLL. */
-int clock_enable_pll(int enable);
-
-/* Wait <cycles> system clock cycles. Simple busy waiting for before
- * clocks/timers are initialized. */
+/**
+ * Enable or disable the PLL.
+ *
+ * @param enable Enable PLL if non-zero; disable if zero.
+ * @param notify Notify other modules of the PLL change. This should
+ * be 1 unless you're briefly turning on the PLL to work
+ * around a chip errata at init time.
+ */
+int clock_enable_pll(int enable, int notify);
+
+/**
+ * Wait for a number of clock cycles.
+ *
+ * Simple busy waiting for use before clocks/timers are initialized.
+ *
+ * @param cycles Number of cycles to wait.
+ */
void clock_wait_cycles(uint32_t cycles);
/* Low power modes for idle API */