summaryrefslogtreecommitdiff
path: root/src/drivers/ao_packet.c
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2012-11-30 16:01:07 -0800
committerKeith Packard <keithp@keithp.com>2012-11-30 16:01:07 -0800
commit0b65402361f36a0c722977bcb63edb26fda0db28 (patch)
tree435d23c147829f11aac67fd6c30c74dd96f76e8e /src/drivers/ao_packet.c
parent0fa9ce23dd63846337872d6d666a469512614d07 (diff)
altos: Make stdio 8-bit clean by making pollchar return int
We were stealing one value (0xff) in the return value from pollchar to indicate 'not ready yet'. Instead of doing that, use the integer value -1 and have pollchar return an int instead of a char. That necessitated cleaning a few other bits to make sure that 0xff wouldn't get promoted to -1 on accident. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/drivers/ao_packet.c')
-rw-r--r--src/drivers/ao_packet.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/drivers/ao_packet.c b/src/drivers/ao_packet.c
index 3c1e7a18..91319923 100644
--- a/src/drivers/ao_packet.c
+++ b/src/drivers/ao_packet.c
@@ -21,8 +21,8 @@ __xdata struct ao_packet_recv ao_rx_packet;
__xdata struct ao_packet ao_tx_packet;
__pdata uint8_t ao_packet_rx_len, ao_packet_rx_used, ao_packet_tx_used;
-static __xdata char tx_data[AO_PACKET_MAX];
-static __xdata char rx_data[AO_PACKET_MAX];
+static __xdata uint8_t tx_data[AO_PACKET_MAX];
+static __xdata uint8_t rx_data[AO_PACKET_MAX];
static __pdata uint8_t rx_seq;
__xdata struct ao_task ao_packet_task;
@@ -169,7 +169,7 @@ ao_packet_putchar(char c) __reentrant
tx_data[ao_packet_tx_used++] = c;
}
-char
+int
ao_packet_pollchar(void)
{
/* No need to block interrupts, all variables here