summaryrefslogtreecommitdiff
path: root/common/exports.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/exports.c')
-rw-r--r--common/exports.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/common/exports.c b/common/exports.c
new file mode 100644
index 0000000..22002cc
--- /dev/null
+++ b/common/exports.c
@@ -0,0 +1,31 @@
+#include <common.h>
+#include <exports.h>
+
+static void dummy(void)
+{
+}
+
+unsigned long get_version(void)
+{
+ return XF_VERSION;
+}
+
+void jumptable_init (void)
+{
+ DECLARE_GLOBAL_DATA_PTR;
+ int i;
+
+ gd->jt = (void **) malloc (XF_MAX * sizeof (void *));
+ for (i = 0; i < XF_MAX; i++)
+ gd->jt[i] = (void *) dummy;
+
+ gd->jt[XF_get_version] = (void *) get_version;
+ gd->jt[XF_malloc] = (void *) malloc;
+ gd->jt[XF_free] = (void *) free;
+ gd->jt[XF_get_timer] = (void *)get_timer;
+ gd->jt[XF_udelay] = (void *)udelay;
+#if defined(CONFIG_I386) || defined(CONFIG_PPC)
+ gd->jt[XF_install_hdlr] = (void *) irq_install_handler;
+ gd->jt[XF_free_hdlr] = (void *) irq_free_handler;
+#endif
+}