aboutsummaryrefslogtreecommitdiffstats
path: root/Projects/AVRISP/Lib/PDIProtocol.c
Commit message (Collapse)AuthorAgeFilesLines
* Make seperate ISP, PDI and TPI folders in the AVRISP project Lib ↵Dean Camera2009-12-231-376/+0
| | | | subdirectory to hold each protocol's files.
* Seperate out XMEGA and TINY NVM routines into seperate files.Dean Camera2009-12-231-29/+29
|
* Use default NVM base address in the AVRISP programmer project in case the ↵Dean Camera2009-12-161-1/+1
| | | | host programmer software doesn't set it correctly.
* Complete initial working revision of PDI programming in the AVRISP project ↵Dean Camera2009-12-151-38/+28
| | | | (XMEGAs can now be programmed by the firmware).
* Fix a bug in the Still Image Host Class driver where the returned block ↵Dean Camera2009-12-151-7/+25
| | | | | | status code was being truncated. Add programming support to the AVRISP project's PDI programming mode; paged memory writes are not currently functional.
* Add Lock/Fuse byte programming support to the AVRISP PDI programming ↵Dean Camera2009-12-151-5/+47
| | | | protocol code.
* Fix error in AVRISP programmer when repeatedly using PDI mode via the ↵Dean Camera2009-12-151-3/+7
| | | | hardware USART due to the SendByte routine not clearing the Transmit Complete USART flag.
* Add Doxygen documentation to the completed portions of the PDI programming ↵Dean Camera2009-12-141-1/+4
| | | | protocol in the AVRISP project.
* Use the PDI REPEAT instruction in the PDI programmer code to reduce protocol ↵Dean Camera2009-12-141-1/+1
| | | | overhead and greatly improve transfer throughput. Switch bit-bang USART in the AVRISP project to Timer 1, so that Timer 0 can be used for hardware timeouts while waiting for the NVM bus or controller to become ready.
* Added memory erase handling to the PDI protocol in the AVRISP project.Dean Camera2009-12-141-1/+21
|
* Fix NVM commands so that memory reads and CRC generations now work correctly ↵Dean Camera2009-12-141-12/+12
| | | | using unoptimized PDI commands.
* Split out NVM access code in the AVRISP project into a seperate NVMTarget.c ↵Dean Camera2009-12-141-37/+14
| | | | source file and header. Make NVM register accesses use the NVM base address as set by the host, rather than using the fixed value from the XMEGA datasheet.
* Use -pedantic compile time option to find and correct several minor code errors.Dean Camera2009-12-131-4/+42
|
* The AVRISP project can now enter PDI mode under both bit-bang and hardware ↵Dean Camera2009-12-131-13/+5
| | | | USART connection modes, tested against the XPLAIN board hardware. Still need to complete higher level NVM access code so that the device's memories can be read and written.
* PDI NVM enable is fast enough that bare polling is enough without a fixed ↵Dean Camera2009-12-111-3/+1
| | | | delay in between each attempt. Make sure the USART transmitter is enabled explicitly when the USART is configured, so that repeated attempts to re-enter PDI mode don't fail due to TXEN not being set.
* Fix PDI code - must send NVM enable key least significant byte first, need ↵Dean Camera2009-12-111-5/+7
| | | | to make sure Tx and Rx is switched correctly including disabling the output on the Tx line when receiving.
* Fix AVRISP PDI protocol - make sure inverted masks have the appropriate ↵Dean Camera2009-12-111-8/+16
| | | | parenthesis around them, make sure the BREAK command for the hardware USART has 12 clock cycles exactly. Poll NVM Enable bit in the target's STATUS PDI register with a timeout, as it is not set immediately.
* Change over AVRISP project to have both hardware USART and software USART ↵Dean Camera2009-12-111-19/+8
| | | | modes for the PDI protocol, when enabled. Fix up PDI initialisation routines.
* Fix inverted bit-banged USART logic in the AVRISP project for PDI ↵Dean Camera2009-12-091-3/+1
| | | | programming. Add a delay to the clock toggling in the AVRISP project to ensure that the programming speed does not exceed 10MHz under any conditions to satisfy the limits in the datasheet for all target voltages. Fix incorrect pin being used as the DATA in in PDI programming mode.
* Make sure that USB_STREAM_TIMEOUT_MS is set in the MassStorageHost ↵Dean Camera2009-12-081-1/+4
| | | | | | ClassDriver demo, so that slow devices don't time out the data pipe. Increase pipe timeout in both MassStorageHost demos to 5 seconds to account for the really slow devices. Fix TeensyHID bootloader not properly shutting down the USB interface to trigger a disconnection on the host before resetting the AVR.
* Make sure the protocol handler files are included in the Doxygen ↵Dean Camera2009-12-031-1/+1
| | | | documentation of the AVRISP project.
* Fix the tokens which enable and disable the different programming protocols ↵Dean Camera2009-12-031-1/+1
| | | | in the AVRISP project.
* Document the PDI programming routines implemented so far in the AVRISP ↵Dean Camera2009-12-031-24/+31
| | | | project. Add ability to selectively disable ISP programming support in addition to the existing ability to disable PDI programming support.
* Started implementing the low level PDI protocol in the AVRISP project, for ↵Dean Camera2009-12-031-29/+54
| | | | XMEGA device programming.
* Add support for unwrapping of the XMEGA PDI programming protocol to the ↵Dean Camera2009-12-021-0/+262
AVRISP Programmer project.