usb: usb-storage: No additional quirks need to be added to the ECD819-SU3 optical drive.
Subsystems (2)
PATCH 1/1 usb: usb-storage: No additional quirks need to be added to the ECD819-SU3 optical drive.
From: Chen Changcheng <[email protected]>
The optical drive of ECD819-SU3 has the same vid and pid as INIC-3069, as follows:
T: Bus=02 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#= 3 Spd=5000 MxCh= 0 D: Ver= 3.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1 P: Vendor=13fd ProdID=3940 Rev= 3.10 S: Manufacturer=HL-DT-ST S: Product= DVD+-RW GT80N S: SerialNumber=423349524E4E38303338323439202020 C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=144mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=02 Prot=50 Driver=usb-storage E: Ad=83(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms E: Ad=0a(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms
This will result in the optical drive device also adding the quirks of US_FL_NO_ATA_1X. When performing an erase operation, it will fail, and the reason for the failure is as follows:
[ 388.967742] sr 5:0:0:0: [sr0] tag#0 Send: scmd 0x00000000d20c33a7 [ 388.967742] sr 5:0:0:0: [sr0] tag#0 CDB: ATA command pass through(12)/Blank a1 11 00 00 00 00 00 00 00 00 00 00 [ 388.967773] sr 5:0:0:0: [sr0] tag#0 Done: SUCCESS Result: hostbyte=DID_TARGET_FAILURE driverbyte=DRIVER_OK cmd_age=0s [ 388.967773] sr 5:0:0:0: [sr0] tag#0 CDB: ATA command pass through(12)/Blank a1 11 00 00 00 00 00 00 00 00 00 00 [ 388.967803] sr 5:0:0:0: [sr0] tag#0 Sense Key : Illegal Request [current] [ 388.967803] sr 5:0:0:0: [sr0] tag#0 Add. Sense: Invalid field in cdb [ 388.967803] sr 5:0:0:0: [sr0] tag#0 scsi host busy 1 failed 0 [ 388.967803] sr 5:0:0:0: Notifying upper driver of completion (result 8100002) [ 388.967834] sr 5:0:0:0: [sr0] tag#0 0 sectors total, 0 bytes done.
--- drivers/usb/storage/unusual_uas.h | 6 ++++++ 1 file changed, 6 insertions(+)
drivers/usb/storage/unusual_uas.h +6 -0
@@ -97,6 +97,12 @@ UNUSUAL_DEV(0x125f, 0xa94a, 0x0160, 0x0160, USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NO_ATA_1X), +UNUSUAL_DEV (0x13fd ,0x3940 ,0x0310 ,0x0310 , +"Initio Corporation" , +"external DVD burner ECD819-SU3" , +USB_SC_DEVICE ,USB_PR_DEVICE ,NULL , +NULL ), +/* Reported-by: Benjamin Tissoires <[email protected]> */ UNUSUAL_DEV(0x13fd, 0x3940, 0x0000, 0x9999, "Initio Corporation",
base-commit: 284922f4c563aa3a8558a00f2a05722133237fe8
Signature · 1 line
2.25.1
Alan Stern
maintainerQuoted 40 lines · On Fri, Nov 07, 2025 at 02:10:46PM +0800, [email protected] wrote:
From: Chen Changcheng <[email protected]>
The optical drive of ECD819-SU3 has the same vid and pid as INIC-3069, as follows:
T: Bus=02 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#= 3 Spd=5000 MxCh= 0 D: Ver= 3.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1 P: Vendor=13fd ProdID=3940 Rev= 3.10 S: Manufacturer=HL-DT-ST S: Product= DVD+-RW GT80N S: SerialNumber=423349524E4E38303338323439202020 C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=144mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=02 Prot=50 Driver=usb-storage E: Ad=83(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms E: Ad=0a(O) Atr=02(Bulk) MxPS=1024 Ivl=0msThis will result in the optical drive device also adding the quirks of
US_FL_NO_ATA_1X. When performing an erase operation, it will fail, and the reason for the failure is as follows:[ 388.967742] sr 5:0:0:0: [sr0] tag#0 Send: scmd 0x00000000d20c33a7 [ 388.967742] sr 5:0:0:0: [sr0] tag#0 CDB: ATA command pass through(12)/Blank a1 11 00 00 00 00 00 00 00 00 00 00 [ 388.967773] sr 5:0:0:0: [sr0] tag#0 Done: SUCCESS Result: hostbyte=DID_TARGET_FAILURE driverbyte=DRIVER_OK cmd_age=0s [ 388.967773] sr 5:0:0:0: [sr0] tag#0 CDB: ATA command pass through(12)/Blank a1 11 00 00 00 00 00 00 00 00 00 00 [ 388.967803] sr 5:0:0:0: [sr0] tag#0 Sense Key : Illegal Request [current] [ 388.967803] sr 5:0:0:0: [sr0] tag#0 Add. Sense: Invalid field in cdb [ 388.967803] sr 5:0:0:0: [sr0] tag#0 scsi host busy 1 failed 0 [ 388.967803] sr 5:0:0:0: Notifying upper driver of completion (result 8100002) [ 388.967834] sr 5:0:0:0: [sr0] tag#0 0 sectors total, 0 bytes done.Signed-off-by Chen Changcheng <[email protected]>--- drivers/usb/storage/unusual_uas.h | 6 ++++++ 1 file changed, 6 insertions(+)drivers/usb/storage/unusual_uas.h +0
-0@@ -97,6 +97,12 @@ UNUSUAL_DEV(0x125f, 0xa94a, 0x0160, 0x0160,USB_SC_DEVICE ,USB_PR_DEVICE ,NULL , US_FL_NO_ATA_1X),
drivers/usb/storage/unusual_uas.h UNUSUAL_DEV(0x125f, 0xa94a, 0x0160, 0x0160, · line 108
Quoted 10 lines
drivers/usb/storage/unusual_uas.h +6
-0+UNUSUAL_DEV (0x13fd ,0x3940 ,0x0310 ,0x0310 , +"Initio Corporation" , +"external DVD burner ECD819-SU3" , +USB_SC_DEVICE ,USB_PR_DEVICE ,NULL , +NULL ), +/* Reported-by: Benjamin Tissoires <[email protected]> */ UNUSUAL_DEV(0x13fd, 0x3940, 0x0000, 0x9999, "Initio Corporation",
It's unprecedented to have two quirks with the same VID and PID, where the second augments the first by virtue of its wider range of bcdDevice values.
As explained in commit 89f23d51defc ("uas: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069"), the original Initio Corporation quirk in unusual_uas.h was added as a copy of the corresponding quirk in unusual_devs.h, which applies only to bcdDevice = 0x0209. Should we simply limit the existing unusual_uas.h quirk in the same way?
Benjamin and Alan, you two appear to be the people who originally reported the need for this uas quirk. Do you have any objection to changing the bcdDevice range from 0x0000 - 0x9999 to 0x0209 - 0x0209? Or can you suggest a range that does not include 0x0310?
Alan Stern
Quoted 64 lines · On Fri, Nov 07, 2025 at 02:10:46PM +0800, [email protected] wrote:
Quoted 47 lines
From: Chen Changcheng <[email protected]>
The optical drive of ECD819-SU3 has the same vid and pid as INIC-3069, as follows:
T:? Bus=02 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#=? 3 Spd=5000 MxCh= 0 D:? Ver= 3.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs=? 1 P:? Vendor=13fd ProdID=3940 Rev= 3.10
S:? Manufacturer=HL-DT-ST
S:? Product= DVD+-RW GT80N
S:? SerialNumber=423349524E4E38303338323439202020
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=144mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=02 Prot=50 Driver=usb-storage E:? Ad=83(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:? Ad=0a(O) Atr=02(Bulk) MxPS=1024 Ivl=0msThis will result in the optical drive device also adding
the quirks ofUS_FL_NO_ATA_1X. When performing an erase operation,
it will fail, and the reason for the failure is as follows:
[? 388.967742] sr 5:0:0:0: [sr0] tag#0 Send: scmd0x00000000d20c33a7
[? 388.967742] sr 5:0:0:0: [sr0] tag#0 CDB: ATA command pass through(12)/Blank a1 11 00 00 00 00 00 00 00 00 00 00 [? 388.967773] sr 5:0:0:0: [sr0] tag#0 Done: SUCCESS Result: hostbyte=DID_TARGET_FAILURE driverbyte=DRIVER_OK cmd_age=0s [? 388.967773] sr 5:0:0:0: [sr0] tag#0 CDB: ATA command pass through(12)/Blank a1 11 00 00 00 00 00 00 00 00 00 00 [? 388.967803] sr 5:0:0:0: [sr0] tag#0 Sense Key : Illegal Request [current]
[? 388.967803] sr 5:0:0:0: [sr0] tag#0 Add. Sense: Invalid field in cdb
[? 388.967803] sr 5:0:0:0: [sr0] tag#0 scsi host busy 1 failed 0
[? 388.967803] sr 5:0:0:0: Notifying upper driver of completion (result 8100002)
[? 388.967834] sr 5:0:0:0: [sr0] tag#0 0 sectors total, 0 bytes done.Signed-off-by Chen Changcheng <[email protected]>---
?drivers/usb/storage/unusual_uas.h| 6 ++++++
? 1 file changed, 6 insertions(+)drivers/usb/storage/unusual_uas.h +0
-0@@ -97,6 +97,12 @@ UNUSUAL_DEV(0x125f, 0xa94a, 0x0160, 0x0160, ? USB_SC_DEVICE, USB_PR_DEVICE, NULL, ? US_FL_NO_ATA_1X),?
drivers/usb/storage/unusual_uas.h +6
-0+UNUSUAL_DEV (0x13fd ,0x3940 ,0x0310 ,0x0310 , +"Initio Corporation" , +"external DVD burner ECD819-SU3" , +USB_SC_DEVICE ,USB_PR_DEVICE ,NULL , + NULL), +Quoted 3 lines
? /* Reported-by: Benjamin Tissoires <[email protected]> */ ? UNUSUAL_DEV(0x13fd,
0x3940,0x0000,0x9999,
? "Initio Corporation",It's unprecedented to have two quirks with the same VID and PID, where the second augments the first by virtue of its wider range of bcdDevice values.
As explained in commit
89f23d51defc("uas: AddUS_FL_IGNORE_RESIDUEfor Initio Corporation INIC-3069"), the original Initio Corporation quirk inunusual_uas.hwas added as a copy of the corresponding quirk inunusual_devs.h, which applies only to bcdDevice =0x0209.? Should we simply limit the existingunusual_uas.hquirk in the same way?
Quoted 6 lines
Benjamin and Alan, you two appear to be the people who originally reported the need for this uas quirk.? Do you have any objection to changing the bcdDevice range from
0x0000-0x9999to0x0209-0x0209?? Or can you suggest a range that does not include0x0310?Alan Stern
Of course, we cannot have two quirks on devices with the same PID and VID. However, since we do not have the INIC-3069 USB device here, we cannot determine how to narrow down the scope. As you suggested,
it would be best to narrow the bcdDevice range to 0x0209 - 0x0209.
Chen Changcheng
Quoted 78 lines · Alan Stern
Quoted 58 lines · On Fri, Nov 07, 2025 at 02:10:46PM +0800, [email protected] wrote:
From: Chen Changcheng <[email protected]>
The optical drive of ECD819-SU3 has the same vid and pid as INIC- 3069,
as follows:
T: Bus=02 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#= 3 Spd=5000 MxCh= 0 D: Ver= 3.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1 P: Vendor=13fd ProdID=3940 Rev= 3.10
S: Manufacturer=HL-DT-ST
S: Product= DVD+-RW GT80N
S: SerialNumber=423349524E4E38303338323439202020
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=144mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=02 Prot=50 Driver=usb- storage
E: Ad=83(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E: Ad=0a(O) Atr=02(Bulk) MxPS=1024 Ivl=0msThis will result in the optical drive device also adding the quirks of
US_FL_NO_ATA_1X. When performing an erase operation, it will fail, and the reason for the failure is as follows:
[ 388.967742] sr 5:0:0:0: [sr0] tag#0 Send: scmd0x00000000d20c33a7
[ 388.967742] sr 5:0:0:0: [sr0] tag#0 CDB: ATA command pass through(12)/Blank a1 11 00 00 00 00 00 00 00 00 00 00
[ 388.967773] sr 5:0:0:0: [sr0] tag#0 Done: SUCCESS Result:
hostbyte=DID_TARGET_FAILURE driverbyte=DRIVER_OK cmd_age=0s [ 388.967773] sr 5:0:0:0: [sr0] tag#0 CDB: ATA command pass through(12)/Blank a1 11 00 00 00 00 00 00 00 00 00 00
[ 388.967803] sr 5:0:0:0: [sr0] tag#0 Sense Key : Illegal Request [current]
[ 388.967803] sr 5:0:0:0: [sr0] tag#0 Add. Sense: Invalid field in cdb
[ 388.967803] sr 5:0:0:0: [sr0] tag#0 scsi host busy 1 failed 0 [ 388.967803] sr 5:0:0:0: Notifying upper driver of completion (result 8100002)
[ 388.967834] sr 5:0:0:0: [sr0] tag#0 0 sectors total, 0 bytes done.Signed-off-by Chen Changcheng <[email protected]>---
drivers/usb/storage/unusual_uas.h | 6 ++++++1 file changed, 6 insertions(+)drivers/usb/storage/unusual_uas.h +0
-0@@ -97,6 +97,12 @@ UNUSUAL_DEV(0x125f, 0xa94a, 0x0160, 0x0160, USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NO_ATA_1X),drivers/usb/storage/unusual_uas.h +6
-0+UNUSUAL_DEV (0x13fd ,0x3940 ,0x0310 ,0x0310 , +"Initio Corporation" , +"external DVD burner ECD819-SU3" , +USB_SC_DEVICE ,USB_PR_DEVICE ,NULL , + NULL), +Quoted 4 lines
/* Reported-by: Benjamin Tissoires <[email protected]> */
UNUSUAL_DEV(0x13fd,0x3940,0x0000,0x9999,
"Initio Corporation",It's unprecedented to have two quirks with the same VID and PID, where
the second augments the first by virtue of its wider range of bcdDevice
values.As explained in commit
89f23d51defc("uas: AddUS_FL_IGNORE_RESIDUEfor
Initio Corporation INIC-3069"), the original Initio Corporation quirk inunusual_uas.hwas added as a copy of the corresponding quirk inunusual_devs.h, which applies only to bcdDevice = 0x0209. Should we simply limit the existingunusual_uas.hquirk in the same way?
Quoted 5 lines
Benjamin and Alan, you two appear to be the people who originally reported the need for this uas quirk. Do you have any objection to changing the bcdDevice range from
0x0000-0x9999to0x0209-0x0209?
Or can you suggest a range that does not include0x0310?
Can only provide lsusb details for my device. Still need the residue flag for use with MakeMKV.
Bus 002 Device 002: ID 13fd:3940 Initio Corporation external DVD burner ECD819-SU3
Negotiated speed: SuperSpeed (5Gbps)
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 3.00
bDeviceClass 0 [unknown] bDeviceSubClass 0 [unknown] bDeviceProtocol 0 bMaxPacketSize0 9 idVendor 0x13fd Initio Corporation idProduct 0x3940 external DVD burner ECD819-SU3 bcdDevice 3.09 iManufacturer 1 Optiarc iProduct 2 BD ROM BC-5500H iSerial 3 20202020202020202020202020202020 bNumConfigurations 1
Signature · 1 line
Alan.
kernel test robot
build botkernel test robot noticed the following build warnings:
Hi,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 284922f4c563aa3a8558a00f2a05722133237fe8]
url: https://github.com/intel-lab-lkp/linux/commits/ccc194101-163-com/usb-usb-storage-No-additional-quirks-need-to-be-added-to-the-ECD819-SU3-optical-drive/20251107-141330 base: 284922f4c563aa3a8558a00f2a05722133237fe8 patch link: https://lore.kernel.org/r/20251107061046.32339-1-ccc194101%40163.com patch subject: [PATCH] usb: usb-storage: No additional quirks need to be added to the ECD819-SU3 optical drive. config: nios2-randconfig-001-20251109 (https://download.01.org/0day-ci/archive/20251109/[email protected]/config) compiler: nios2-linux-gcc (GCC) 11.5.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251109/[email protected]/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
All warnings (new ones prefixed by >>):
>> drivers/usb/storage/uas.c:928:24: warning: initialization of 'long unsigned int' from 'void *' makes integer from pointer without a cast [-Wint-conversion]
928 | .driver_info = (flags) }
| ^
drivers/usb/storage/unusual_uas.h:100:1: note: in expansion of macro 'UNUSUAL_DEV'
100 | UNUSUAL_DEV(0x13fd, 0x3940, 0x0310, 0x0310,
| ^~~~~~~~~~~
drivers/usb/storage/uas.c:928:24: note: (near initialization for 'uas_usb_ids[9].driver_info')
928 | .driver_info = (flags) }
| ^
drivers/usb/storage/unusual_uas.h:100:1: note: in expansion of macro 'UNUSUAL_DEV'
100 | UNUSUAL_DEV(0x13fd, 0x3940, 0x0310, 0x0310,
| ^~~~~~~~~~~Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for LEDS_EXPRESSWIRE Depends on [n]: GPIOLIB [=n] || NEW_LEDS [=y] && GPIOLIB [=n] Selected by [m]:
- BACKLIGHT_KTD2801 [=m] && HAS_IOMEM [=y] && BACKLIGHT_CLASS_DEVICE [=y]
vim +928 drivers/usb/storage/uas.c
115bb1ffa54c39 Matthew Wilcox 2010-10-07 923
79b4c06112f12c Hans de Goede 2013-10-25 924 #define UNUSUAL_DEV(id_vendor, id_product, bcdDeviceMin, bcdDeviceMax, \
79b4c06112f12c Hans de Goede 2013-10-25 925 vendorName, productName, useProtocol, useTransport, \
79b4c06112f12c Hans de Goede 2013-10-25 926 initFunction, flags) \
79b4c06112f12c Hans de Goede 2013-10-25 927 { USB_DEVICE_VER(id_vendor, id_product, bcdDeviceMin, bcdDeviceMax), \79b4c06112f12c Hans de Goede 2013-10-25 @928 .driver_info = (flags) }79b4c06112f12c Hans de Goede 2013-10-25 929
Signature · 2 lines
0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
kernel test robot
build botkernel test robot noticed the following build errors:
Hi,
kernel test robot noticed the following build errors:
[auto build test ERROR on 284922f4c563aa3a8558a00f2a05722133237fe8]
url: https://github.com/intel-lab-lkp/linux/commits/ccc194101-163-com/usb-usb-storage-No-additional-quirks-need-to-be-added-to-the-ECD819-SU3-optical-drive/20251107-141330 base: 284922f4c563aa3a8558a00f2a05722133237fe8 patch link: https://lore.kernel.org/r/20251107061046.32339-1-ccc194101%40163.com patch subject: [PATCH] usb: usb-storage: No additional quirks need to be added to the ECD819-SU3 optical drive. config: loongarch-randconfig-001-20251109 (https://download.01.org/0day-ci/archive/20251109/[email protected]/config) compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project b9ea93cd5c37fb6d606502fd01208dd48330549d) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251109/[email protected]/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
All errors (new ones prefixed by >>):
In file included from drivers/usb/storage/uas.c:931:
>> drivers/usb/storage/unusual_uas.h:100:1: error: incompatible pointer to integer conversion initializing 'kernel_ulong_t' (aka 'unsigned long') with an expression of type 'void *' [-Wint-conversion]
100 | UNUSUAL_DEV(0x13fd, 0x3940, 0x0310, 0x0310,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
101 | "Initio Corporation",
| ~~~~~~~~~~~~~~~~~~~~~
102 | "external DVD burner ECD819-SU3",
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
103 | USB_SC_DEVICE, USB_PR_DEVICE, NULL,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
104 | NULL),
| ~~~~~
drivers/usb/storage/uas.c:928:17: note: expanded from macro 'UNUSUAL_DEV'
928 | .driver_info = (flags) }
| ^~~~~~~1 error generated.
vim +100 drivers/usb/storage/unusual_uas.h
> 100 UNUSUAL_DEV(0x13fd, 0x3940, 0x0310, 0x0310,
101 "Initio Corporation",
102 "external DVD burner ECD819-SU3",
103 USB_SC_DEVICE, USB_PR_DEVICE, NULL,
104 NULL),
105
Signature · 2 lines
0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki