| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
There are just too many limitations in when interrupts are delivered
to make them useful. Instead, just drive the SPI directly with the
CPU. At higher spi speeds (6Mhz or more), it's probably faster to do
it this way anyways.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
| |
This allocates twice the space in the USB memory so that transactions
can be double buffered without using separate CPU memory.
Signed-off-by: Keith Packard <keithp@keithp.com>
Conflicts:
src/lpc/ao_usb_lpc.c
|
|
|
|
|
|
|
|
|
| |
The USB device endpoints can have two pointers in them, but we use
only the first. Fix the access functions to take an index as to which
we want so that we can disable the other address registers with them
instead of requiring open-coded access.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
There's something screwy going on, sticking garbage in the input
buffer at boot time
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
This reverts commit 41a0604ad1ea1a03e2db7d41731dbadf466b45db.
|
|
|
|
|
|
|
|
| |
These got merged when we were down in Auckland, but before they'd been
finished. Transmitting worked fine, but receiving was mis-configuring
the OUT buffer size in the hardware.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
| |
This improves performance for SPI transfers, while allowing other
tasks to get work done during longer SPI transfers.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
JTAG is enabled by default, making those pins not support GPIO unless
specifically configured.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This matches STM
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
| |
Instead of blocking on PQT, just set up the receiver to start going
and when the first bit interrupt comes in, grab the SPI bus if
possible and configure it for reception. This improves sensitivity in
the radio by a significant amount while making the code conceptually a
bit nicer.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
The LPC stuff isn't actually very useful and TeleGPS uses a custom pin
instead, and was using HAS_USB_CONNECT to mean the same thing. That
wasn't good.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Don't require the application to provide AO_NUM_ADC when AO_ADC_NUM is
computed automatically.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
These two files were absolutely identical, so share them by moving
under kernel instead.x
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
Instead of just "knowing" that ao_boot_loader will be passed zero when
the application wants to get back to the boot loader, explicitly
define the values so that both sides always agree.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
If we ever use something smaller than this, we'll need to figure out
how to tell how much memory the device has.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This works on everything with a beeper except TeleMetrum v1.0 which
just doesn't have enough flash space for the code.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Was using wrong types
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This lets other bits of the code know when USB has been connected.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This provides lat/lon/alt in fewer bytes while improving precision.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Now that the build completes with no warnings, make future warnings
into errors.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Would maek using these values pretty hard.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Check for NOCONFIGURE bit was missing parens
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Unused varibles, functions and parameters.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
The host won't keep asking for SETUP IN packets once it has received
the amount of data requested, so check to see if we've sent that much
and flip back to IDLE state if so.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
| |
This leaves most of the device configured across USB reset, which
appears to help when sending a IN reply to the first SETUP packet;
without this change, the IN reply would always get a length of 0,
which is fine for SET_ADDRESS, but not for GET_DESCRIPTOR_DEVICE,
which OS X appears to send before setting the address (go figure).
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Just add some wild cards on the ends of each section name in case the
toolchain changes names in the future.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
| |
We were only using the low 8 bits of the setup packet reply max len,
which meant that if the other side sent a weird max len (as Windows 7
does), then we'd truncate our setup reply to whatever was in the low 8
bits of that value.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Remove the software version string from the product name
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
The .ihx version can be processed by the java loader
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Switch over to the installed pdclib everywhere
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
This allows the user to specify which compiler to use for each target
CPU. Also checks to make sure the arm compiler supports -m0 and -m3
cpu type flags. The build now actually uses the specified compilers too.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
The production boards are the same as the modified v0.1 boards
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This sticks a barrier in the CPU to prevent using the wrong stack
register past the change.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Instead of waking up after every character, wait until the FIFO is
empty to reduce overhead
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| | |
The default for lpc has been raised to 512 bytes, but Em doesn't have
enough RAM for that.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| | |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Burst mode doesn't stop after one round of conversions, so we end up
getting incorrect values in whatever the last conversion register is.
Just use single conversions and take an interrupt per channel.
Also, slow down the ADC so that our values are more stable -- just
need to make sure we get the whole conversion sequence done 100 times
a second.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| | |
Instead of waking up after every character, wait until the FIFO is
empty to reduce overhead
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| | |
The default for lpc has been raised to 512 bytes, but Em doesn't have
enough RAM for that.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|/
|
|
|
|
| |
This lets existing serial port users find the right function.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Support the USB boot loader, add USB pull-up support.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
| |
The nvic iser and icer registers read value indicates all enabled
interrupts, icer writes disable the set interrupts. Re-writing icer
with the current value ends up disabling all interrupts, not exactly
what we wanted.
Signed-off-by: Keith Packard <keithp@keithp.com>
|