Merge remote-tracking branch 'u-boot-imx/master'
[platform/kernel/u-boot.git] / include / common.h
index be9c278..b23e90b 100644 (file)
@@ -39,10 +39,10 @@ typedef volatile unsigned char      vu_char;
 #include <linux/bitops.h>
 #include <linux/types.h>
 #include <linux/string.h>
-#include <linux/compiler.h>
+#include <linux/stringify.h>
 #include <asm/ptrace.h>
 #include <stdarg.h>
-#if defined(CONFIG_PCI) && (defined(CONFIG_4xx) && !defined(CONFIG_AP1000))
+#if defined(CONFIG_PCI) && defined(CONFIG_4xx)
 #include <pci.h>
 #endif
 #if defined(CONFIG_8xx)
@@ -195,18 +195,6 @@ typedef void (interrupt_handler_t)(void *);
 # endif
 #endif
 
-#ifndef CONFIG_SERIAL_MULTI
-
-#if defined(CONFIG_8xx_CONS_SMC1) || defined(CONFIG_8xx_CONS_SMC2) \
- || defined(CONFIG_8xx_CONS_SCC1) || defined(CONFIG_8xx_CONS_SCC2) \
- || defined(CONFIG_8xx_CONS_SCC3) || defined(CONFIG_8xx_CONS_SCC4)
-
-#define CONFIG_SERIAL_MULTI    1
-
-#endif
-
-#endif /* CONFIG_SERIAL_MULTI */
-
 /*
  * General Purpose Utilities
  */
@@ -287,6 +275,19 @@ int        print_buffer (ulong addr, void* data, uint width, uint count, uint linelen);
 /* common/main.c */
 void   main_loop       (void);
 int run_command(const char *cmd, int flag);
+
+/**
+ * Run a list of commands separated by ; or even \0
+ *
+ * Note that if 'len' is not -1, then the command does not need to be nul
+ * terminated, Memory will be allocated for the command in that case.
+ *
+ * @param cmd  List of commands to run, each separated bu semicolon
+ * @param len  Length of commands excluding terminator if known (-1 if not)
+ * @param flag Execution flags (CMD_FLAG_...)
+ * @return 0 on success, or != 0 on error.
+ */
+int run_command_list(const char *cmd, int len, int flag);
 int    readline        (const char *const prompt);
 int    readline_into_buffer(const char *const prompt, char *buffer,
                        int timeout);
@@ -375,7 +376,7 @@ void        pci_init      (void);
 void   pci_init_board(void);
 void   pciinfo       (int, int);
 
-#if defined(CONFIG_PCI) && (defined(CONFIG_4xx) && !defined(CONFIG_AP1000))
+#if defined(CONFIG_PCI) && defined(CONFIG_4xx)
     int           pci_pre_init        (struct pci_controller *);
     int           is_pci_host         (struct pci_controller *);
 #endif
@@ -658,7 +659,7 @@ static inline ulong get_ddr_freq(ulong dummy)
 }
 #endif
 
-#if defined(CONFIG_4xx) || defined(CONFIG_IOP480)
+#if defined(CONFIG_4xx)
 #  if defined(CONFIG_440)
 #      if defined(CONFIG_440SPE)
         unsigned long determine_sysper(void);
@@ -817,6 +818,13 @@ void       fputc(int file, const char c);
 int    ftstc(int file);
 int    fgetc(int file);
 
+/* lib/gzip.c */
+int gzip(void *dst, unsigned long *lenp,
+               unsigned char *src, unsigned long srclen);
+int zzip(void *dst, unsigned long *lenp, unsigned char *src,
+               unsigned long srclen, int stoponerr,
+               int (*func)(unsigned long, unsigned long));
+
 /* lib/net_utils.c */
 #include <net.h>
 static inline IPaddr_t getenv_IPaddr(char *var)
@@ -959,7 +967,7 @@ int cpu_release(int nr, int argc, char * const argv[]);
  */
 #define DEFINE_ALIGN_BUFFER(type, name, size, align)                   \
        static char __##name[roundup(size * sizeof(type), align)]       \
-                       __aligned(align);                               \
+                       __attribute__((aligned(align)));                                \
                                                                        \
        static type *name = (type *)__##name
 #define DEFINE_CACHE_ALIGN_BUFFER(type, name, size)                    \