summaryrefslogtreecommitdiff
path: root/src/core/ao_stdio.c
Commit message (Collapse)AuthorAge
* altos: Rename 'core' to 'kernel'Keith Packard2014-04-05
| | | | | | | core remains a bad name to use -- dirvish skips files (and directories, it seems) with that name. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Don't require projects to define PACKET_HAS_SLAVEKeith Packard2014-03-09
| | | | | | | Really, most don't need it, and whinging about not having it defined isn't useful. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Eliminate stdio looping when system has a single stdio sourceKeith Packard2013-05-07
| | | | | | No need to loop if there's only one Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Do not release interrupts from any pollchar functionKeith Packard2013-03-31
| | | | | | | | | | | getchar relies on interrupts being blocked across the pollchar calls and into the sleep call or it may go to sleep with data pending. This prefixes all pollchar functions with _ to indicate that they are to be called with interrupts blocked and eliminates all interrupt manipulation calls from within the pollchar functions. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: fix functions calling pollchar to use 'int' to hold the valueKeith Packard2012-12-07
| | | | | | | | AO_READ_AGAIN doesn't fit in a char anymore now that stdio is 8-bit clean, everyone using pollchar must use an 'int' variable to capture the whole value from pollchar. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make stdio 8-bit clean by making pollchar return intKeith Packard2012-11-30
| | | | | | | | | | 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>
* altos: Replace __critical usage with ao_arch_critical as neededKeith Packard2012-10-25
| | | | | | | | | | | | | sdcc offers __critical as a machine-independent way to block interrupts, but as gcc doesn't, we need to use a compiler-independent construct instead. ao_arch_critical has been around since the AVR port, but some old __critical usages remained. This fixes a bunch of random hangs when communicating with MM over USB or the radio as the various stdio loops were running without interrupts blocked between the test and the sleep. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make telescience-v0.1 build with new ao_data structKeith Packard2012-05-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Check all USE_SERIAL_*_STDIO when computing AO_NUM_STDIOSKeith Packard2012-04-14
| | | | | | | | AO_NUM_STDIOS is allocated based on the total number of possible stdio values. Now that multiple serial stdio are possible, make sure to check all of them. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Massive product config cleanupKeith Packard2012-04-14
| | | | | | | | Support multiple serial ports more cleanly Split out parts of ao.h into separate feature header files Signed-off-by: Keith Packard <keithp@keithp.com>
* When debugging, send pre-init output to ao_debug_outKeith Packard2012-03-28
| | | | | | | Before tasking is running, send output to ao_debug_out to help debug system initialization. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Restructure altos build to prepare for multi-arch supportKeith Packard2011-08-25
Split out sources into separate directories: core: architecture and product independent bits cc1111: cc1111-specific code drivers: architecture independent drivers product: product-specific sources and Makefile fragments util: scripts for building stuff This should have no effect on the built products, but testing is encouraged Signed-off-by: Keith Packard <keithp@keithp.com>