EmbeddedRelated.com
Forums

USB firmware help needed

Started by Sean Whitesell February 11, 2004
I have an Atmel AT89C5132 that has some USB mass storage firmware. It
uses the Windows USBstor.sys Mass Storage Class driver. I need to be
able to keep that in place an still be able to send data from a
desktop application to the chip that will get passed on to another
processor.  I need help understanding where I can safely modify the
firmware, knowing what to look for (CBW or CSW etc), and overall can
this be done.  Any help would be greatly appreciated.


Sean
Not sure, but in our Netchip USB world it would be another "End Point".
Then that channel is separate.  I don't know if it needs a whole new driver
on the Host side or not.

Ken

"Sean Whitesell" <seanw122@vigoris.net> wrote in message
news:d122ada9.0402110538.77955df4@posting.google.com...
> I have an Atmel AT89C5132 that has some USB mass storage firmware. It > uses the Windows USBstor.sys Mass Storage Class driver. I need to be > able to keep that in place an still be able to send data from a > desktop application to the chip that will get passed on to another > processor. I need help understanding where I can safely modify the > firmware, knowing what to look for (CBW or CSW etc), and overall can > this be done. Any help would be greatly appreciated. > > > Sean
Sean Whitesell wrote:
> I have an Atmel AT89C5132 that has some USB mass storage firmware. It > uses the Windows USBstor.sys Mass Storage Class driver. I need to be > able to keep that in place an still be able to send data from a > desktop application to the chip that will get passed on to another > processor. I need help understanding where I can safely modify the > firmware, knowing what to look for (CBW or CSW etc), and overall can > this be done. Any help would be greatly appreciated.
CBW and CSW are a part of the "transparent transport" mechanism used by USB mass storage devices to encapsulate SCSI commands. Whether or not the Winblows USBstor.sys driver gives you access to this layer is unknown to me. However, since it is a generic USB mass storage driver, and you would be adding extensions, I would think this would be difficult hack. If your device identifies itself as a Mass Storage device, then the OS is going to attempt to use you as such. Otherwise, I don't know how the USBstor.sys driver will get involved. -- Michael N. Moran (h) 770 516 7918 5009 Old Field Ct. (c) 678 521 5460 Kennesaw, GA, USA 30144 "... abstractions save us time working, but they don't save us time learning." Joel Spolsky, The Law of Leaky Abstractions The Beatles were wrong: 1 & 1 & 1 is 1
On Fri, 13 Feb 2004 10:29:13 -0500, Michael N. Moran wrote:

> The Beatles were wrong: 1 & 1 & 1 is 1
The Who got it right. "one and one makes one..." ;)
Bob Stephens wrote:
> On Fri, 13 Feb 2004 10:29:13 -0500, Michael N. Moran wrote: > > >>The Beatles were wrong: 1 & 1 & 1 is 1 > > > The Who got it right. > "one and one makes one..." ;)
All these years and no-one has said anything but "Huh?"! You get the prize. Don't look now but ... your age is showing ;-) -- Michael N. Moran (h) 770 516 7918 5009 Old Field Ct. (c) 678 521 5460 Kennesaw, GA, USA 30144 "... abstractions save us time working, but they don't save us time learning." Joel Spolsky, The Law of Leaky Abstractions The Beatles were wrong: 1 & 1 & 1 is 1
Thanks!
That confirms for me that CBW's are only a part of mass storage.  I was able
to find another driver that the chip is using for downloading new firmware.
So far, I have successfully got a device handle but am now trying to get all
the endpoint information.  I'm looking for source code using the
SetupApi.dll calls.  Any help here would be appreciated.


Sean


"Michael N. Moran" <mnmoran@bellsouth.net> wrote in message
news:r_5Xb.42023$8a5.41977@bignews1.bellsouth.net...
> Sean Whitesell wrote: > > I have an Atmel AT89C5132 that has some USB mass storage firmware. It > > uses the Windows USBstor.sys Mass Storage Class driver. I need to be > > able to keep that in place an still be able to send data from a > > desktop application to the chip that will get passed on to another > > processor. I need help understanding where I can safely modify the > > firmware, knowing what to look for (CBW or CSW etc), and overall can > > this be done. Any help would be greatly appreciated. > > CBW and CSW are a part of the "transparent transport" > mechanism used by USB mass storage devices to encapsulate > SCSI commands. > > Whether or not the Winblows USBstor.sys driver gives you access > to this layer is unknown to me. However, since it is a generic > USB mass storage driver, and you would be adding extensions, > I would think this would be difficult hack. > > If your device identifies itself as a Mass Storage device, > then the OS is going to attempt to use you as such. Otherwise, > I don't know how the USBstor.sys driver will get involved. > > > -- > Michael N. Moran (h) 770 516 7918 > 5009 Old Field Ct. (c) 678 521 5460 > Kennesaw, GA, USA 30144 > > "... abstractions save us time working, but they don't > save us time learning." > Joel Spolsky, The Law of Leaky Abstractions > > The Beatles were wrong: 1 & 1 & 1 is 1 >
seanw122@vigoris.net (Sean Whitesell) wrote :

> I have an Atmel AT89C5132 that has some USB mass storage firmware. It > uses the Windows USBstor.sys Mass Storage Class driver. I need to be > able to keep that in place an still be able to send data from a > desktop application to the chip that will get passed on to another > processor.
no need to modify the firmware, just define a special permanent file on the storage device - writing to that file will end up as passing data to your another processor. Pozdrawiam. -- RusH // http://pulse.pdi.net/~rush/qv30/ Like ninjas, true hackers are shrouded in secrecy and mystery. You may never know -- UNTIL IT'S TOO LATE.