aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/storage/Kconfig4
-rw-r--r--drivers/usb/storage/Makefile5
-rw-r--r--drivers/usb/storage/sddr09.c107
-rw-r--r--drivers/usb/storage/sddr09.h38
-rw-r--r--drivers/usb/storage/unusual_devs.h50
-rw-r--r--drivers/usb/storage/unusual_sddr09.h56
-rw-r--r--drivers/usb/storage/usb.c21
-rw-r--r--drivers/usb/storage/usual-tables.c1
8 files changed, 174 insertions, 108 deletions
diff --git a/drivers/usb/storage/Kconfig b/drivers/usb/storage/Kconfig
index 5c367566be8d..7be8899f2559 100644
--- a/drivers/usb/storage/Kconfig
+++ b/drivers/usb/storage/Kconfig
@@ -83,13 +83,15 @@ config USB_STORAGE_USBAT
83 - Sandisk ImageMate SDDR-05b 83 - Sandisk ImageMate SDDR-05b
84 84
85config USB_STORAGE_SDDR09 85config USB_STORAGE_SDDR09
86 bool "SanDisk SDDR-09 (and other SmartMedia, including DPCM) support" 86 tristate "SanDisk SDDR-09 (and other SmartMedia, including DPCM) support"
87 depends on USB_STORAGE 87 depends on USB_STORAGE
88 help 88 help
89 Say Y here to include additional code to support the Sandisk SDDR-09 89 Say Y here to include additional code to support the Sandisk SDDR-09
90 SmartMedia reader in the USB Mass Storage driver. 90 SmartMedia reader in the USB Mass Storage driver.
91 Also works for the Microtech Zio! CompactFlash/SmartMedia reader. 91 Also works for the Microtech Zio! CompactFlash/SmartMedia reader.
92 92
93 If this driver is compiled as a module, it will be named ums-sddr09.
94
93config USB_STORAGE_SDDR55 95config USB_STORAGE_SDDR55
94 bool "SanDisk SDDR-55 SmartMedia support" 96 bool "SanDisk SDDR-55 SmartMedia support"
95 depends on USB_STORAGE 97 depends on USB_STORAGE
diff --git a/drivers/usb/storage/Makefile b/drivers/usb/storage/Makefile
index a9e475e127a5..a52740a95602 100644
--- a/drivers/usb/storage/Makefile
+++ b/drivers/usb/storage/Makefile
@@ -11,7 +11,6 @@ obj-$(CONFIG_USB_STORAGE) += usb-storage.o
11 11
12usb-storage-obj-$(CONFIG_USB_STORAGE_DEBUG) += debug.o 12usb-storage-obj-$(CONFIG_USB_STORAGE_DEBUG) += debug.o
13usb-storage-obj-$(CONFIG_USB_STORAGE_USBAT) += shuttle_usbat.o 13usb-storage-obj-$(CONFIG_USB_STORAGE_USBAT) += shuttle_usbat.o
14usb-storage-obj-$(CONFIG_USB_STORAGE_SDDR09) += sddr09.o
15usb-storage-obj-$(CONFIG_USB_STORAGE_SDDR55) += sddr55.o 14usb-storage-obj-$(CONFIG_USB_STORAGE_SDDR55) += sddr55.o
16usb-storage-obj-$(CONFIG_USB_STORAGE_FREECOM) += freecom.o 15usb-storage-obj-$(CONFIG_USB_STORAGE_FREECOM) += freecom.o
17usb-storage-obj-$(CONFIG_USB_STORAGE_ISD200) += isd200.o 16usb-storage-obj-$(CONFIG_USB_STORAGE_ISD200) += isd200.o
@@ -30,3 +29,7 @@ ifeq ($(CONFIG_USB_LIBUSUAL),)
30else 29else
31 obj-$(CONFIG_USB) += libusual.o usual-tables.o 30 obj-$(CONFIG_USB) += libusual.o usual-tables.o
32endif 31endif
32
33obj-$(CONFIG_USB_STORAGE_SDDR09) += ums-sddr09.o
34
35ums-sddr09-objs := sddr09.o
diff --git a/drivers/usb/storage/sddr09.c b/drivers/usb/storage/sddr09.c
index b667c7d2b837..170ad86b2d3e 100644
--- a/drivers/usb/storage/sddr09.c
+++ b/drivers/usb/storage/sddr09.c
@@ -41,6 +41,7 @@
41 */ 41 */
42 42
43#include <linux/errno.h> 43#include <linux/errno.h>
44#include <linux/module.h>
44#include <linux/slab.h> 45#include <linux/slab.h>
45 46
46#include <scsi/scsi.h> 47#include <scsi/scsi.h>
@@ -51,7 +52,50 @@
51#include "transport.h" 52#include "transport.h"
52#include "protocol.h" 53#include "protocol.h"
53#include "debug.h" 54#include "debug.h"
54#include "sddr09.h" 55
56
57static int usb_stor_sddr09_dpcm_init(struct us_data *us);
58static int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us);
59static int usb_stor_sddr09_init(struct us_data *us);
60
61
62/*
63 * The table of devices
64 */
65#define UNUSUAL_DEV(id_vendor, id_product, bcdDeviceMin, bcdDeviceMax, \
66 vendorName, productName, useProtocol, useTransport, \
67 initFunction, flags) \
68{ USB_DEVICE_VER(id_vendor, id_product, bcdDeviceMin, bcdDeviceMax), \
69 .driver_info = (flags)|(USB_US_TYPE_STOR<<24) }
70
71struct usb_device_id sddr09_usb_ids[] = {
72# include "unusual_sddr09.h"
73 { } /* Terminating entry */
74};
75MODULE_DEVICE_TABLE(usb, sddr09_usb_ids);
76
77#undef UNUSUAL_DEV
78
79/*
80 * The flags table
81 */
82#define UNUSUAL_DEV(idVendor, idProduct, bcdDeviceMin, bcdDeviceMax, \
83 vendor_name, product_name, use_protocol, use_transport, \
84 init_function, Flags) \
85{ \
86 .vendorName = vendor_name, \
87 .productName = product_name, \
88 .useProtocol = use_protocol, \
89 .useTransport = use_transport, \
90 .initFunction = init_function, \
91}
92
93static struct us_unusual_dev sddr09_unusual_dev_list[] = {
94# include "unusual_sddr09.h"
95 { } /* Terminating entry */
96};
97
98#undef UNUSUAL_DEV
55 99
56 100
57#define short_pack(lsb,msb) ( ((u16)(lsb)) | ( ((u16)(msb))<<8 ) ) 101#define short_pack(lsb,msb) ( ((u16)(lsb)) | ( ((u16)(msb))<<8 ) )
@@ -1406,7 +1450,7 @@ sddr09_common_init(struct us_data *us) {
1406 * unusual devices list but called from here then LUN 0 of the combo reader 1450 * unusual devices list but called from here then LUN 0 of the combo reader
1407 * is not recognized. But I do not know what precisely these calls do. 1451 * is not recognized. But I do not know what precisely these calls do.
1408 */ 1452 */
1409int 1453static int
1410usb_stor_sddr09_dpcm_init(struct us_data *us) { 1454usb_stor_sddr09_dpcm_init(struct us_data *us) {
1411 int result; 1455 int result;
1412 unsigned char *data = us->iobuf; 1456 unsigned char *data = us->iobuf;
@@ -1456,7 +1500,7 @@ usb_stor_sddr09_dpcm_init(struct us_data *us) {
1456/* 1500/*
1457 * Transport for the Microtech DPCM-USB 1501 * Transport for the Microtech DPCM-USB
1458 */ 1502 */
1459int dpcm_transport(struct scsi_cmnd *srb, struct us_data *us) 1503static int dpcm_transport(struct scsi_cmnd *srb, struct us_data *us)
1460{ 1504{
1461 int ret; 1505 int ret;
1462 1506
@@ -1498,7 +1542,7 @@ int dpcm_transport(struct scsi_cmnd *srb, struct us_data *us)
1498/* 1542/*
1499 * Transport for the Sandisk SDDR-09 1543 * Transport for the Sandisk SDDR-09
1500 */ 1544 */
1501int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us) 1545static int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us)
1502{ 1546{
1503 static unsigned char sensekey = 0, sensecode = 0; 1547 static unsigned char sensekey = 0, sensecode = 0;
1504 static unsigned char havefakesense = 0; 1548 static unsigned char havefakesense = 0;
@@ -1697,7 +1741,60 @@ int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us)
1697/* 1741/*
1698 * Initialization routine for the sddr09 subdriver 1742 * Initialization routine for the sddr09 subdriver
1699 */ 1743 */
1700int 1744static int
1701usb_stor_sddr09_init(struct us_data *us) { 1745usb_stor_sddr09_init(struct us_data *us) {
1702 return sddr09_common_init(us); 1746 return sddr09_common_init(us);
1703} 1747}
1748
1749static int sddr09_probe(struct usb_interface *intf,
1750 const struct usb_device_id *id)
1751{
1752 struct us_data *us;
1753 int result;
1754
1755 result = usb_stor_probe1(&us, intf, id,
1756 (id - sddr09_usb_ids) + sddr09_unusual_dev_list);
1757 if (result)
1758 return result;
1759
1760 if (us->protocol == US_PR_DPCM_USB) {
1761 us->transport_name = "Control/Bulk-EUSB/SDDR09";
1762 us->transport = dpcm_transport;
1763 us->transport_reset = usb_stor_CB_reset;
1764 us->max_lun = 1;
1765 } else {
1766 us->transport_name = "EUSB/SDDR09";
1767 us->transport = sddr09_transport;
1768 us->transport_reset = usb_stor_CB_reset;
1769 us->max_lun = 0;
1770 }
1771
1772 result = usb_stor_probe2(us);
1773 return result;
1774}
1775
1776static struct usb_driver sddr09_driver = {
1777 .name = "ums-sddr09",
1778 .probe = sddr09_probe,
1779 .disconnect = usb_stor_disconnect,
1780 .suspend = usb_stor_suspend,
1781 .resume = usb_stor_resume,
1782 .reset_resume = usb_stor_reset_resume,
1783 .pre_reset = usb_stor_pre_reset,
1784 .post_reset = usb_stor_post_reset,
1785 .id_table = sddr09_usb_ids,
1786 .soft_unbind = 1,
1787};
1788
1789static int __init sddr09_init(void)
1790{
1791 return usb_register(&sddr09_driver);
1792}
1793
1794static void __exit sddr09_exit(void)
1795{
1796 usb_deregister(&sddr09_driver);
1797}
1798
1799module_init(sddr09_init);
1800module_exit(sddr09_exit);
diff --git a/drivers/usb/storage/sddr09.h b/drivers/usb/storage/sddr09.h
deleted file mode 100644
index b701172e12e3..000000000000
--- a/drivers/usb/storage/sddr09.h
+++ /dev/null
@@ -1,38 +0,0 @@
1/* Driver for SanDisk SDDR-09 SmartMedia reader
2 * Header File
3 *
4 * Current development and maintenance by:
5 * (c) 2000 Robert Baruch (autophile@dol.net)
6 * (c) 2002 Andries Brouwer (aeb@cwi.nl)
7 *
8 * See sddr09.c for more explanation
9 *
10 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the
12 * Free Software Foundation; either version 2, or (at your option) any
13 * later version.
14 *
15 * This program is distributed in the hope that it will be useful, but
16 * WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License along
21 * with this program; if not, write to the Free Software Foundation, Inc.,
22 * 675 Mass Ave, Cambridge, MA 02139, USA.
23 */
24
25#ifndef _USB_SHUTTLE_EUSB_SDDR09_H
26#define _USB_SHUTTLE_EUSB_SDDR09_H
27
28/* Sandisk SDDR-09 stuff */
29
30extern int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us);
31extern int usb_stor_sddr09_init(struct us_data *us);
32
33/* Microtech DPCM-USB stuff */
34
35extern int dpcm_transport(struct scsi_cmnd *srb, struct us_data *us);
36extern int usb_stor_sddr09_dpcm_init(struct us_data *us);
37
38#endif
diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h
index cfde74a6faa3..1fe7062f1cda 100644
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
@@ -53,6 +53,11 @@
53 * as opposed to devices that do something strangely or wrongly. 53 * as opposed to devices that do something strangely or wrongly.
54 */ 54 */
55 55
56#if !defined(CONFIG_USB_STORAGE_SDDR09) && \
57 !defined(CONFIG_USB_STORAGE_SDDR09_MODULE)
58#define NO_SDDR09
59#endif
60
56/* patch submitted by Vivian Bregier <Vivian.Bregier@imag.fr> 61/* patch submitted by Vivian Bregier <Vivian.Bregier@imag.fr>
57 */ 62 */
58UNUSUAL_DEV( 0x03eb, 0x2002, 0x0100, 0x0100, 63UNUSUAL_DEV( 0x03eb, 0x2002, 0x0100, 0x0100,
@@ -246,12 +251,7 @@ UNUSUAL_DEV( 0x0424, 0x0fdc, 0x0210, 0x0210,
246 US_SC_DEVICE, US_PR_DEVICE, NULL, 251 US_SC_DEVICE, US_PR_DEVICE, NULL,
247 US_FL_SINGLE_LUN ), 252 US_FL_SINGLE_LUN ),
248 253
249#ifdef CONFIG_USB_STORAGE_SDDR09 254#ifdef NO_SDDR09
250UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100,
251 "Microtech",
252 "CameraMate (DPCM_USB)",
253 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ),
254#else
255UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100, 255UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100,
256 "Microtech", 256 "Microtech",
257 "CameraMate", 257 "CameraMate",
@@ -467,20 +467,7 @@ UNUSUAL_DEV( 0x04e6, 0x0002, 0x0100, 0x0100,
467 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init, 467 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init,
468 US_FL_SCM_MULT_TARG ), 468 US_FL_SCM_MULT_TARG ),
469 469
470#ifdef CONFIG_USB_STORAGE_SDDR09 470#ifdef NO_SDDR09
471UNUSUAL_DEV( 0x04e6, 0x0003, 0x0000, 0x9999,
472 "Sandisk",
473 "ImageMate SDDR09",
474 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
475 0),
476
477/* This entry is from Andries.Brouwer@cwi.nl */
478UNUSUAL_DEV( 0x04e6, 0x0005, 0x0100, 0x0208,
479 "SCM Microsystems",
480 "eUSB SmartMedia / CompactFlash Adapter",
481 US_SC_SCSI, US_PR_DPCM_USB, usb_stor_sddr09_dpcm_init,
482 0),
483#else
484UNUSUAL_DEV( 0x04e6, 0x0005, 0x0100, 0x0208, 471UNUSUAL_DEV( 0x04e6, 0x0005, 0x0100, 0x0208,
485 "SCM Microsystems", 472 "SCM Microsystems",
486 "eUSB CompactFlash Adapter", 473 "eUSB CompactFlash Adapter",
@@ -935,14 +922,6 @@ UNUSUAL_DEV( 0x0644, 0x0000, 0x0100, 0x0100,
935 "Floppy Drive", 922 "Floppy Drive",
936 US_SC_UFI, US_PR_CB, NULL, 0 ), 923 US_SC_UFI, US_PR_CB, NULL, 0 ),
937 924
938#ifdef CONFIG_USB_STORAGE_SDDR09
939UNUSUAL_DEV( 0x066b, 0x0105, 0x0100, 0x0100,
940 "Olympus",
941 "Camedia MAUSB-2",
942 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
943 0),
944#endif
945
946/* Reported by Darsen Lu <darsen@micro.ee.nthu.edu.tw> */ 925/* Reported by Darsen Lu <darsen@micro.ee.nthu.edu.tw> */
947UNUSUAL_DEV( 0x066f, 0x8000, 0x0001, 0x0001, 926UNUSUAL_DEV( 0x066f, 0x8000, 0x0001, 0x0001,
948 "SigmaTel", 927 "SigmaTel",
@@ -1057,14 +1036,6 @@ UNUSUAL_DEV( 0x0781, 0x0100, 0x0100, 0x0100,
1057 US_SC_SCSI, US_PR_CB, NULL, 1036 US_SC_SCSI, US_PR_CB, NULL,
1058 US_FL_SINGLE_LUN ), 1037 US_FL_SINGLE_LUN ),
1059 1038
1060#ifdef CONFIG_USB_STORAGE_SDDR09
1061UNUSUAL_DEV( 0x0781, 0x0200, 0x0000, 0x9999,
1062 "Sandisk",
1063 "ImageMate SDDR-09",
1064 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
1065 0),
1066#endif
1067
1068#ifdef CONFIG_USB_STORAGE_FREECOM 1039#ifdef CONFIG_USB_STORAGE_FREECOM
1069UNUSUAL_DEV( 0x07ab, 0xfc01, 0x0000, 0x9999, 1040UNUSUAL_DEV( 0x07ab, 0xfc01, 0x0000, 0x9999,
1070 "Freecom", 1041 "Freecom",
@@ -1091,12 +1062,7 @@ UNUSUAL_DEV( 0x07af, 0x0005, 0x0100, 0x0100,
1091 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init, 1062 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init,
1092 US_FL_SCM_MULT_TARG ), 1063 US_FL_SCM_MULT_TARG ),
1093 1064
1094#ifdef CONFIG_USB_STORAGE_SDDR09 1065#ifdef NO_SDDR09
1095UNUSUAL_DEV( 0x07af, 0x0006, 0x0100, 0x0100,
1096 "Microtech",
1097 "CameraMate (DPCM_USB)",
1098 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ),
1099#else
1100UNUSUAL_DEV( 0x07af, 0x0006, 0x0100, 0x0100, 1066UNUSUAL_DEV( 0x07af, 0x0006, 0x0100, 0x0100,
1101 "Microtech", 1067 "Microtech",
1102 "CameraMate", 1068 "CameraMate",
diff --git a/drivers/usb/storage/unusual_sddr09.h b/drivers/usb/storage/unusual_sddr09.h
new file mode 100644
index 000000000000..50cab511a4d7
--- /dev/null
+++ b/drivers/usb/storage/unusual_sddr09.h
@@ -0,0 +1,56 @@
1/* Unusual Devices File for SanDisk SDDR-09 SmartMedia reader
2 *
3 * This program is free software; you can redistribute it and/or modify it
4 * under the terms of the GNU General Public License as published by the
5 * Free Software Foundation; either version 2, or (at your option) any
6 * later version.
7 *
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License along
14 * with this program; if not, write to the Free Software Foundation, Inc.,
15 * 675 Mass Ave, Cambridge, MA 02139, USA.
16 */
17
18#if defined(CONFIG_USB_STORAGE_SDDR09) || \
19 defined(CONFIG_USB_STORAGE_SDDR09_MODULE)
20
21UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100,
22 "Microtech",
23 "CameraMate (DPCM_USB)",
24 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0),
25
26UNUSUAL_DEV( 0x04e6, 0x0003, 0x0000, 0x9999,
27 "Sandisk",
28 "ImageMate SDDR09",
29 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
30 0),
31
32/* This entry is from Andries.Brouwer@cwi.nl */
33UNUSUAL_DEV( 0x04e6, 0x0005, 0x0100, 0x0208,
34 "SCM Microsystems",
35 "eUSB SmartMedia / CompactFlash Adapter",
36 US_SC_SCSI, US_PR_DPCM_USB, usb_stor_sddr09_dpcm_init,
37 0),
38
39UNUSUAL_DEV( 0x066b, 0x0105, 0x0100, 0x0100,
40 "Olympus",
41 "Camedia MAUSB-2",
42 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
43 0),
44
45UNUSUAL_DEV( 0x0781, 0x0200, 0x0000, 0x9999,
46 "Sandisk",
47 "ImageMate SDDR-09",
48 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
49 0),
50
51UNUSUAL_DEV( 0x07af, 0x0006, 0x0100, 0x0100,
52 "Microtech",
53 "CameraMate (DPCM_USB)",
54 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0),
55
56#endif /* defined(CONFIG_USB_STORAGE_SDDR09) || ... */
diff --git a/drivers/usb/storage/usb.c b/drivers/usb/storage/usb.c
index 490ea761398c..33cce41a5e8a 100644
--- a/drivers/usb/storage/usb.c
+++ b/drivers/usb/storage/usb.c
@@ -69,9 +69,6 @@
69#ifdef CONFIG_USB_STORAGE_USBAT 69#ifdef CONFIG_USB_STORAGE_USBAT
70#include "shuttle_usbat.h" 70#include "shuttle_usbat.h"
71#endif 71#endif
72#ifdef CONFIG_USB_STORAGE_SDDR09
73#include "sddr09.h"
74#endif
75#ifdef CONFIG_USB_STORAGE_SDDR55 72#ifdef CONFIG_USB_STORAGE_SDDR55
76#include "sddr55.h" 73#include "sddr55.h"
77#endif 74#endif
@@ -631,15 +628,6 @@ static void get_transport(struct us_data *us)
631 break; 628 break;
632#endif 629#endif
633 630
634#ifdef CONFIG_USB_STORAGE_SDDR09
635 case US_PR_EUSB_SDDR09:
636 us->transport_name = "EUSB/SDDR09";
637 us->transport = sddr09_transport;
638 us->transport_reset = usb_stor_CB_reset;
639 us->max_lun = 0;
640 break;
641#endif
642
643#ifdef CONFIG_USB_STORAGE_SDDR55 631#ifdef CONFIG_USB_STORAGE_SDDR55
644 case US_PR_SDDR55: 632 case US_PR_SDDR55:
645 us->transport_name = "SDDR55"; 633 us->transport_name = "SDDR55";
@@ -649,15 +637,6 @@ static void get_transport(struct us_data *us)
649 break; 637 break;
650#endif 638#endif
651 639
652#ifdef CONFIG_USB_STORAGE_DPCM
653 case US_PR_DPCM_USB:
654 us->transport_name = "Control/Bulk-EUSB/SDDR09";
655 us->transport = dpcm_transport;
656 us->transport_reset = usb_stor_CB_reset;
657 us->max_lun = 1;
658 break;
659#endif
660
661#ifdef CONFIG_USB_STORAGE_FREECOM 640#ifdef CONFIG_USB_STORAGE_FREECOM
662 case US_PR_FREECOM: 641 case US_PR_FREECOM:
663 us->transport_name = "Freecom"; 642 us->transport_name = "Freecom";
diff --git a/drivers/usb/storage/usual-tables.c b/drivers/usb/storage/usual-tables.c
index 1924e3229409..f808c5262d0c 100644
--- a/drivers/usb/storage/usual-tables.c
+++ b/drivers/usb/storage/usual-tables.c
@@ -77,6 +77,7 @@ struct ignore_entry {
77} 77}
78 78
79static struct ignore_entry ignore_ids[] = { 79static struct ignore_entry ignore_ids[] = {
80# include "unusual_sddr09.h"
80 { } /* Terminating entry */ 81 { } /* Terminating entry */
81}; 82};
82 83