projects
/
pub
/
USBasp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
More improvements to the incomplete BluetoothHost demo - add Disconnection Event...
[pub/USBasp.git]
/
Projects
/
AVRISP-MKII
/
Lib
/
XPROG
/
XPROGProtocol.c
diff --git
a/Projects/AVRISP-MKII/Lib/XPROG/XPROGProtocol.c
b/Projects/AVRISP-MKII/Lib/XPROG/XPROGProtocol.c
index
08936a2
..
ef86e30
100644
(file)
--- a/
Projects/AVRISP-MKII/Lib/XPROG/XPROGProtocol.c
+++ b/
Projects/AVRISP-MKII/Lib/XPROG/XPROGProtocol.c
@@
-65,6
+65,7
@@
void XPROGProtocol_SetMode(void)
Endpoint_Read_Stream_LE(&SetMode_XPROG_Params, sizeof(SetMode_XPROG_Params), NO_STREAM_CALLBACK);
\r
\r
Endpoint_ClearOUT();
\r
Endpoint_Read_Stream_LE(&SetMode_XPROG_Params, sizeof(SetMode_XPROG_Params), NO_STREAM_CALLBACK);
\r
\r
Endpoint_ClearOUT();
\r
+ Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
XPROG_SelectedProtocol = SetMode_XPROG_Params.Protocol;
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
XPROG_SelectedProtocol = SetMode_XPROG_Params.Protocol;
\r
@@
-111,6
+112,7
@@
void XPROGProtocol_Command(void)
static void XPROGProtocol_EnterXPROGMode(void)
\r
{
\r
Endpoint_ClearOUT();
\r
static void XPROGProtocol_EnterXPROGMode(void)
\r
{
\r
Endpoint_ClearOUT();
\r
+ Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
bool NVMBusEnabled;
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
bool NVMBusEnabled;
\r
@@
-166,6
+168,7
@@
static void XPROGProtocol_EnterXPROGMode(void)
static void XPROGProtocol_LeaveXPROGMode(void)
\r
{
\r
Endpoint_ClearOUT();
\r
static void XPROGProtocol_LeaveXPROGMode(void)
\r
{
\r
Endpoint_ClearOUT();
\r
+ Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
if (XPROG_SelectedProtocol == XPRG_PROTOCOL_PDI)
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
if (XPROG_SelectedProtocol == XPRG_PROTOCOL_PDI)
\r
@@
-175,10
+178,6
@@
static void XPROGProtocol_LeaveXPROGMode(void)
/* Clear the RESET key in the RESET PDI register to allow the XMEGA to run */
\r
XPROGTarget_SendByte(PDI_CMD_STCS | PDI_RESET_REG);
\r
XPROGTarget_SendByte(0x00);
\r
/* Clear the RESET key in the RESET PDI register to allow the XMEGA to run */
\r
XPROGTarget_SendByte(PDI_CMD_STCS | PDI_RESET_REG);
\r
XPROGTarget_SendByte(0x00);
\r
-
\r
- /* Clear /RESET key twice (for some reason this needs to be done twice to take effect) */
\r
- XPROGTarget_SendByte(PDI_CMD_STCS | PDI_RESET_REG);
\r
- XPROGTarget_SendByte(0x00);
\r
\r
XPROGTarget_DisableTargetPDI();
\r
}
\r
\r
XPROGTarget_DisableTargetPDI();
\r
}
\r
@@
-214,6
+213,7
@@
static void XPROGProtocol_Erase(void)
Erase_XPROG_Params.Address = SwapEndian_32(Erase_XPROG_Params.Address);
\r
\r
Endpoint_ClearOUT();
\r
Erase_XPROG_Params.Address = SwapEndian_32(Erase_XPROG_Params.Address);
\r
\r
Endpoint_ClearOUT();
\r
+ Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
uint8_t EraseCommand;
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
uint8_t EraseCommand;
\r
@@
-295,6
+295,7
@@
static void XPROGProtocol_WriteMemory(void)
Endpoint_Read_Stream_LE(&WriteMemory_XPROG_Params.ProgData, WriteMemory_XPROG_Params.Length, NO_STREAM_CALLBACK);
\r
\r
Endpoint_ClearOUT();
\r
Endpoint_Read_Stream_LE(&WriteMemory_XPROG_Params.ProgData, WriteMemory_XPROG_Params.Length, NO_STREAM_CALLBACK);
\r
\r
Endpoint_ClearOUT();
\r
+ Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
if (XPROG_SelectedProtocol == XPRG_PROTOCOL_PDI)
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
if (XPROG_SelectedProtocol == XPRG_PROTOCOL_PDI)
\r
@@
-378,6
+379,7
@@
static void XPROGProtocol_ReadMemory(void)
ReadMemory_XPROG_Params.Length = SwapEndian_16(ReadMemory_XPROG_Params.Length);
\r
\r
Endpoint_ClearOUT();
\r
ReadMemory_XPROG_Params.Length = SwapEndian_16(ReadMemory_XPROG_Params.Length);
\r
\r
Endpoint_ClearOUT();
\r
+ Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
uint8_t ReadBuffer[256];
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
uint8_t ReadBuffer[256];
\r
@@
-420,6
+422,7
@@
static void XPROGProtocol_ReadCRC(void)
Endpoint_Read_Stream_LE(&ReadCRC_XPROG_Params, sizeof(ReadCRC_XPROG_Params), NO_STREAM_CALLBACK);
\r
\r
Endpoint_ClearOUT();
\r
Endpoint_Read_Stream_LE(&ReadCRC_XPROG_Params, sizeof(ReadCRC_XPROG_Params), NO_STREAM_CALLBACK);
\r
\r
Endpoint_ClearOUT();
\r
+ Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
uint32_t MemoryCRC;
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
uint32_t MemoryCRC;
\r
@@
-495,6
+498,7
@@
static void XPROGProtocol_SetParam(void)
}
\r
\r
Endpoint_ClearOUT();
\r
}
\r
\r
Endpoint_ClearOUT();
\r
+ Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
Endpoint_Write_Byte(CMD_XPROG);
\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
\r
\r
Endpoint_Write_Byte(CMD_XPROG);
\r