--- Quote Start ---
originally posted by goral@Apr 28 2006, 02:07 PM
hi, hippo
thank for your help, my usb flash disk was working now,, these is my message using on de ii board:
<div class='quotetop'>quote
--- quote end ---
--- quote start ---
# usb 1-2: new full speed usb device using isp1362-hcd and address 2
usb 1-2: product: usb mass storage
usb 1-2: manufacturer: usb mass storage
usb 1-2: serialnumber: abcdef123456789
usb 1-2: configuration# 1 chosen from 1 choice
scsi0 : scsi emulation for usb mass storage devices
vendor: usb-disk model: freedik-lwformat rev: 1.06
type: direct-access ansi scsi revision: 00
scsi device sda: 261856 512-byte hdwr sectors (134 mb)
sda: write protect is off
sda: assuming drive cache: write through
scsi device sda: 261856 512-byte hdwr sectors (134 mb)
sda: write protect is off
sda: assuming drive cache: write through
sda:<7>usb-storage: queuecommand called
sda1
sd 0:0:0:0: attached scsi removable disk sda
# mount -t vfat /dev/sda1 /mnt# cd /mnt# ls
de2_usermanual.pdf# --- Quote End ---
I only changed two place in isp1362-hcd.c
<div class='quotetop'>QUOTE </div>
--- Quote Start ---
static int isp1362_hc_reset(struct usb_hcd *hcd)
{
int ret = 0;
struct isp1362_hcd *isp1362_hcd = hcd_to_isp1362_hcd(hcd);
unsigned long t;
unsigned long timeout = 20;
unsigned long flags;
int clkrdy = 0;
ret = 1;
INFO("%
s:\n", __FUNCTION__);
if (isp1362_hcd->board && isp1362_hcd->board->reset) {
isp1362_hcd->board->reset(hcd->self.controller, 1);
msleep(20);
if (isp1362_hcd->board->clock) {
isp1362_hcd->board->clock(hcd->self.controller, 1);
}
isp1362_hcd->board->reset(hcd->self.controller, 0);
} else {
isp1362_sw_reset(isp1362_hcd);
}
// chip has been reset. First we need to see a clock
t = jiffies + msecs_to_jiffies(timeout);
while (!clkrdy && time_before_eq(jiffies, t)) {
spin_lock_irqsave(&isp1362_hcd->lock, flags);
clkrdy = isp1362_read_reg16(isp1362_hcd, HCuPINT) & HCuPINT_CLKRDY;
spin_unlock_irqrestore(&isp1362_hcd->lock, flags);
if (!clkrdy) {
msleep(4);
}
}
spin_lock_irqsave(&isp1362_hcd->lock, flags);
isp1362_write_reg16(isp1362_hcd, HCuPINT, HCuPINT_CLKRDY);
spin_unlock_irqrestore(&isp1362_hcd->lock, flags);
if (clkrdy) {
ERR("Clock not ready after %lums\n", timeout);
ret = -ENODEV;
}
return ret;
}[/b]
--- Quote End ---
With best regards!
<div align='right'><{post_snapback}> (index.php?act=findpost&pid=14801)</div>
[/b]
--- Quote End ---
Thank you, too.
So you just bypass the clock check?