special usb hub handling, IDE disks, and retries all over the place
[linux-2.4.git] / drivers / usb / storage / sddr09.h
1 /* Driver for SanDisk SDDR-09 SmartMedia reader
2  * Header File
3  *
4  * $Id: sddr09.h,v 1.5 2000/08/25 00:13:51 mdharm Exp $
5  *
6  * Current development and maintenance by:
7  *   (c) 2000 Robert Baruch (autophile@dol.net)
8  *   (c) 2002 Andries Brouwer (aeb@cwi.nl)
9  *
10  * See sddr09.c for more explanation
11  *
12  * This program is free software; you can redistribute it and/or modify it
13  * under the terms of the GNU General Public License as published by the
14  * Free Software Foundation; either version 2, or (at your option) any
15  * later version.
16  *
17  * This program is distributed in the hope that it will be useful, but
18  * WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
20  * General Public License for more details.
21  *
22  * You should have received a copy of the GNU General Public License along
23  * with this program; if not, write to the Free Software Foundation, Inc.,
24  * 675 Mass Ave, Cambridge, MA 02139, USA.
25  */
26
27 #ifndef _USB_SHUTTLE_EUSB_SDDR09_H
28 #define _USB_SHUTTLE_EUSB_SDDR09_H
29
30 /* Sandisk SDDR-09 stuff */
31
32 extern int sddr09_transport(Scsi_Cmnd *srb, struct us_data *us);
33
34 struct sddr09_card_info {
35         unsigned long   capacity;       /* Size of card in bytes */
36         int             pagesize;       /* Size of page in bytes */
37         int             pageshift;      /* log2 of pagesize */
38         int             blocksize;      /* Size of block in pages */
39         int             blockshift;     /* log2 of blocksize */
40         int             blockmask;      /* 2^blockshift - 1 */
41         int             *lba_to_pba;    /* logical to physical map */
42         int             *pba_to_lba;    /* physical to logical map */
43         int             lbact;          /* number of available pages */
44         int             flags;
45 #define SDDR09_WP       1               /* write protected */
46 };
47
48 #endif