On Mon, 12 Sep 2005, Dave Memmott wrote:

> Hi,
> 
> I'm trying to implement the USB mass storage class (Kernel 2.4.6 and
> Cypress EZ-OTG CY767200 controller)and  I'm having problems reading the
> boot sector on my USB Flash drive when I mount it.

What's the connection between the Cypress controller and your flash drive 
(which appears to be a SanDisk Cruzer Titanium)?

> Here's how I mount the thumb drive:
>     mount -t vfat /dev/sda1 /files
>     (there isn't anything in /files directory)
> 
> Here's what it returns:
>     fatfs: bogus logical sector size 20487
>     VFS: Can't find a valid MSDOS filesystem on dev 08:00.

Shouldn't that be 08:01 for /dev/sda1?  08:00 is /dev/sda.  Maybe you're 
trying to mount the wrong device file.

> I've tracked it down to the fat_read_super() function in fat_inode.c
> when it tries to read (bread()) the first sector (0) on the drive.  The
> contents of the read don't look anywhere close to what I read when I use
> a separate program in WinXP to read the first sector which is correct.

Could the partition table be messed up?  Check to make sure partition 1 
starts at the correct sector.

> I suspect that the USB and SCSI subsystems don't have any problems
> because it reports the thumb drive correctly as you can see below.
> 
> scsi0 : SCSI emulation for USB Mass Storage devices
>   Vendor: SanDisk   Model: Cruzer Titanium   Rev: 0.4 
>   Type:   Direct-Access                      ANSI SCSI revision: 02
> Detected scsi removable disk sda at scsi0, channel 0, id 0, lun 0
> SCSI device sda: 2001888 512-byte hdwr sectors (1025 MB)
> sda: Write Protect is off
> Partition check:
>  sda: sda1
> WARNING: USB Mass Storage data integrity not assured
> USB Mass Storage device found at 3
> 
> 
> I'm stumped! Anyone else come across this problem?  
> 
> Or can you point me in the right direction? 
> 
> I've tried a couple of different flash drives with the same result. In
> fact the ASCII represent of the sector read has the following text,
> "Invalid partition table. Error loading operating sytem . Missing
> operating system."  I don't know if means anything and I can't find it
> anywhere in the source code. 

In what source code?

That message is exactly what you should expect to see if you're reading
the first sector of /dev/sda -- it belongs to the partition sector.

> The mass storage debug printf's (see below) indicate that it's using
> Bulk transport and Transparent SCSI protocol.  Anyone know where I can
> find 'Transparent SCSI' command set documentation?

There is _no_ documentation for the Transparent SCSI command set.  The 
phrase doesn't really mean anything -- it's just the set of SCSI commands 
that were commonly recognized at the time the USB Mass Storage spec was 
written.

Alan Stern



-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to