[Bug 234578] Support for Sierra Wireless EM7455 modem

2021-05-31 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=234578

Aleks Michajlow  changed:

   What|Removed |Added

 CC||a...@alexmihajlov.ru

--- Comment #10 from Aleks Michajlow  ---
I have Sierra Wireless EM7345 4G LTE and i have the same probleme.
I can not get IP-adress to ue0 device, becouse it is in Low Power Mode.

# lsusb -d  1199:a001
Bus /dev/usb Device /dev/ugen0.4: ID 1199:a001 Sierra Wireless, Inc. 

# usbconfig -d 0.4 dump_device_desc
ugen0.4:  at usbus0, cfg=0
md=HOST spd=HIGH (480Mbps) pwr=ON (100mA)

  bLength = 0x0012 
  bDescriptorType = 0x0001 
  bcdUSB = 0x0200 
  bDeviceClass = 0x00ef  
  bDeviceSubClass = 0x0002 
  bDeviceProtocol = 0x0001 
  bMaxPacketSize0 = 0x0040 
  idVendor = 0x1199 
  idProduct = 0xa001 
  bcdDevice = 0x1729 
  iManufacturer = 0x0001  
  iProduct = 0x0002  
  iSerialNumber = 0x0003  <013937009553015>
  bNumConfigurations = 0x0001 

This device working good in Linux and OpenBSD

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


[Bug 256296] "No Device" error after using asynchronous API of libusb once

2021-05-31 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256296

Bug ID: 256296
   Summary: "No Device" error after using asynchronous API of
libusb once
   Product: Base System
   Version: Unspecified
  Hardware: Any
OS: Any
Status: New
  Severity: Affects Some People
  Priority: ---
 Component: usb
  Assignee: u...@freebsd.org
  Reporter: sergii.dmyt...@3mdeb.com

Background information
--

fwupd project is using libgusb, which is a Glib wrapper for libusb.

libgusb uses asynchronous API of libusb with events handled in a separate
thread.

fwupd works with devices by opening them, performing operations and then
closing.

How the failure occurs
--

fwupd closes a device before all events of the operation have been processed.
This means that when libusb10_handle_events_sub() eventually processes related
event, the device gets marked as gone (device_is_gone field). On all future
calls libusb_submit_transfer() fails with LIBUSB_ERROR_NO_DEVICE because that
flag is set.

Effectively this means that a device can be used only once in such a way.

As I understand libgusb uses the API as intended and it is implementation of
libusb which shouldn't prevent repeated use of a device. Maybe it should wait
before closing or just reset the flag on opening the device.

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


[Bug 256296] "No Device" error after using asynchronous API of libusb once

2021-05-31 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256296

--- Comment #1 from Sergii  ---
Forgot to say that this happens on 12.2, but I don't think it has changed
since.

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


[Bug 256296] "No Device" error after using asynchronous API of libusb once

2021-05-31 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256296

Hans Petter Selasky  changed:

   What|Removed |Added

 CC||hsela...@freebsd.org

--- Comment #2 from Hans Petter Selasky  ---
Hi,

I think this is a bug in the the application.

If you close the USB device while transfers are pending, the completion events
won't be delivered. I guess you need to wait for the pending transfers to
complete before you close the device.

--HPS

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


[Bug 256296] "No Device" error after using asynchronous API of libusb once

2021-05-31 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256296

--- Comment #3 from Sergii  ---
Hi,

I don't know what kind of event comes and might need to investigate callbacks
more, but why mark device as gone in this case? It's not gone, it's just
closed.

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


[Bug 256296] "No Device" error after using asynchronous API of libusb once

2021-05-31 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256296

Tomasz "CeDeROM" CEDRO  changed:

   What|Removed |Added

 CC||to...@cedro.info

--- Comment #4 from Tomasz "CeDeROM" CEDRO  ---
Hey Sergii, HPS :-) 

Sergii is it possible to open device again after closing? It should not be
possible to transfer to a device that is not opened.. so LIBUSB_ERROR_NO_DEVICE
may indicate that device is not opened and there is nowhere to tranfer to.
Asynchronous transfers may be put on some sort of list and close function
should verify the list before closing..? Can you verify with the application?
:-)

In order to analyse situation in depth Wireshark can dump the USB traffic. You
may want to compare Linux and FreeBSD behaviour if you suspect (low pobable)
problem in the stack :-)

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


[Bug 256296] "No Device" error after using asynchronous API of libusb once

2021-05-31 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256296

--- Comment #5 from Sergii  ---
Created attachment 225431
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=225431&action=edit
Bug reproducer

> Sergii is it possible to open device again after closing? It should not be 
> possible to transfer to a device that is not opened.. so 
> LIBUSB_ERROR_NO_DEVICE may indicate that device is not opened and there is 
> nowhere to tranfer to.

Yes, device can be opened. Transfer is done after opening the device, that's
not the issue.

> Asynchronous transfers may be put on some sort of list and close function 
> should verify the list before closing..? Can you verify with the application? 
> :-)

