summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Reinauer <stepan@coresystems.de>2008-08-19 17:47:18 +0000
committerStefan Reinauer <stepan@openbios.org>2008-08-19 17:47:18 +0000
commit6e51ceeb2b5eb585fcb244d50b90eb16e97b0fba (patch)
tree139779c145c2c60faa96d675053f450f2445dd3f
parent0e4671e30575ac0f12c482d128a146d85dd27987 (diff)
* add readline()
* add fatal() Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de> Acked-by: Jordan Crouse <jordan.crouse@amd.com> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3522 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
-rw-r--r--payloads/libpayload/include/libpayload.h5
-rw-r--r--payloads/libpayload/libc/Makefile.inc1
-rw-r--r--payloads/libpayload/libc/lib.c12
3 files changed, 18 insertions, 0 deletions
diff --git a/payloads/libpayload/include/libpayload.h b/payloads/libpayload/include/libpayload.h
index 516bcc38ff..b7f7fe0276 100644
--- a/payloads/libpayload/include/libpayload.h
+++ b/payloads/libpayload/include/libpayload.h
@@ -298,5 +298,10 @@ void delay(unsigned int n);
/* i386/util.S */
#define abort() halt()
void halt(void) __attribute__ ((noreturn));
+void fatal(const char* msg) __attribute__ ((noreturn));
+
+/* libc/readline.c */
+char * readline(const char * prompt);
+int getline(char *buffer, int len)
#endif
diff --git a/payloads/libpayload/libc/Makefile.inc b/payloads/libpayload/libc/Makefile.inc
index bc82c9bc39..a4cd1bce6f 100644
--- a/payloads/libpayload/libc/Makefile.inc
+++ b/payloads/libpayload/libc/Makefile.inc
@@ -31,3 +31,4 @@
TARGETS-$(CONFIG_LIBC) += libc/malloc.o libc/printf.o libc/console.o libc/string.o
TARGETS-$(CONFIG_LIBC) += libc/memory.o libc/ctype.o libc/ipchecksum.o libc/lib.o
TARGETS-$(CONFIG_LIBC) += libc/rand.o libc/time.o libc/lar.o libc/exec.o
+TARGETS-$(CONFIG_LIBC) += libc/readline.o
diff --git a/payloads/libpayload/libc/lib.c b/payloads/libpayload/libc/lib.c
index e7eed68eb6..3f82acf378 100644
--- a/payloads/libpayload/libc/lib.c
+++ b/payloads/libpayload/libc/lib.c
@@ -101,3 +101,15 @@ u8 hex2bin(u8 h)
('A' <= h && h <= 'F') ? (h - 'A' + 10) : \
('a' <= h && h <= 'f') ? (h - 'a' + 10) : 0);
}
+
+/**
+ * Enters HALT state, after printing msg
+ *
+ * @param msg message to print
+ */
+void fatal(const char *msg)
+{
+ printf("%s",msg);
+ halt();
+}
+