this post was submitted on 21 Jan 2026
19 points (95.2% liked)

Linux

63215 readers
808 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

[Solved] cross-posted from: https://lemmy.world/post/41957406

Exact problem as this archwiki forum post

I have also tried everything and at last here I am asking for any help, otherwise I don't think I would be able to continue using Linux on this laptop. I've tried everything from changing the kernel package to enabling all firmwares to using every kernel parameter I can find everything, nothing says any error or something anywhere. Only error i can find is hci device capabilities -22

Edit: The patch i needed was to add the driver info in btusb.c file. In nixos this is how you do it

  boot = {
    kernelPatches = [
      {
        name = "add-realtek-8852ce-btusb";
        patch = ./btusb.patch;
      }
    ];
}

first what you should do is git clone the linux kernel version you are using check using uname -r for me it was 6.12.(whatever, doesn't matter)

git clone --depth=1 git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git v6.12

then find the btusb.c file in drivers/bluetooth/ and add the line

{ USB_DEVICE(0x13d3, 0x3612), .driver_info = BTUSB_REALTEK |
BTUSB_WIDEBAND_SPEECH },

after these lines

static const struct usb_device_id quirks_table[] = {
 						     BTUSB_WIDEBAND_SPEECH },
 	{ USB_DEVICE(0x0cb8, 0xc558), .driver_info = BTUSB_REALTEK |
 						     BTUSB_WIDEBAND_SPEECH },

now we have made chages to this file right? it will be shows in git diff, so now you should be able to do git diff > btusb.patch this will create a .patch file, now copy this file to wherever folder you put the nixos configuration in, most likely /etc/nixos if not using custom config. Thats it!, now rebuild the configuration and DONE. props to @Maiq.

Author of patch: vedantsg123

I will try to get this patch upstream to not having to do this manually.

you are viewing a single comment's thread
view the rest of the comments
[–] str82L@lemmy.world 2 points 1 month ago (1 children)

I have the same model and now realise this is likely the cause of my BT issues too. Is it safe to assume that if I wait long enough this will be fixed in the kernel? I'm a little reluctant to get in the weeds to the extent the fix requires. I'm on Bazzite, so I think that means I'll be waiting a while given it's an immutable distro, is that right?

[–] mobsenpai@lemmy.world 2 points 1 month ago

So turns out making this patch upstream so it gets into the Linux kernel is not as easy as to open to pull request. There's this setting up of git email and what not, but with my searches it seems this patch is already made by someone and should be implemented in the kernel 6.19, but take this with a grain of salt. I will update this post if I find the patch file but for now I am assuming this fixed in 6.19. And yes I was hesitant to to try this but the desperation got over me, as I just can't have anything "not work" it irks me the wrong way, so I just went ahead with it.