Opened 17 months ago

Last modified 3 weeks ago

#18094 new bug

Tethering not working with Nokia 6.1

Reported by: topolinik Owned by: pulkomandy
Priority: normal Milestone: Unscheduled
Component: Drivers/Network/usb_rndis Version: R1/beta4
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

With a Nokia 6.1 (Android One phone) tethering works under linux.

Under haiku x86_64 b4tc0 the network interface does not appear. The phone is plugged into a USB2 port.

Attaching syslog and usb diagnostics.

Attachments (4)

syslog (394.1 KB ) - added by topolinik 17 months ago.
Nokia_detail_usb (31.4 KB ) - added by topolinik 17 months ago.
syslog_20240427 (335.5 KB ) - added by topolinik 3 weeks ago.
listusb_20240427 (31.8 KB ) - added by topolinik 3 weeks ago.

Download all attachments as: .zip

Change History (9)

by topolinik, 17 months ago

Attachment: syslog added

by topolinik, 17 months ago

Attachment: Nokia_detail_usb added

comment:1 by diver, 17 months ago

Component: Network & InternetDrivers/USB/XHCI
Keywords: tethering nokia usb removed
Owner: changed from nobody to waddlesplash
Platform: x86-64All

comment:2 by waddlesplash, 3 months ago

Please retest with a recent nightly.

by topolinik, 3 weeks ago

Attachment: syslog_20240427 added

by topolinik, 3 weeks ago

Attachment: listusb_20240427 added

comment:3 by topolinik, 3 weeks ago

Tested with a fresh kernel image, but nothing changed. I mean no network interface detected.

Attached new syslog and listusb output.

comment:4 by bipolar, 3 weeks ago

I had a similar situation on #17746, where what the driver expects, and what the USB device reports differed too much.

See what PulkoMandy wrote there: https://dev.haiku-os.org/ticket/17746#comment:4

I was able to make my device work (with some rough edges), by following his suggested changes.

If you don't mind getting your hands dirty, maybe you can also do similar modifications so it recognizes your device? Judging from your listusb output... it looks to me like it might work once it passes the "detection" steps of the driver (interface 1 and 2 look pretty similar to mine at least).

(I should get back to mine, see if I can add some more checks, as suggested by Adrien, and submit the patch for review).

Adding your your phone might not be that difficult... For reference, you could use my newest .diff as a base:

https://dev.haiku-os.org/attachment/ticket/17746/usb_rndis-diff2.txt

Something like adding: , { 0x00, 0x00, 0x00, 0x2e04, 0xc008 } after line 19 on that diff, and something like:

          } else if (descriptor->interface_class == 0xef
                       && descriptor->interface_subclass == 0x04
                       && descriptor->interface_protocol == 0x01) {
               // ToDo: check interface string here, "continue" if it's not "RNDIS Communications Control"
          } else {

either after line 66, or replacing the else on line 71...

(sorry for not providing a proper .diff directly, I'm not on my main machine right now).

Last edited 3 weeks ago by bipolar (previous) (diff)

comment:5 by waddlesplash, 3 weeks ago

Component: Drivers/USB/XHCIDrivers/Network/usb_rndis
Owner: changed from waddlesplash to pulkomandy

Well, the XHCI errors look better, the remaining ones are probably harmless.

Note: See TracTickets for help on using tickets.