Linux-2.6.12-rc2
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / usb / storage / sddr09.h
blobc9d78d6188b1b33ce9c21d22777e845e22047772
1 /* Driver for SanDisk SDDR-09 SmartMedia reader
2 * Header File
4 * $Id: sddr09.h,v 1.5 2000/08/25 00:13:51 mdharm Exp $
6 * Current development and maintenance by:
7 * (c) 2000 Robert Baruch (autophile@dol.net)
8 * (c) 2002 Andries Brouwer (aeb@cwi.nl)
10 * See sddr09.c for more explanation
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.
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.
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.
27 #ifndef _USB_SHUTTLE_EUSB_SDDR09_H
28 #define _USB_SHUTTLE_EUSB_SDDR09_H
30 /* Sandisk SDDR-09 stuff */
32 extern int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us);
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 */
48 #endif