USB- DFU (Device Firmware Upgrade) Driver Development

Dear experts,

I am writing an USB-DFU(Device Firmware Upgrade) Driver for our new DFU support Hardware,

Please let me know

  1. how to start DFU Driver?
  2. What are the things should be considerd?
  3. what are the hardware requirements for Develoing DFU driver?
  4. Does this Driver should be a part of normal USB function Driver or it should be
    developed as a seperate Driver?
  5. Does this DFU need an USER mode application to do something from Usermode?
  6. If anybody have some Sample DFU Driver Source code please send me.

Thanks in Advance,
Ravinder

1… The dfu starts when the device is inserted, just like a device
without DFU.

2/3 No different from developing for a non DFU scheme.
You might want to consider the security of your firmware… Depends
upon what the upgraded parts do.
(obviously this depends upon your line of business…)

4… Should’t matter. Ours are all separate though. (we have at a rough
count at least 5)

5… No. you can embed the firmware in a driver, or externally

6… Look into cypress/anchor ez-usb chips… Whatever its called these
days… They come with samples.

BR,

Rob Linegar
Software Engineer
Data Encryption Systems Limited
www.des.co.uk | www.deslock.com

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@yahoo.com
Sent: 18 June 2007 06:05
To: Windows System Software Devs Interest List
Subject: [ntdev] USB- DFU (Device Firmware Upgrade) Driver Development

Dear experts,

I am writing an USB-DFU(Device Firmware Upgrade) Driver for our new DFU
support Hardware,

Please let me know

  1. how to start DFU Driver?
  2. What are the things should be considerd?
  3. what are the hardware requirements for Develoing DFU driver?
  4. Does this Driver should be a part of normal USB function Driver or it
    should be
    developed as a seperate Driver?
  5. Does this DFU need an USER mode application to do something from
    Usermode?
  6. If anybody have some Sample DFU Driver Source code please send me.

Thanks in Advance,
Ravinder


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Hi Linegar,

thank u for your valuable replay,

here I am mentioning the view of my USB DFU driver and applction.

My hardware will have 2-3 different class support like massstorage class,CDC class and DFU class Support.

So whenever my Hw plugged in to Host machine, the Usbccgp driver will be loaded and then ccgp will load the
class specific drivers for each class.

Now i wll have one Usermode application which will register for DFU Interface,So it will grab all the deveices
attached to the host machine and shows to the user.
Now if USER select a particular deveice from this list and press some DFUMode_Enable button,
my applcation wll send a VENDOR_SPECIFIC_COMMAND to my DFU class Driver, so that my HW wll be reenumerated only in DFU mode.

Now once the Device reenumerated with only DFU mode,my USB-DFU driver wll be loaded again.Then from the Application the User
specified file wll be downloaded to the deveice or the Device fw wll be copied to the user specified path and once DowNLOA/UPLOAD
is sucessfully completed, The deveice wll be reenumerated again and loads all the class driversand works normally.

This is all my view / architecture of my DFU Class Support in Our HW.

The above mentioned is all my assumption and a blind idea.
Please let me know is there anything wrong in My idea.
does it the correct way of doing USB-DFU support.

Thanks,
Ravinder Are

Sounds ok… Just jump in and try things… Or as we say here… JFDI…

Rob

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@yahoo.com
Sent: 19 June 2007 07:03
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] USB- DFU (Device Firmware Upgrade) Driver
Development

Hi Linegar,

thank u for your valuable replay,

here I am mentioning the view of my USB DFU driver and applction.

My hardware will have 2-3 different class support like massstorage
class,CDC class and DFU class Support.

So whenever my Hw plugged in to Host machine, the Usbccgp driver will be
loaded and then ccgp will load the
class specific drivers for each class.

Now i wll have one Usermode application which will register for DFU
Interface,So it will grab all the deveices
attached to the host machine and shows to the user.
Now if USER select a particular deveice from this list and press some
DFUMode_Enable button,
my applcation wll send a VENDOR_SPECIFIC_COMMAND to my DFU class
Driver, so that my HW wll be reenumerated only in DFU mode.

Now once the Device reenumerated with only DFU mode,my USB-DFU driver
wll be loaded again.Then from the Application the User
specified file wll be downloaded to the deveice or the Device fw wll be
copied to the user specified path and once DowNLOA/UPLOAD
is sucessfully completed, The deveice wll be reenumerated again and
loads all the class driversand works normally.

This is all my view / architecture of my DFU Class Support in Our HW.

The above mentioned is all my assumption and a blind idea.
Please let me know is there anything wrong in My idea.
does it the correct way of doing USB-DFU support.

Thanks,
Ravinder Are


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer