Skip to content
Snippets Groups Projects
Commit 46aea9d4 authored by Dean Camera's avatar Dean Camera
Browse files

Update the incomplete StandaloneProgrammer project to be compatible with the latest LUFA core API.

parent b0570416
No related branches found
No related tags found
No related merge requests found
...@@ -50,7 +50,10 @@ USB_ClassInfo_MS_Host_t DiskHost_MS_Interface = ...@@ -50,7 +50,10 @@ USB_ClassInfo_MS_Host_t DiskHost_MS_Interface =
void DiskHost_USBTask(void) void DiskHost_USBTask(void)
{ {
if (USB_HostState == HOST_STATE_Addressed) MS_Host_USBTask(&DiskHost_MS_Interface);
}
void EVENT_USB_Host_DeviceEnumerationComplete(void)
{ {
LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING); LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING);
...@@ -61,7 +64,6 @@ void DiskHost_USBTask(void) ...@@ -61,7 +64,6 @@ void DiskHost_USBTask(void)
sizeof(ConfigDescriptorData)) != HOST_GETCONFIG_Successful) sizeof(ConfigDescriptorData)) != HOST_GETCONFIG_Successful)
{ {
LEDs_SetAllLEDs(LEDMASK_USB_ERROR); LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
USB_HostState = HOST_STATE_WaitForDeviceRemoval;
return; return;
} }
...@@ -69,14 +71,12 @@ void DiskHost_USBTask(void) ...@@ -69,14 +71,12 @@ void DiskHost_USBTask(void)
ConfigDescriptorSize, ConfigDescriptorData) != MS_ENUMERROR_NoError) ConfigDescriptorSize, ConfigDescriptorData) != MS_ENUMERROR_NoError)
{ {
LEDs_SetAllLEDs(LEDMASK_USB_ERROR); LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
USB_HostState = HOST_STATE_WaitForDeviceRemoval;
return; return;
} }
if (USB_Host_SetDeviceConfiguration(1) != HOST_SENDCONTROL_Successful) if (USB_Host_SetDeviceConfiguration(1) != HOST_SENDCONTROL_Successful)
{ {
LEDs_SetAllLEDs(LEDMASK_USB_ERROR); LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
USB_HostState = HOST_STATE_WaitForDeviceRemoval;
return; return;
} }
...@@ -84,26 +84,19 @@ void DiskHost_USBTask(void) ...@@ -84,26 +84,19 @@ void DiskHost_USBTask(void)
if (MS_Host_GetMaxLUN(&DiskHost_MS_Interface, &MaxLUNIndex)) if (MS_Host_GetMaxLUN(&DiskHost_MS_Interface, &MaxLUNIndex))
{ {
LEDs_SetAllLEDs(LEDMASK_USB_ERROR); LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
USB_HostState = HOST_STATE_WaitForDeviceRemoval;
return; return;
} }
if (MS_Host_ResetMSInterface(&DiskHost_MS_Interface)) if (MS_Host_ResetMSInterface(&DiskHost_MS_Interface))
{ {
LEDs_SetAllLEDs(LEDMASK_USB_ERROR); LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
USB_HostState = HOST_STATE_WaitForDeviceRemoval;
return; return;
} }
USB_HostState = HOST_STATE_Configured;
/* Note: For the RequestSense call to work, the host state machine must be in the
* Configured state, or the call will be aborted */
SCSI_Request_Sense_Response_t SenseData; SCSI_Request_Sense_Response_t SenseData;
if (MS_Host_RequestSense(&DiskHost_MS_Interface, 0, &SenseData) != 0) if (MS_Host_RequestSense(&DiskHost_MS_Interface, 0, &SenseData) != 0)
{ {
LEDs_SetAllLEDs(LEDMASK_USB_ERROR); LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
USB_HostState = HOST_STATE_WaitForDeviceRemoval;
return; return;
} }
...@@ -112,9 +105,6 @@ void DiskHost_USBTask(void) ...@@ -112,9 +105,6 @@ void DiskHost_USBTask(void)
LEDs_SetAllLEDs(LEDMASK_USB_READY); LEDs_SetAllLEDs(LEDMASK_USB_READY);
} }
MS_Host_USBTask(&DiskHost_MS_Interface);
}
void EVENT_USB_Host_DeviceAttached(void) void EVENT_USB_Host_DeviceAttached(void)
{ {
LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING); LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING);
......
...@@ -43,7 +43,6 @@ FILE DiskStream = FDEV_SETUP_STREAM(NULL, Disk_getchar, _FDEV_SETUP_READ); ...@@ -43,7 +43,6 @@ FILE DiskStream = FDEV_SETUP_STREAM(NULL, Disk_getchar, _FDEV_SETUP_READ);
/** Petite FAT Fs structure to hold the internal state of the FAT driver for the Dataflash contents. */ /** Petite FAT Fs structure to hold the internal state of the FAT driver for the Dataflash contents. */
FATFS DiskFATState; FATFS DiskFATState;
/** Stream character fetching routine for the FAT driver so that characters from the currently open file can be /** Stream character fetching routine for the FAT driver so that characters from the currently open file can be
* read in sequence when applied to a stdio stream. * read in sequence when applied to a stdio stream.
*/ */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment