summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cc1111/ao_arch.h4
-rw-r--r--src/kernel/ao_stdio.c4
-rw-r--r--src/kernel/ao_task.h3
-rw-r--r--src/lambdakey-v1.0/Makefile2
-rw-r--r--src/stm/ao_serial_stm.c8
-rw-r--r--src/stmf0/Makefile-stmf0.defs2
6 files changed, 15 insertions, 8 deletions
diff --git a/src/cc1111/ao_arch.h b/src/cc1111/ao_arch.h
index bacfabb8..937e6d0c 100644
--- a/src/cc1111/ao_arch.h
+++ b/src/cc1111/ao_arch.h
@@ -234,6 +234,10 @@ ao_button_get(uint16_t timeout) __critical;
void
ao_button_clear(void) __critical;
+/* console I/O funcs */
+#define ao_getchar getchar
+#define ao_putchar putchar
+
/* ao_string.c */
void
diff --git a/src/kernel/ao_stdio.c b/src/kernel/ao_stdio.c
index f0ee0a14..dc09b5c7 100644
--- a/src/kernel/ao_stdio.c
+++ b/src/kernel/ao_stdio.c
@@ -84,7 +84,7 @@ __pdata int8_t ao_cur_stdio;
#endif
void
-putchar(char c)
+ao_putchar(char c)
{
#if LOW_LEVEL_DEBUG
if (!ao_cur_task) {
@@ -110,7 +110,7 @@ flush(void)
__xdata uint8_t ao_stdin_ready;
char
-getchar(void) __reentrant
+ao_getchar(void) __reentrant
{
int c;
int8_t stdio;
diff --git a/src/kernel/ao_task.h b/src/kernel/ao_task.h
index 30b018ff..7549b598 100644
--- a/src/kernel/ao_task.h
+++ b/src/kernel/ao_task.h
@@ -44,6 +44,9 @@ struct ao_task {
ao_arch_task_members /* any architecture-specific fields */
uint8_t task_id; /* unique id */
__code char *name; /* task name */
+#ifdef NEWLIB
+ int __errno; /* storage for errno in newlib libc */
+#endif
#if HAS_TASK_QUEUE
struct ao_list queue;
struct ao_list alarm_queue;
diff --git a/src/lambdakey-v1.0/Makefile b/src/lambdakey-v1.0/Makefile
index 6b819ffb..4eb045b6 100644
--- a/src/lambdakey-v1.0/Makefile
+++ b/src/lambdakey-v1.0/Makefile
@@ -54,7 +54,7 @@ MAP=$(PROG).map
NEWLIB=/local/newlib-mini
MAPFILE=-Wl,-M=$(MAP)
LDFLAGS=-L../stmf0 -L$(NEWLIB)/arm-none-eabi/lib/thumb/v6-m/ -Wl,-Tlambda.ld $(MAPFILE) -nostartfiles
-AO_CFLAGS=-I. -I../stmf0 -I../kernel -I../drivers -I.. -I../scheme -isystem $(NEWLIB)/arm-none-eabi/include
+AO_CFLAGS=-I. -I../stmf0 -I../kernel -I../drivers -I.. -I../scheme -isystem $(NEWLIB)/arm-none-eabi/include -DNEWLIB
PROGNAME=lambdakey-v1.0
PROG=$(PROGNAME)-$(VERSION).elf
diff --git a/src/stm/ao_serial_stm.c b/src/stm/ao_serial_stm.c
index ef562313..2afee5b5 100644
--- a/src/stm/ao_serial_stm.c
+++ b/src/stm/ao_serial_stm.c
@@ -60,13 +60,13 @@ _ao_usart_cts(struct ao_stm_usart *usart)
#endif
static void
-_ao_usart_rx(struct ao_stm_usart *usart, int stdin)
+_ao_usart_rx(struct ao_stm_usart *usart, int is_stdin)
{
if (usart->reg->sr & (1 << STM_USART_SR_RXNE)) {
if (!ao_fifo_full(usart->rx_fifo)) {
ao_fifo_insert(usart->rx_fifo, usart->reg->dr);
ao_wakeup(&usart->rx_fifo);
- if (stdin)
+ if (is_stdin)
ao_wakeup(&ao_stdin_ready);
#if HAS_SERIAL_SW_FLOW
/* If the fifo is nearly full, turn off RTS and wait
@@ -84,9 +84,9 @@ _ao_usart_rx(struct ao_stm_usart *usart, int stdin)
}
static void
-ao_usart_isr(struct ao_stm_usart *usart, int stdin)
+ao_usart_isr(struct ao_stm_usart *usart, int is_stdin)
{
- _ao_usart_rx(usart, stdin);
+ _ao_usart_rx(usart, is_stdin);
if (!_ao_usart_tx_start(usart))
usart->reg->cr1 &= ~(1<< STM_USART_CR1_TXEIE);
diff --git a/src/stmf0/Makefile-stmf0.defs b/src/stmf0/Makefile-stmf0.defs
index f2c53499..fa6e6e86 100644
--- a/src/stmf0/Makefile-stmf0.defs
+++ b/src/stmf0/Makefile-stmf0.defs
@@ -4,7 +4,7 @@ endif
include $(TOPDIR)/Makedefs
-vpath % $(TOPDIR)/stmf0:$(TOPDIR)/product:$(TOPDIR)/drivers:$(TOPDIR)/kernel:$(TOPDIR)/util:$(TOPDIR)/kalman:$(TOPDIR)/aes:$(TOPDIR):$(TOPDIR)/math:$(TOPDIR)/lisp
+vpath % $(TOPDIR)/stmf0:$(TOPDIR)/product:$(TOPDIR)/drivers:$(TOPDIR)/kernel:$(TOPDIR)/util:$(TOPDIR)/kalman:$(TOPDIR)/aes:$(TOPDIR):$(TOPDIR)/math:$(TOPDIR)/scheme
vpath make-altitude $(TOPDIR)/util
vpath make-kalman $(TOPDIR)/util
vpath kalman.5c $(TOPDIR)/kalman