summaryrefslogtreecommitdiff
path: root/firmware/thread.c
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2005-11-07 23:07:19 +0000
committerDave Chapman <dave@dchapman.com>2005-11-07 23:07:19 +0000
commit77372d12189c70cb810a7e88bc2ee7a56f64646c (patch)
tree057d0d474042874850b6262b78f80d2335cb0629 /firmware/thread.c
parent3cd5c646d03089df8d58b773d4a1bc8323021adc (diff)
downloadrockbox-77372d12189c70cb810a7e88bc2ee7a56f64646c.zip
rockbox-77372d12189c70cb810a7e88bc2ee7a56f64646c.tar.gz
rockbox-77372d12189c70cb810a7e88bc2ee7a56f64646c.tar.bz2
rockbox-77372d12189c70cb810a7e88bc2ee7a56f64646c.tar.xz
Initial commit of work-in-progress iPod port
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7781 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/thread.c')
-rw-r--r--firmware/thread.c26
1 files changed, 25 insertions, 1 deletions
diff --git a/firmware/thread.c b/firmware/thread.c
index 7ee4072..83607ea 100644
--- a/firmware/thread.c
+++ b/firmware/thread.c
@@ -41,6 +41,14 @@ struct regs
void *pr; /* Procedure register */
void *start; /* Thread start address, or NULL when started */
};
+#elif CONFIG_CPU == PP5020
+#warning TODO: define struct regs
+struct regs
+{
+ void *sp; /* Stack pointer (a15) */
+ void *start; /* Thread start address */
+ int started; /* 0 when not started */
+};
#elif CONFIG_CPU == TCC730
struct regs
{
@@ -70,7 +78,21 @@ void switch_thread(void) ICODE_ATTR;
static inline void store_context(void* addr) __attribute__ ((always_inline));
static inline void load_context(const void* addr) __attribute__ ((always_inline));
-#ifdef CPU_COLDFIRE
+#if CONFIG_CPU == PP5020
+
+#warning TODO: Implement store_context and load_context
+
+static inline void store_context(void* addr)
+{
+}
+
+static inline void load_context(const void* addr)
+{
+
+}
+
+
+#elif defined(CPU_COLDFIRE)
/*---------------------------------------------------------------------------
* Store non-volatile context.
*---------------------------------------------------------------------------
@@ -341,6 +363,8 @@ void init_threads(void)
thread_contexts[0].start = 0; /* thread 0 already running */
#elif CONFIG_CPU == TCC730
thread_contexts[0].started = 1;
+#elif CONFIG_CPU == PP5020
+ thread_contexts[0].start = 0; /* thread 0 already running */
#endif
num_sleepers = 0;
}