Actually looks like the first time the error happens even without any
transactions (no libusb_submit_transfer() calls). The device is opened, some
info calls are done, it's closed, second thread wakes up, finds that 32 bytes
are available to read and marks the device as gone.

I've made a simple example where the behaviour manifests itself in debugger
almost every time. Setting breakpoints helps with that. In fwupd breakpoint on
libusb_close() isn't necessary.

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


Re: eGalax USB touchscreen issues

2021-05-31 Thread Vladimir Kondratyev
On 29.05.2021 23:27, Mark Kane wrote:
> On 2021-05-28 05:37, Vladimir Kondratyev wrote:
>> Yes, hpen(4) supports them.
>>
>> It is required to apply some quirks though as TouchScreen usage page
>> is handled with hmt(4) driver by default.
>> Try attached patch and don't forget to enable usbhid(4) to use it with
>> addition of following lines to /boot/loader.conf:
>>
>> hw.usb.usbhid.enable=1
>> usbhid_load="YES"
> 
> Thanks for the patch. With this hpen(4) attaches, just one libinput
> error now about btn-stylus:
> 
> ugen0.3:  at usbus0
> usbhid0 on uhub1
> usbhid0:  addr 3> on usbus0
> hidbus0:  on usbhid0
> hpen0:  on hidbus0
> hpen1:  on hidbus0
> hconf0:  on hidbus0
> 
> [    85.007] (II) config/udev: Adding input device eGalax Inc. USB
> TouchController Digitizer (/dev/input/event5)
> [    85.007] (**) eGalax Inc. USB TouchController Digitizer: Applying
> InputClass "evdev tablet catchall"
> [    85.007] (**) eGalax Inc. USB TouchController Digitizer: Applying
> InputClass "libinput tablet catchall"
> [    85.007] (II) Using input driver 'libinput' for 'eGalax Inc. USB
> TouchController Digitizer'
> [    85.007] (**) eGalax Inc. USB TouchController Digitizer: always
> reports core events
> [    85.007] (**) Option "Device" "/dev/input/event5"
> [    85.007] (**) Option "_source" "server/udev"
> [    85.010] (II) event5  - eGalax Inc. USB TouchController Digitizer:
> is tagged by udev as: Tablet
> [    85.171] (EE) event5  - eGalax Inc. USB TouchController Digitizer:
> libinput bug: missing tablet capabilities: btn-stylus resolution.
> Ignoring this device.
> [    85.172] (II) event5  - eGalax Inc. USB TouchController Digitizer:
> device is a tablet
> [    85.182] (II) event5  - failed to create input device
> '/dev/input/event5'.
> [    85.182] (EE) libinput: eGalax Inc. USB TouchController Digitizer:
> Failed to create a device for /dev/input/event5
> [    85.182] (EE) PreInit returned 2 for "eGalax Inc. USB
> TouchController Digitizer"
> [    85.182] (II) UnloadModule: "libinput"
> [    85.182] (II) config/udev: Adding input device eGalax Inc. USB
> TouchController Digitizer (/dev/input/event6)
> [    85.182] (**) eGalax Inc. USB TouchController Digitizer: Applying
> InputClass "evdev tablet catchall"
> [    85.183] (**) eGalax Inc. USB TouchController Digitizer: Applying
> InputClass "libinput tablet catchall"
> [    85.183] (II) Using input driver 'libinput' for 'eGalax Inc. USB
> TouchController Digitizer'
> [    85.183] (**) eGalax Inc. USB TouchController Digitizer: always
> reports core events
> [    85.183] (**) Option "Device" "/dev/input/event6"
> [    85.183] (**) Option "_source" "server/udev"
> [    85.186] (II) event6  - eGalax Inc. USB TouchController Digitizer:
> is tagged by udev as: Tablet
> [    85.229] (EE) event6  - eGalax Inc. USB TouchController Digitizer:
> libinput bug: missing tablet capabilities: btn-stylus resolution.
> Ignoring this device.
> [    85.229] (II) event6  - eGalax Inc. USB TouchController Digitizer:
> device is a tablet
> [    85.239] (II) event6  - failed to create input device
> '/dev/input/event6'.
> [    85.239] (EE) libinput: eGalax Inc. USB TouchController Digitizer:
> Failed to create a device for /dev/input/event6
> [    85.239] (EE) PreInit returned 2 for "eGalax Inc. USB
> TouchController Digitizer"
> [    85.239] (II) UnloadModule: "libinput"

Could you run usbhid-dump one more time?
Following part of dump is broken and does not match Xorg log:

000:003:000:DESCRIPTOR 1621478496.823720
  8D 0F 00 09 42 09 32 15 00 25 01 95 02 75 01 81
  02 95 06 75 01 81 03 05 01 09 30 75 10 95 01 A4
  55 00 65 00 36 00 00 46 00 00 16 1E 00 26 C8 0F
  81 02 09 31 16 3C 00 26

Does evemu-record (devel/evemu) hear any events from eGlax?

-- 
WBR
Vladimir Kondratyev
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"