Drop unneeded #includes, add EXIT_SUCCESS/EXIT_FAILURE (trivial).
[coreboot.git] / payloads / libpayload / include / libpayload.h
index 8f1c12e4df337ba419e8d63cfc43cd7edd2c8033..611f65e43238f1513c54987bf7a60b30a596d936 100644 (file)
@@ -27,8 +27,8 @@
  * SUCH DAMAGE.
  */
 
-#ifndef LIBPAYLOAD_H
-#define LIBPAYLOAD_H
+#ifndef _LIBPAYLOAD_H
+#define _LIBPAYLOAD_H
 
 #include <autoconf.h>
 #include <stddef.h>
 #define MAX(a,b) ((a) > (b) ? (a) : (b))
 #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
 
+#define LITTLE_ENDIAN  1234
+#define BIG_ENDIAN     4321
+#ifdef CONFIG_TARGET_I386
+#define BYTE_ORDER     LITTLE_ENDIAN
+#else
+#define BYTE_ORDER     BIG_ENDIAN
+#endif
+
+#define EXIT_SUCCESS 0
+#define EXIT_FAILURE 1
+
+#define RAND_MAX 0x7fffffff
+
 /* Some NVRAM byte definitions */
 #define NVRAM_RTC_SECONDS        0
 #define NVRAM_RTC_MINUTES        2
@@ -49,7 +62,7 @@
 #define NVRAM_RTC_MONTH          8
 #define NVRAM_RTC_YEAR           9
 
-/* drivers/cmos.c */
+/* drivers/nvram.c */
 u8 nvram_read(u8 addr);
 void nvram_write(u8 val, u8 addr);
 
@@ -64,15 +77,17 @@ void serial_putchar(unsigned char c);
 int serial_havechar(void);
 int serial_getchar(void);
 
-/* drivers/serial.c */
-void vga_cursor_enable(int state);
-void vga_clear_line(uint8_t row, uint8_t ch, uint8_t attr);
-void vga_fill(uint8_t ch, uint8_t attr);
-void vga_clear(void);
-void vga_putc(uint8_t row, uint8_t col, unsigned int c);
-void vga_putchar(unsigned int ch);
-void vga_move_cursor(int x, int y);
-void vga_init(void);
+/* drivers/speaker.c */
+void speaker_enable(u16 freq);
+void speaker_disable(void);
+void speaker_tone(u16 freq, unsigned int duration);
+
+/* video/video.c */
+int video_console_init(void);
+void video_console_putchar(unsigned int ch);
+void video_console_putc(u8 row, u8 col, unsigned int ch);
+void video_console_clear(void);
+void video_console_cursor_enable(int state);
 
 /* libc/console.c */
 void console_init(void);
@@ -80,15 +95,28 @@ int putchar(int c);
 int puts(const char *s);
 int havekey(void);
 int getchar(void);
+int getchar_timeout(int *ms);
 
 extern int last_putchar;
 
 #define havechar havekey
 
 /* libc/ctype.c */
-int isspace(int c);
+int isalnum(int c);
+int isalpha(int c);
+int isascii(int c);
+int isblank(int c);
+int iscntrl(int c);
 int isdigit(int c);
+int isgraph(int c);
+int islower(int c);
+int isprint(int c);
+int ispunct(int c);
+int isspace(int c);
+int isupper(int c);
+int isxdigit(int c);
 int tolower(int c);
+int toupper(int c);
 
 /* libc/ipchecksum.c */
 unsigned short ipchksum(const unsigned short *ptr, unsigned long nbytes);
@@ -102,6 +130,11 @@ void *realloc(void *ptr, size_t size);
 /* libc/lib.c */
 int bcd2dec(int b);
 int dec2bcd(int d);
+int abs(int j);
+long int labs(long int j);
+long long int llabs(long long int j);
+u8 bin2hex(u8 b);
+u8 hex2bin(u8 h);
 
 /* libc/memory.c */
 void *memset(void *s, int c, size_t n);
@@ -110,12 +143,32 @@ void *memmove(void *dst, const void *src, size_t n);
 int memcmp(const char *s1, const char *s2, size_t len);
 
 /* libc/printf.c */
+int snprintf(char *str, size_t size, const char *fmt, ...);
 int sprintf(char *str, const char *fmt, ...);
 int vsnprintf(char *str, size_t size, const char *fmt, va_list ap);
 int vsprintf(char *str, const char *fmt, va_list ap);
 int printf(const char *fmt, ...);
 int vprintf(const char *fmt, va_list ap);
 
+/* libc/rand.c */
+int rand_r(unsigned int *seed);
+int rand(void);
+void srand(unsigned int seed);
+
+/* libc/sha1.c */
+#define SHA1_BLOCK_LENGTH      64
+#define SHA1_DIGEST_LENGTH     20
+typedef struct {
+       u32 state[5];
+       u64 count;
+       u8 buffer[SHA1_BLOCK_LENGTH];
+} SHA1_CTX;
+void SHA1Init(SHA1_CTX *context);
+void SHA1Transform(u32 state[5], const u8 buffer[SHA1_BLOCK_LENGTH]);
+void SHA1Update(SHA1_CTX *context, const u8 *data, size_t len);
+void SHA1Final(u8 digest[SHA1_DIGEST_LENGTH], SHA1_CTX *context);
+u8 *sha1(const u8 *data, size_t len, u8 *buf);
+
 /* libc/string.c */
 size_t strnlen(const char *str, size_t maxlen);
 size_t strlen(const char *str);
@@ -138,6 +191,7 @@ void lib_get_sysinfo(void);
 /* Timer functions - defined by each architecture. */
 unsigned int get_cpu_speed(void);
 void ndelay(unsigned int n);
+void udelay(unsigned int n);
 void mdelay(unsigned int n);
 void delay(unsigned int n);