summaryrefslogtreecommitdiff
path: root/src/kernel/ao.h
diff options
context:
space:
mode:
authorBdale Garbee <bdale@gag.com>2016-05-06 18:13:12 -0600
committerBdale Garbee <bdale@gag.com>2016-05-06 18:13:12 -0600
commit4c20fdfa543059739b756171b991d430789cded1 (patch)
treef39e6c729364211bf0570c459c37b576ecf9faa9 /src/kernel/ao.h
parente58dd78bcb749315f84168c83a74cf80851bf815 (diff)
parent2f0c977c747824d0798550ac64eceb1d66c50efd (diff)
Merge branch 'branch-1.6' into debian
Diffstat (limited to 'src/kernel/ao.h')
-rw-r--r--src/kernel/ao.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/kernel/ao.h b/src/kernel/ao.h
index 59a469ae..6ed0299e 100644
--- a/src/kernel/ao.h
+++ b/src/kernel/ao.h
@@ -124,6 +124,16 @@ ao_timer_init(void);
void
ao_clock_init(void);
+#if AO_POWER_MANAGEMENT
+/* Go to low power clock */
+void
+ao_clock_suspend(void);
+
+/* Restart full-speed clock */
+void
+ao_clock_resume(void);
+#endif
+
/*
* ao_mutex.c
*/
@@ -810,6 +820,8 @@ struct ao_fifo {
} while(0)
#define ao_fifo_full(f) ((((f).insert + 1) & (AO_FIFO_SIZE-1)) == (f).remove)
+#define ao_fifo_mostly(f) ((((f).insert - (f).remove) & (AO_FIFO_SIZE-1)) >= (AO_FIFO_SIZE * 3 / 4))
+#define ao_fifo_barely(f) ((((f).insert - (f).remove) & (AO_FIFO_SIZE-1)) >= (AO_FIFO_SIZE * 1 / 4))
#define ao_fifo_empty(f) ((f).insert == (f).remove)
#if PACKET_HAS_MASTER || PACKET_HAS_SLAVE