summaryrefslogtreecommitdiff
path: root/src/lpc/ao_usb_lpc.c
Commit message (Collapse)AuthorAge
* altos: Mark local functions 'static'Keith Packard2019-02-18
| | | | | | Working towards supporting -Wmissing-prototypes Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Eliminate 'pin' field from GPIO functionsKeith Packard2018-10-13
| | | | | | | This was used with the 8051 bit-addressing mode to provide single-instruction access to GPIO pins. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Remove 8051 address space specifiersKeith Packard2018-10-13
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Make sure USB pull-up is held low at boot for 'a while'Keith Packard2018-10-08
| | | | | | | Add a delay loop to make sure the host sees the pull-up low for long enough. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make CDC ACM 'line coding' publicKeith Packard2017-05-04
| | | | | | This allows other systems to see what baud rate the host has requested. Signed-off-by: Keith Packard <keithp@keithp.com>
* Switch from GPLv2 to GPLv2+Keith Packard2016-07-12
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Handle USB reset by resetting internal stateKeith Packard2016-06-10
| | | | | | | Just like stmf0, this clears internal state at USB reset time so the driver can survive host OS reboots. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Double buffer USB data transfersKeith Packard2015-02-05
| | | | | | | | | | 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
* altos/lpc: Clean up USB endpoint access functionsKeith Packard2015-02-05
| | | | | | | | | 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>
* Revert LPC usb performance improvementsKeith Packard2015-02-05
| | | | | | | There's something screwy going on, sticking garbage in the input buffer at boot time Signed-off-by: Keith Packard <keithp@keithp.com>
* Revert "altos/lpc: Fix double-buffered USB changes"Keith Packard2015-02-05
| | | | This reverts commit 41a0604ad1ea1a03e2db7d41731dbadf466b45db.
* altos/lpc: Fix double-buffered USB changesKeith Packard2015-01-22
| | | | | | | | 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>
* Set version to 1.5.9.11.5.9.1Keith Packard2015-01-16
|
* altos/lpc: HAS_USB_CONNECT has been changed to mean a custom pinKeith Packard2014-06-05
| | | | | | | | 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>
* 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>