On Tue, Feb 08, 2022 at 03:34:19PM +0200, Dmytro Bagrii wrote: > On 08.02.22 12:34, Greg KH wrote: > > On Mon, Feb 07, 2022 at 02:08:23AM +0200, Dmytro Bagrii wrote: > >> This reverts commit 46ee4abb10a07bd8f8ce910ee6b4ae6a947d7f63. > >> CH341A has three different modes of operation selectable either by > >> hardware pin connections or by external EEPROM configuration. Each > >> mode is represented by corresponding product ID: > >> > >> 0x5523: Asyncronous Serial Interface > >> 0x5584: Parallel Printer Interface > >> 0x5512: EPP/MEM Interface > > > > That does not corrispond with what Jan-Niklas said in the original > > commit. > > The page mentioned in the original commit is unavailable for me for some > reason. > > I refer to the chip manufacturer documentation from here: > http://wch-ic.com/downloads/CH341DS1_PDF.html. > > I have this kind of CH341A programmer: > http://www.chinalctech.com/cpzx/Programmer/Serial_Module/266.html > > When mode selection jumper is set to UART: > > [52206.834474] usb 1-4.1: new full-speed USB device number 10 using xhci_hcd > [52206.925482] usb 1-4.1: New USB device found, idVendor=1a86, > idProduct=5523, bcdDevice= 3.04 > [52206.925494] usb 1-4.1: New USB device strings: Mfr=0, Product=0, > SerialNumber=0 > [52206.973701] usbcore: registered new interface driver ch341 > [52206.973710] usbserial: USB Serial support registered for ch341-uart > [52206.973720] ch341 1-4.1:1.0: ch341-uart converter detected > [52206.974424] usb 1-4.1: ch341-uart converter now attached to ttyUSB0 > > ch341 creates /dev/ttyUSB0 and it works as a serial port, as expected. > > When mode selection jumper is set to I2C/SPI (it uses EPP/MEM Interface): > > [52413.942116] usb 1-4.1: new full-speed USB device number 11 using xhci_hcd > [52414.033085] usb 1-4.1: New USB device found, idVendor=1a86, > idProduct=5512, bcdDevice= 3.04 > [52414.033097] usb 1-4.1: New USB device strings: Mfr=0, Product=0, > SerialNumber=0 > [52414.040928] ch341 1-4.1:1.0: ch341-uart converter detected > [52414.041930] usb 1-4.1: ch341-uart converter now attached to ttyUSB0 > > ch341 creates /dev/ttyUSB0 but it doesn't work. > > To use CH341A programmer as I2C/SPI converter either external module is > required or userspace tools must be used. But they don't work until > ch341 handles 1a86:5512. > > If unbind device from ch341 module: > > # echo 1-4.1:1.0 > /sys/bus/usb/drivers/ch341/unbind > > I2C/SPI tools start to work correctly. > > >> (See "5.3.Function configuration" in datasheet at wch-ic.com/downloads/CH341DS1_PDF.html) > >> > >> When CH341A is configured as EPP/MEM Interface it appears as 1a86:5512 and being mistakenly > >> handled by ch341 USB serial driver. > >> > >> It is possible to use CH341A in EPP/MEM mode only if ch341 module is blacklisted, but it must be > >> unblacklisted every time to use CH341A as a serial converter. Also obviously it is impossible > >> to use two CH341A boards in different modes simoultaneously. > > > > Please wrap your lines at 72 columns. > > Sure. Should i submit new patch verіon then? Please do so. But make sure you read this thread first if you haven't already: https://lore.kernel.org/r/YJ0OCS/sh+1ifD/q@xxxxxxxxxxxxxxxxxxxx I don't remember all the details, but judging from a quick look it seems we're just waiting for someone to resend the revert with a proper explanation. It would be good if Jan-Niklas could chime in too and confirm if he's able to use the device in UART mode instead. Johan