]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - api/api.c
tegra: Add Tamonten Evaluation Carrier support
[karo-tx-uboot.git] / api / api.c
index 19c71540c0387f46dc480989404ed6394ee7b9cb..a3bf60ad6280d0b90cdc030f595166d583370752 100644 (file)
--- a/api/api.c
+++ b/api/api.c
@@ -24,9 +24,6 @@
  */
 
 #include <config.h>
-
-#if defined(CONFIG_API)
-
 #include <command.h>
 #include <common.h>
 #include <malloc.h>
@@ -39,9 +36,6 @@
 #define DEBUG
 #undef DEBUG
 
-/* U-Boot routines needed */
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
-
 /*****************************************************************************
  *
  * This is the API core.
@@ -534,7 +528,7 @@ static int API_env_enum(va_list ap)
 
                for (i = 0; env_get_char(i) != '\0'; i = n + 1) {
                        for (n = i; env_get_char(n) != '\0'; ++n) {
-                               if (n >= CFG_ENV_SIZE) {
+                               if (n >= CONFIG_ENV_SIZE) {
                                        /* XXX shouldn't we set *next = NULL?? */
                                        return 0;
                                }
@@ -559,6 +553,50 @@ static int API_env_enum(va_list ap)
        return 0;
 }
 
+/*
+ * pseudo signature:
+ *
+ * int API_display_get_info(int type, struct display_info *di)
+ */
+static int API_display_get_info(va_list ap)
+{
+       int type;
+       struct display_info *di;
+
+       type = va_arg(ap, int);
+       di = va_arg(ap, struct display_info *);
+
+       return display_get_info(type, di);
+}
+
+/*
+ * pseudo signature:
+ *
+ * int API_display_draw_bitmap(ulong bitmap, int x, int y)
+ */
+static int API_display_draw_bitmap(va_list ap)
+{
+       ulong bitmap;
+       int x, y;
+
+       bitmap = va_arg(ap, ulong);
+       x = va_arg(ap, int);
+       y = va_arg(ap, int);
+
+       return display_draw_bitmap(bitmap, x, y);
+}
+
+/*
+ * pseudo signature:
+ *
+ * void API_display_clear(void)
+ */
+static int API_display_clear(va_list ap)
+{
+       display_clear();
+       return 0;
+}
+
 static cfp_t calls_table[API_MAXCALL] = { NULL, };
 
 /*
@@ -622,6 +660,9 @@ void api_init(void)
        calls_table[API_ENV_GET] = &API_env_get;
        calls_table[API_ENV_SET] = &API_env_set;
        calls_table[API_ENV_ENUM] = &API_env_enum;
+       calls_table[API_DISPLAY_GET_INFO] = &API_display_get_info;
+       calls_table[API_DISPLAY_DRAW_BITMAP] = &API_display_draw_bitmap;
+       calls_table[API_DISPLAY_CLEAR] = &API_display_clear;
        calls_no = API_MAXCALL;
 
        debugf("API initialized with %d calls\n", calls_no);
@@ -665,5 +706,3 @@ void platform_set_mr(struct sys_info *si, unsigned long start, unsigned long siz
                        return;
                }
 }
-
-#endif /* CONFIG_API */