summaryrefslogtreecommitdiff
path: root/src/cc1111
Commit message (Collapse)AuthorAge
* 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: Add support for 115200 baud serial ratesKeith Packard2012-11-30
| | | | | | Necessary for flashing skytraq chips 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: Share cc1111 reset/debug-start codeKeith Packard2012-11-30
| | | | | | | These sequences are very similar, differing only in whether the dbg clock line is toggled while holding reset low for a while. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shrink cc1111/ao_dbg.c a bitKeith Packard2012-11-30
| | | | | | Share code for osequence of ao_dbg_long_delay(); ao_dbg_send_bits() Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Share getnibble functionKeith Packard2012-11-30
| | | | | | | Two implementations of the same function, one in cc1111/ao_dbg.c and the other in core/ao_send_packet.c. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make TeleBalloon v1.1 build againKeith Packard2012-11-29
| | | | | | This is untested, but at least it builds now Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Leave interrupts disabled while checking for task to runKeith Packard2012-10-26
| | | | | | | Otherwise, we run the risk of an interrupt waking a task after we've decided to idle the CPU. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up cc1111 architecture macros a bit, removing cli/seiKeith Packard2012-10-25
| | | | | | Just reformatting changes, aside from the removal of cli/sei Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add ao_arch_block/release_interrupts to avr and cc1111Keith Packard2012-10-25
| | | | | | Stop using cli/sei for AVR, add replacement to __critical for cc1111 Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telefire: Add siren/strobe supportKeith Packard2012-10-10
| | | | | | | This also involved hacking up the code to allow for non-zero offsets for the pad firing and continuity pins. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Need to use 16-bit counts for ao_xmem functionsKeith Packard2012-09-14
| | | | | | | | | Trying to use 8-bit counts is a nice optimization which fails when the count is larger than 255, as is the case with clearing the flash block in the AT45 driver. This bug resulted in the inability to erase flights on TeleMetrum v1.0 boards. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Wait for IN dma complete on slave SPI sendKeith Packard2012-08-29
| | | | | | | SPI send double buffered, so the DMA completes one byte too early. Use the recv DMA to know when the SPI transfer is complete. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Mostly working SPI radio linkKeith Packard2012-08-28
| | | | | | | | This includes long delays to avoid overrunning the cc1111 input, otherwise it works pretty well. The delays mean that we can't capture the reply to a cmac command though, so more work is needed. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: When sharing radio DMA for AES, use it for in instead of outKeith Packard2012-08-28
| | | | | | | | | We look at the out_done value, but not the in_done value; if we use the radio DMA for out, we would have to use ao_radio_dma_done to check for completion. This way, we can ignore that value and use the existing ao_aes_dma_out_done value. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Fix ao_delay function and move from per-chip code to ao_task.cKeith Packard2012-08-28
| | | | | | | ao_delay hasn't been chip-specific for a long time, and it had a bug in not calling ao_clear_alarm. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up radio APIsKeith Packard2012-08-27
| | | | | | | Move api to ao_radio_cmac.h include file. Expose ao_radio_test as standard API. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: More SPI slave changes for cc1111 driverKeith Packard2012-08-27
| | | | | | Don't enable DMA in the other direction when doing slave transfers. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add SPI slave get/put macros to cc1111Keith Packard2012-08-27
| | | | | | Theese don't try to drive the chip select line Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow sharing of radio DMA with aes engineKeith Packard2012-08-26
| | | | | | otherwise, telefire doesn't have enough DMA channels. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make cc1111 SPI pins configurableKeith Packard2012-08-24
| | | | | | | Allow either USART in any configuration. Still only supports one SPI bus though. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Disable telefire 'pad' listener when testing radioKeith Packard2012-08-24
| | | | | | | Ensures that the radio testing won't block waiting for a firing mode packet to arrive. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/cc1111: Document SPI bus pin optionsKeith Packard2012-08-18
| | | | | | Just a comment in the source code about which pins each option selects. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Oops. Serial 1 stdin was busted by typoKeith Packard2012-08-07
| | | | | | | | | | A typo in the symbol used to enable stdin wakeups from serial1 caused the input to pend until some other wakeup occurred. This also makes the serial1 hw flow control pin selects in config 2 work right, although those aren't used by any current product Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Build ao_kalman.h from cc1111 subdirs as neededKeith Packard2012-08-05
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* src/cc1111: Enable SPI slave modeKeith Packard2012-08-05
| | | | | | This is untested... Signed-off-by: Keith Packard <keithp@keithp.com>
* src/cc1111: Allow serial0 without serial1Keith Packard2012-08-05
| | | | | | The ao_serial_speed structure is needed by serial0 too. Signed-off-by: Keith Packard <keithp@keithp.com>
* src/cc1111: Add ao_gpio_set macroKeith Packard2012-08-05
| | | | | | Allows general GPIO-using code to run on cc1111 Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add telefire-v0.1Keith Packard2012-07-29
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/cc1111: Fix serial 0 option 2 pins definitionsKeith Packard2012-07-29
| | | | | | tx/rx are 4/5, rts/cts are 2/3 Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Place STM config values at fixed addresses for re-useKeith Packard2012-07-17
| | | | | | | | Just like cc1111, stick the serial number and radio calibration values at known fixed addresses so that when re-flashing the board, we can go find the existing values. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make ao_tick_count visibleKeith Packard2012-07-16
| | | | | | | Necessary to fetch it when interrupts are already disabled as we can't call ao_time then. Signed-off-by: Keith Packard <keithp@keithp.com>
* src: Add explicit 'pin' argument to ao_enable_outputKeith Packard2012-07-14
| | | | | | | This lets the cc1111 use the atomic bit operation instead of a mask, which is immune to interrupt issues as well as being a shorter code sequence. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Have 'make clean' remove all programs, even old onesKeith Packard2012-07-11
| | | | | | | This makes sure that changing version numbers doesn't leave old compiled output lying around. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Force 434.550Mhz by connecting debug gnd and clk (trac #41)Keith Packard2012-07-10
| | | | | | | | Check for pin P2_2 low at startup and set the frequency to 434.550MHz. This value won't get written to flash, so rebooting again will restore the configured frequency. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Signal continuity over radio in pad mode (trac #40)Keith Packard2012-07-10
| | | | | | | This is especially useful for telemini which has no beeper, allowing you to hear the continuity signal while at the pad over the air. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Declare cc1111 accel_ref as unsigned so the math works1.0.9.6Keith Packard2012-06-28
| | | | | | | | If accel_ref is signed, then the careful shifting and dividing dance necessary to correct for changes in the relationship between the 5V and 3.3V supplies always generates zero. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: include targe SPI speed in get requestKeith Packard2012-06-27
| | | | | | | STM needs it to be provided when enabling the SPI device, so just fix AVR and cc1111 to do the same. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: ao_ignite.c is no longer cc1111 specificKeith Packard2012-06-26
| | | | | | Move it to core Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make cc1111 radio control functions staticKeith Packard2012-06-26
| | | | | | No need to publish these; they're all private to cc1111 Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up usage of port parametersKeith Packard2012-06-26
| | | | | | | | Make stm port parameters always be pointers; this avoids the confusion where some macros took '&port' and others took a bare 'port', and also unifies code to run on other processors in a consistent fashion. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Remove unused AES code from teledongle and tidongleKeith Packard2012-06-04
| | | | | | Leave this out as neither of these products need it. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Remove accel_ref from pre v1.1 TM firmwareKeith Packard2012-06-04
| | | | | | | V1.0 needs RAM space for flash buffer, leaving too little room for this extra data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add support for MegaAccel daughter card.Keith Packard2012-06-01
| | | | | | | | | Switches all acceleration computation to using the MegaAccel accelerometer to ensure support for high-g flights. MPU6000 values continue to be logged as normal Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up ADC selection for cc1111Keith Packard2012-05-28
| | | | | | Depend directly on product defines instead of trying to guess Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: All cc1111 products have a radioKeith Packard2012-05-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make telemini-v1.0 compile with new ao_data structureKeith Packard2012-05-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make telemetrum-v1.1 compile with new ao_data structureKeith Packard2012-05-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Starting to write cc1120 driverKeith Packard2012-04-17
| | | | | | | This does "something" in radio test mode, appearing to generate a 730MHz signal. 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>