9
0
Fork 0

Fixes on reverification of USB mass storage class

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4336 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo 2012-01-25 22:20:48 +00:00
parent 37974dad9a
commit 972a7b249a
5 changed files with 65 additions and 7 deletions

View File

@ -525,7 +525,9 @@ FAR struct battery_dev_s *max1704x_initialize(FAR struct i2c_dev_s *i2c,
uint8_t addr, uint32_t frequency) uint8_t addr, uint32_t frequency)
{ {
FAR struct max1704x_dev_s *priv; FAR struct max1704x_dev_s *priv;
#if 0
int ret; int ret;
#endif
/* Initialize the MAX1704x device structure */ /* Initialize the MAX1704x device structure */

View File

@ -2049,7 +2049,6 @@ errout_with_class:
int cdcser_initialize(int minor) int cdcser_initialize(int minor)
{ {
FAR struct usbdevclass_driver_s *drvr; FAR struct usbdevclass_driver_s *drvr;
FAR struct cdcser_dev_s *priv;
int ret; int ret;
/* Get an instance of the serial driver class object */ /* Get an instance of the serial driver class object */
@ -2068,3 +2067,42 @@ int cdcser_initialize(int minor)
return ret; return ret;
} }
#endif #endif
/****************************************************************************
* Name: cdcser_uninitialize
*
* Description:
* Un-initialize the USB storage class driver
*
* Input Parameters:
* handle - The handle returned by a previous call to cdcser_configure().
*
* Returned Value:
* None
*
****************************************************************************/
#ifndef CONFIG_CDCSER_COMPOSITE
void cdcser_uninitialize(FAR struct usbdevclass_driver_s *classdev)
{
FAR struct cdcser_driver_s *drvr = (FAR struct cdcser_driver_s *)classdev;
FAR struct cdcser_dev_s *priv = drvr->dev;
/* Unbind the class (if still bound) */
if (priv->usbdev)
{
cdcser_unbind(Fpriv->usbdev);
}
/* Unregister the driver (unless we are a part of a composite device */
#ifndef CONFIG_CDCSER_COMPOSITE
usbdev_unregister(&alloc->drvr.drvr);
#endif
/* And free the driver structure */
kfree(priv);
}
#endif

View File

@ -213,7 +213,7 @@ static const struct usb_epdesc_s g_hsepbulkindesc =
/* Strings ******************************************************************/ /* Strings ******************************************************************/
#ifndef CONFIG_USBMSC_COMPOSITE #ifndef CONFIG_USBMSC_COMPOSITE
const char g_msccendorstr[] = CONFIG_USBMSC_VENDORSTR; const char g_mscvendorstr[] = CONFIG_USBMSC_VENDORSTR;
const char g_mscproductstr[] = CONFIG_USBMSC_PRODUCTSTR; const char g_mscproductstr[] = CONFIG_USBMSC_PRODUCTSTR;
const char g_mscserialstr[] = CONFIG_USBMSC_SERIALSTR; const char g_mscserialstr[] = CONFIG_USBMSC_SERIALSTR;
#endif #endif
@ -256,15 +256,15 @@ int usbmsc_mkstrdesc(uint8_t id, struct usb_strdesc_s *strdesc)
} }
case USBMSC_MANUFACTURERSTRID: case USBMSC_MANUFACTURERSTRID:
str = g_vendorstr; str = g_mscvendorstr;
break; break;
case USBMSC_PRODUCTSTRID: case USBMSC_PRODUCTSTRID:
str = g_productstr; str = g_mscproductstr;
break; break;
case USBMSC_SERIALSTRID: case USBMSC_SERIALSTRID:
str = g_serialstr; str = g_mscserialstr;
break; break;
#endif #endif

View File

@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* include/nuttx/usb/cdc_serial.h * include/nuttx/usb/cdc_serial.h
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011-2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr> * Author: Gregory Nutt <spudmonkey@racsa.co.cr>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -351,6 +351,24 @@ int cdcser_classobject(int minor, FAR struct usbdevclass_driver_s **classdev);
EXTERN int cdcser_initialize(int minor); EXTERN int cdcser_initialize(int minor);
/****************************************************************************
* Name: cdcser_uninitialize
*
* Description:
* Un-initialize the USB storage class driver
*
* Input Parameters:
* handle - The handle returned by a previous call to cdcser_configure().
*
* Returned Value:
* None
*
****************************************************************************/
#ifndef CONFIG_CDCSER_COMPOSITE
EXTERN void cdcser_uninitialize(FAR struct usbdevclass_driver_s *classdev);
#endif
#undef EXTERN #undef EXTERN
#if defined(__cplusplus) #if defined(__cplusplus)
} }

View File

@ -282,7 +282,7 @@ struct usbdev_s
{ {
const struct usbdev_ops_s *ops; /* Access to hardware specific features */ const struct usbdev_ops_s *ops; /* Access to hardware specific features */
struct usbdev_ep_s *ep0; /* Endpoint zero */ struct usbdev_ep_s *ep0; /* Endpoint zero */
uint8_t speed; /* Current speed of host connection */ uint8_t speed; /* Current speed of the host connection */
uint8_t dualspeed:1; /* 1:supports high and full speed operation */ uint8_t dualspeed:1; /* 1:supports high and full speed operation */
}; };