Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

reprogram SheevaPlug for uftdi(4) compatible



Folks,

Here is the summary of the way how to reprogram SheevaPlug FT2232D
VID/PID.

It's a three-stage job;

1. prepare Windows runtime which recognize SheevaPlug JTAG+console.
2. run FTDI Mprog utility to reprogram VID/PID.
3. do Windows CDM driver update for "4030+6010" pair.

1.
The most convenient way is to use WindowsHost SWsupport package from
Marvell.  Installing Marvell tailoured FTDI CDM 2.04.16 driver kit will make
PC to recognize SheevaPlug.

2.
Mprog now should be able to find SheevaPlug with "9E88+9E8F"
VID/PID pair.
= save current EEPROM configuration into .ept file.  This is a text file.
= erase EEPROM store.
= load saved .epf file content and edit VID/PID to "0403+6010"
6010 is for 2232 dual channel model.
= reprogram EEPROM.

3.
At this moment it's likely Windows runtime has no idea about "0403+6010"
USB device.  Reboot Windows and run FDTI driver configuration update
with CDM 2.04.16 kit.

Now, SheevaPlug has "0403+6010" VID/PID pair which should be compatible
with standard 2232 driver.  It is free from annoying repeat task of Marvell CDM
installation for new PC.

With new VID/PID NetBSD uftdi(4) can see the ucom ports.  The console
is wired with 2232D channel B which is useful via /dev/ucom1.  Don't open
/dev/ucom0 with tip(1) or other comm progs since it is hardwired with JTAG
pins.

I hope this craft job makes no ill effect for the device.  Do that with your 
own risk.
In the end I might change my mind and add "9E88+9E8F" pair in uftdi(4) for
convenience since rewriting EEPROM is somehow evil in nature.

In technical aspect, the defference from standard FDTI Windows setup is;

- ftdibus.inf
[FtdiHw] should have the following three lines.
%USB\VID_9E88&PID_9E8F.DeviceDesc%=FtdiBus.NT,USB\VID_9E88&PID_9E8F
%USB\VID_9E88&PID_9E8F&MI_00.DeviceDesc%=FtdiBus.NT,USB\VID_9E88&PID_9E8F&MI_00
%USB\VID_9E88&PID_9E8F&MI_01.DeviceDesc%=FtdiBus.NT,USB\VID_9E88&PID_9E8F&MI_01

[FtdiHw.NTamd64] should have the three lines.  I'm not sure whether ".NTamd64" is better 
than ".NT"
%USB\VID_9E88&PID_9E8F.DeviceDesc%=FtdiBus.NT,USB\VID_9E88&PID_9E8F
%USB\VID_9E88&PID_9E8F&MI_00.DeviceDesc%=FtdiBus.NT,USB\VID_9E88&PID_9E8F&MI_00
%USB\VID_9E88&PID_9E8F&MI_01.DeviceDesc%=FtdiBus.NT,USB\VID_9E88&PID_9E8F&MI_01

[Strings] should have the following one line.
USB\VID_9E88&PID_9E8F.DeviceDesc="USB Serial Converter"

- ftdiport.inf
[FtdiHw]
%VID_9E88&PID_9E8F.DeviceDesc%=FtdiPort2232.NT,FTDIBUS\COMPORT&VID_9E88&PID_9E8F

[FtdiHw.NTamd64] I'm not sure ".NTamd64" is better than ".NT"
%VID_9E88&PID_9E8F.DeviceDesc%=FtdiPort2232.NT,FTDIBUS\COMPORT&VID_9E88&PID_9E8F

[Strings]
VID_9E88&PID_9E8F.DeviceDesc="USB Serial Port"

Toru Nishimura / ALKYL Technology


Home | Main Index | Thread Index | Old Index