Add library maintenance scripts.
[pub/USBasp.git] / Demos / Host / Incomplete / BluetoothHost / ConfigDescriptor.c
index 29008ba..7d10506 100644 (file)
@@ -1,13 +1,13 @@
 /*
              LUFA Library
 /*
              LUFA Library
-     Copyright (C) Dean Camera, 2010.
+     Copyright (C) Dean Camera, 2012.
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
-  Copyright 2010  Dean Camera (dean [at] fourwalledcubicle [dot] com)
+  Copyright 2012  Dean Camera (dean [at] fourwalledcubicle [dot] com)
 
   Permission to use, copy, modify, distribute, and sell this
   software and its documentation for any purpose is hereby granted
 
   Permission to use, copy, modify, distribute, and sell this
   software and its documentation for any purpose is hereby granted
@@ -78,7 +78,7 @@ uint8_t ProcessConfigurationDescriptor(void)
 
        while (!(DataINEndpoint) || !(DataOUTEndpoint))
        {
 
        while (!(DataINEndpoint) || !(DataOUTEndpoint))
        {
-               /* Get the next Still Image interface's data endpoint descriptor */
+               /* Get the next Bluetooth interface's data endpoint descriptor */
                if (USB_GetNextDescriptorComp(&CurrConfigBytesRem, &CurrConfigLocation,
                                              DComp_NextInterfaceBluetoothDataEndpoint) != DESCRIPTOR_SEARCH_COMP_Found)
                {
                if (USB_GetNextDescriptorComp(&CurrConfigBytesRem, &CurrConfigLocation,
                                              DComp_NextInterfaceBluetoothDataEndpoint) != DESCRIPTOR_SEARCH_COMP_Found)
                {
@@ -90,7 +90,7 @@ uint8_t ProcessConfigurationDescriptor(void)
                USB_Descriptor_Endpoint_t* EndpointData = DESCRIPTOR_PCAST(CurrConfigLocation, USB_Descriptor_Endpoint_t);
 
                /* If the endpoint is a IN type endpoint */
                USB_Descriptor_Endpoint_t* EndpointData = DESCRIPTOR_PCAST(CurrConfigLocation, USB_Descriptor_Endpoint_t);
 
                /* If the endpoint is a IN type endpoint */
-               if (EndpointData->EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)
+               if ((EndpointData->EndpointAddress & ENDPOINT_DIR_MASK) == ENDPOINT_DIR_IN)
                {
                        /* Check if the found endpoint is a interrupt or bulk type descriptor */
                        if ((EndpointData->Attributes & EP_TYPE_MASK) == EP_TYPE_INTERRUPT)
                {
                        /* Check if the found endpoint is a interrupt or bulk type descriptor */
                        if ((EndpointData->Attributes & EP_TYPE_MASK) == EP_TYPE_INTERRUPT)
@@ -132,10 +132,12 @@ uint8_t ProcessConfigurationDescriptor(void)
  */
 uint8_t DComp_NextInterfaceBluetoothDataEndpoint(void* CurrentDescriptor)
 {
  */
 uint8_t DComp_NextInterfaceBluetoothDataEndpoint(void* CurrentDescriptor)
 {
+       USB_Descriptor_Header_t* Header = DESCRIPTOR_PCAST(CurrentDescriptor, USB_Descriptor_Header_t);
+
        /* Determine the type of the current descriptor */
        /* Determine the type of the current descriptor */
-       if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Endpoint)
+       if (Header->Type == DTYPE_Endpoint)
          return DESCRIPTOR_SEARCH_Found;
          return DESCRIPTOR_SEARCH_Found;
-       else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
+       else if (Header->Type == DTYPE_Interface)
          return DESCRIPTOR_SEARCH_Fail;
        else
          return DESCRIPTOR_SEARCH_NotFound;
          return DESCRIPTOR_SEARCH_Fail;
        else
          return DESCRIPTOR_SEARCH_NotFound;