This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/PROCESSOR-SDK-AM335X: USB documentation

Part Number: PROCESSOR-SDK-AM335X
Other Parts Discussed in Thread: AM3352

Tool/software: TI-RTOS

Hello,

I am looking for some real doc on the USB functions.  The "doxygen" generated stuff is useless  (you can't even do a search).

The Mass Storage Class example works fine.  It starts with a function named "USB_open()".  But its not even in any documentation I can find.  The function is actually prototyped in  "usb_drv.h"  which isn't even in the Doxygen generated stuff.

So, the material supplied is useless if it's not even in there.  And the example code doesn't do any good if there is no documentation to back it up.

On the other hand, the document "spruhd4m" (TI-RTOS Drivers)  section 5.14 describes the most basic material for the USB module.  However none of the functions defined in that section can be found in the PDK for the AM335x  (C:\ti\pdk_am335x_1_0_7 ).   Apparently that material only applies the MSP430 or TIVA, or ...?

The Mass Storage Class (MSC) example in the AM335x PDK is of little help because I don't want to create a MSC device. I want to create a CDC.  However, the built in functions and structures are for MSC, and are hiding most everything from the developer... So if there is a way to initialize the USB stack and set the device class in the device descriptor from 8 to 2  (from mass storage to communication class), I haven't found it.

Is there a document somewhere which describes these functions...?  A user guide and reference guide, maybe like the NDK docs ( spru523 and 524 ) ?

Please??

-CSW

  • The RTOS team have been notified. They will respond here.
  • Biser,

    Thanks.  I hope someone does respond.

    I am digging relentlessly in the files, and see that the USB material under pdk_am335x_1_0_7 is extremely lacking. Not only in doc, but also in function.  It appears that everything in the folders is targeted toward only Mass Storage Devices. Despite digging though the code files I have yet to determine how to simply populate a device descriptor structure.

    On the other hand, I see an old package, called "StarterWare".  Which the TI web pages say is deprecated, and tells users to go use TI-RTOS.  According to this page:

    www.ti.com/.../starterware-sitara

    "AM335x customers – Processor SDK-RTOS is the recommended alternative for StarterWare. The Processor SDK includes demos and benchmarks, and makes code migration easier across TI processors."

    (Emphasis added by me)

    Except there is actually material in the "StarterWare" that is missing from the TI-RTOS...  Even though it's 2 years old.  I would say that above quote is rather inaccurate.

    In "StarterWare 02_00_01_01" there is a folder for usblib/device".  Files within it say it's part of Stellaris. And files in there are not anywhere I can find in the AM3352 PDK.  So I looked in my "tirtos_tivac_2_16_01_14" folder, and found similar files, only it has been stripped of any am335x code.

    So, the RTOS project is actively pushing people to use packages that are less comprehensive and have been stripped of functionality?

    And the StarterWare has something else I've been begging for:  an actual users guide in PDF format so it can be searched.

    Several months ago, in a forum discussion, someone asked why I have downloaded "StarterWare" (among all the other packages).  How about "Because it has actual driver code, examples, and documentation that was removed from TI-RTOS PDK"...???

    -CSW 

  • Hi,

    For the AM335X USB Processor SDK RTOS driver, there is no PDF file for the user guide, like NDK or Starterware. The USB usage wiki is: processors.wiki.ti.com/.../Processor_SDK_RTOS_USB.

    Sorry we only have MSC class supported so far. CDC class is planned and I will update you when it will be available.

    Regards, Eric
  • lding said:

    For the AM335X USB Processor SDK RTOS driver, there is no PDF file for the user guide, like NDK or Starterware. The USB usage wiki is: processors.wiki.ti.com/.../Processor_SDK_RTOS_USB.

    Eric.

    When I click on that link, I get a page that says the following:


    There is currently no text in this page. You can search for this page title in other pages, or search the related logs, but you do not have permission to create this page.

    I didn't think any doc could be worse than what is "auto-generated" by Doxygen, but I guess I was wrong.

    lding said:

    Sorry we only have MSC class supported so far. CDC class is planned and I will update you when it will be available.

    So, everyone, everywhere, telling me "Don't ever start a new project, take an existing one and modify it" means I can't do that. Because you pulled the rug out from support for something I wanted to use as a model and have not replaced it in the new "We hide everything from the user" eco-system.

    Can you detect my annoyance? That TI has stopped supporting useful, existing libraries in favor of pushing people to a new eco-system, and the reply is "Sorry, it's just not ready yet".

    I've spent three days so far spinning my wheels trying to migrate the unsupported AM335X_StarterWare_02_00_01_01 into something that will actually compile in the new CCS 7 world where everything is hidden under the covers... Because buried down in there are the libraries and samples I need to learn from. And they aren't in the new "We only want you to use this" environment.

    -CSW

  •  found out why that page is a dead link.

    http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_USB.

    is not the same as

    http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_USB

    The trailing period caused a problem.