summaryrefslogtreecommitdiff
path: root/src/lpc/ao_usb_lpc.c
Commit message (Collapse)AuthorAge
* altos: Expose ao_usb_running globallyKeith Packard2014-02-18
| | | | | | This lets other bits of the code know when USB has been connected. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up warnings for LPC productsKeith Packard2013-12-20
| | | | | | Unused varibles, functions and parameters. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Stop sending SETUP IN when the requested size is reachedKeith Packard2013-12-19
| | | | | | | | 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>
* altos/lpc: Reset less of the device on USB reset.Keith Packard2013-12-18
| | | | | | | | | | 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>
* altos: Use all 16 bits of setup packet len when limiting reply lenKeith Packard2013-12-17
| | | | | | | | | 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>
* altos/lpc: Add boot loaderKeith Packard2013-06-24
| | | | | | Support the USB boot loader, add USB pull-up support. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Remove ao_usb_task structureKeith Packard2013-06-22
| | | | | | It's not used Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Get the IRC turned off after boot timeKeith Packard2013-06-17
| | | | | | | This involved carefully moving the USB away from the IRC before turning it off. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Force idle mode if USB gets an address during boot timeKeith Packard2013-05-19
| | | | | | This lets EasyMini be booted to idle mode by simply plugging it into USB. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Don't use loader to place USB endpoint data in USB ramKeith Packard2013-05-19
| | | | | | | Instead, just assign a fixed address in registers.ld. This avoids a confusing section in the elf file. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Stick USB control structure in USB memoryKeith Packard2013-05-18
| | | | | | | No reason to have that in regular ram, and it means we've got space for large enough stacks now Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Get USB workingKeith Packard2013-05-17
| | | | | | | The lpc demo now has a USB command line. Also allocates system stack so we know when ram is tight at build time Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Start adding USB register definitionsKeith Packard2013-05-17
Just the bare struct, no defines yet. Signed-off-by: Keith Packard <keithp@keithp.com>