X-Git-Url: http://git.linex4red.de/pub/lufa.git/blobdiff_plain/5acf23b25465b82e5516510ee45aa9ed15178ad5..4742e95a3f8ef01715c6d5e740c4aab59d2c2b58:/Projects/Incomplete/AVRISP/Lib/V2Protocol.h diff --git a/Projects/Incomplete/AVRISP/Lib/V2Protocol.h b/Projects/Incomplete/AVRISP/Lib/V2Protocol.h index 5283f1986..b0f1f83c0 100644 --- a/Projects/Incomplete/AVRISP/Lib/V2Protocol.h +++ b/Projects/Incomplete/AVRISP/Lib/V2Protocol.h @@ -37,33 +37,46 @@ #define _V2_PROTOCOL_ /* Includes: */ - #include - #include #include #include "../Descriptors.h" #include "V2ProtocolConstants.h" #include "V2ProtocolParams.h" + #include "V2ProtocolTarget.h" - /* Macros: */ - #define PROGRAMMER_ID "AVRISP_MK2" - #define PROGRAMMER_ID_LEN (sizeof(PROGRAMMER_ID) - 1) + /* Macros: */ + /** Programmer ID string, returned to the host during the CMD_SIGN_ON command processing */ + #define PROGRAMMER_ID "AVRISP_MK2" + + #define READ_WRITE_HIGH_BYTE_MASK (1 << 3) - #define MAX_SPI_SETTINGS 7 + #define PROG_MODE_PAGED_WRITES_MASK (1 << 0) + #define PROG_MODE_WORD_TIMEDELAY_MASK (1 << 1) + #define PROG_MODE_WORD_VALUE_MASK (1 << 2) + #define PROG_MODE_WORD_READYBUSY_MASK (1 << 3) + #define PROG_MODE_PAGED_TIMEDELAY_MASK (1 << 4) + #define PROG_MODE_PAGED_VALUE_MASK (1 << 5) + #define PROG_MODE_PAGED_READYBUSY_MASK (1 << 6) + #define PROG_MODE_COMMIT_PAGE_MASK (1 << 7) /* Function Prototypes: */ void V2Protocol_ProcessCommand(void); #if defined(INCLUDE_FROM_V2PROTOCOL_C) - static void V2Protocol_ReconfigureSPI(void); - static void V2Protocol_ChangeTargetResetLine(bool ResetTarget); - - static void V2Protocol_Command_Unknown(uint8_t V2Command); - static void V2Protocol_Command_SignOn(void); - static void V2Protocol_Command_GetSetParam(uint8_t V2Command); - static void V2Protocol_Command_LoadAddress(void); - static void V2Protocol_Command_SPIMulti(void); + static void V2Protocol_Command_Unknown(uint8_t V2Command); + static void V2Protocol_Command_SignOn(void); + static void V2Protocol_Command_GetSetParam(uint8_t V2Command); + static void V2Protocol_Command_LoadAddress(void); + static void V2Protocol_Command_ResetProtection(void); + static void V2Protocol_Command_EnterISPMode(void); + static void V2Protocol_Command_LeaveISPMode(void); + static void V2Protocol_Command_ProgramMemory(uint8_t V2Command); + static void V2Protocol_Command_ReadMemory(uint8_t V2Command); + static void V2Protocol_Command_ChipErase(void); + static void V2Protocol_Command_ReadFuseLockSigOSCCAL(uint8_t V2Command); + static void V2Protocol_Command_WriteFuseLock(uint8_t V2Command); + static void V2Protocol_Command_SPIMulti(void); #endif #endif