Skip to content

WiFi regression with rtl8xxxu module between 6.8 and 6.9 #7245

@GamerBene19

Description

@GamerBene19

Describe the bug

I am trying to use a RTL8188CUS based wifi dongle (Edimax EW-7811Un) on a RPi 2B with the rtl8xxxu module under LibreELEC.

I experience a weird issue where I can authenticate and associate with a wifi access point but it seems like I can't send any traffic after that.
In particular, this is noticeable as I don't get assigned an IP address via DHCP and am left with a link-local IPv4 address.
LibreELEC uses connman and iw for wifi connections, although I am relatively certain they are not the issue here.

I did some thorough debugging (at least imo; see link to thread below) and at this point I am reasonably sure this is a regression either here, or in the upstream linux kernel. I am leaning towards upstream linux, but am opening a bug report here first to rule out any raspberrypi specific changes.

In particular, with all other packages being equal and only the version of the (raspberrypi) linux kernel changing, I

  • do not experience this issue with rpi-6.8.y
  • do (first) experience this issue with rpi-6.9.y

Through bisecting I've found that

  • 2ed7064 is the first commit on rpi-6.8.y that results in a bootable LibreELEC image. The issue does not occur with a kernel built from this commit.
  • 03ff51a is the first commit on rpi-6.8.y that results in a bootable LibreELEC image. The issue does occur with a kernel built from this commit.

I tried bisecting between the two branches to find which commit caused the regression, but unfortunately I can't build a LibreELEC image of the shared merge-base (e8f897f).
As far as I can tell, this is because upstream linux does not have the arch/arm/boot/dts/overlays/ directory that this project (and LibreELEC) uses.
I am reasonably sure that the other commits up to (but excluding) the hashes mentioned above (for the respective branches) do not result in a bootable LibreELEC image either, although I have not tested every one of them, but only the ones that git bisect checked out along the way.

For more details, including what I've done to debug this issue and to arrive at this conclusion, you might want to read my posts over on the LibreELEC thread starting with this one and onwards.

Any help/feedback would be greatly appreciated

Steps to reproduce the behaviour

On a high level:
0. Have RPi2B and a Edimax EW-7811Un wifi dongle (other RTL8188CUS based likely show the same issue(s))

  1. Flash LibreELEC 12.0.2 and start Pi
  2. Connect to wifi, recieve IP address via DHCP
  3. Shut down Pi
  4. Flash LibreELEC 12.2.1 and start Pi
  5. Connect to wifi, do not IP address via DHCP

Note that I have tested rpi-6.9.y kernel with the LibreELEC 12.0.2 package versions to rule out issues in other packages.

Device (s)

Raspberry Pi 2 Mod. B

System

LibreELEC, various versions; see details above.

Logs

See forum thread linked above.

Additional context

Under LibreELEC you can enable debug logging for and restart connman with

echo -e 'CONNMAN_DEBUG="-d"\nCONNMAN_DHCP_DEBUG=1' > /run/libreelec/debug/connman.conf && systemctl restart connman

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions