Multiple issues experienced with Debian Bookworm (12.2.2.0) on a Lenovo IdeaPad I7 - any assistance would be appreciated!

The lsmod output shown in your post #16 shows this driver to be loaded. As mentioned in post #15, it should load on boot, since the kernel sees it.

The next step is to ensure that the firmware package: firmware-realtek, is installed. This package provides firmware blobs which the realtek drivers needs to run, so you need to install that package. After it's installed, it's wise to reboot to have its blobs loaded. There should be no need for any modprobe commands at all.

I'll search for that - but two questions:

1. how did you know to use that specific hex number 0280 for the lspci command, and
2. the git hub page didn't mention anything about a realtek firmware install - to that, I wanted to know: is that a requirement for any and all driver installs (which might explain why the author didn't mention it, if they assumed that everyone would know that was a requirement)?
 
Last edited:


Thanks for that link in your last response!
It appears that my card is being recognized now, with the firmware installation. As I didn't see any mention of that on the creator's page, I'll request that they add that (or make that more visible to someone with eyes as bad as mine)!
To recap, we not only need the driver software and the driver header files - but we also need the firmware.
Finally, we would need some software to configure the wireless connection - am I missing anything?

In any case, thanks to everyone for your assistance! I'll tackle the USB/phone tethering issue later this week, after I've caught up with my other work!
 
Glad to hear of some progress on this one which seemed pretty frustrating for a while.

To answer your queries:

The numbers used in lspci command come from the file: /usr/share/misc/pci.ids which includes the numbers which can be used for the many devices linux runs on the pci bus. It's best to check out the -d option in the lspci manpage, and then hunt down the relevant numbers in the pci.ids file.

In relation to firmware blobs being needed for hardware like wireless cards and dongles, graphics cards and other adapters, it's now quite common for this to be so. The firmware is often not free software, but proprietary software supplied by manufacturers so that their adapters, like the wireless card in this case, can run. It's thus in their interests to supply that firmware, and linux is made to tolerate it mostly.

Your post #22 appears to have not missed anything. Bear in mind, sometimes everything can look to be in order, but fails because of a bug somewhere that can be virtually impossible to unpick, but hopefully, that won't be a problem in this case. In relation to bugs in debian, it might be worth installing the package: apt-listbugs, so that when you update, it will check for bugs and give you the choice of continuing or not.

On the term "stable" in debian, it means that there is little change of the operating system and its packages during its lifetime of about a couple of years. There are security updates, and sometimes ordinary packages are updated for security reasons, but other than that, it's, well, stable :)
 
Here is the information that was provided.


Code:
$ lspci -vnn -d ::0280

03:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. Device [10ec:b852]

    Subsystem: Lenovo Device [17aa:4853]

    Flags: fast devsel, IRQ 255, IOMMU group 15

    I/O ports at 3000 [disabled] [size=256]

    Memory at 50500000 (64-bit, non-prefetchable) [disabled] [size=1M]

    Capabilities: <access denied>

    Kernel modules: rtw89_8852be



1. I am curious about something: what is with the "::0280" (as in, "where did you get that number to input to the command")? I checked over the stuff I posted earlier - that number doesn't show up anywhere. Checking the lspci man page seems to indicate that they are hex codes for a vendor, device, and class - but how did you obtain that information, as I didn't post said number anywhere?
2. Another thing: seeing as how I have version 6.5 installed - shouldn't that mean that I wouldn't have to go through the same steps to have the wifi recognized, as per the information mentioned on the site? Or, are there other steps (that weren't mentioned on that page) that I need to have wireless functionality for that kernel version?
 
For your question number 1, these are the details.

In the file: /usr/share/misc/pci.ids, under the heading of:
# List of known device classes, subclasses and programming interfaces
which appears at line 36720 in my debian distro copy of that file, are found the numbers of the classes and subclasses which can be used in the lspci command, as shown on the lspci man page:
lspci -d [<vendor>]:[<device>][:<class>[:<prog-if>]]
Show only devices with specified vendor,
device, class ID, and programming interface.
The ID's are given in hexadecimal and may be
omitted or given as "*", both meaning "any value".
The class ID can contain "x" characters which stand for "any digit".

The numbers in the command: lspci -vnn -d ::0280, for the -d option, are as follows, taken from the pci.ids file mentioned above:

The <vendor> parameter is empty.
The <device> parameter is empty.
The <class> parameter is 02 for "Network controller"
The subclass parameter which is placed immediately after the class parameter is 80 for "Network controller", yielding the 0280 used in the lspci command. The first zero could have been stripped without having any effect.

Note that the second mention of "Network controller" is of the subclass whereas the first mention is the class, (both being named the same can be confusing). The subclass has the number 80, and covers the wifi controllers, or controllers that are not ethernet, nor token ring, nor anything else in that list under the heading of the class "C 02 Network controller".

The last parameter in lspci command, (programming interface) is ignored since it's not relevant in this case.

In relation to your question 2, I refer you to the last paragraph in post #15 and post #20. Once the driver is seen by the kernel, it's loaded, and then it's a matter of the networking program to be configured to have it up and usable. If it's all configured, you won't have to go through re-establishing anything, it should just work.
 
Very good information on this Git Hub page regarding the Realtek rtw89.

There's a link to write to the Realtek engineers if the driver builds and loads but fails to work.
 
Just thought of a question (while working on an overdue assignment) regarding the linux-header files (as this seems that this might have been the only time I've done this correctly): because I now need to download and install the header file for kernel version 6.5 -- but only have wireless network functionality when I'm using kernel 6.1.0.3, is it possible to download and set up said file for the later kernel (6.5.0) while I am booted into 6.1.0.3?

If not, I'm thinking as a workaround, that I should be able to download the file while in 6.1.0.3 - but then install it when I'm booted in 6.5.0

(NOTE: I'm asking because even though the kernel is said to support the Realtek adapter "out-of-the-box" after kernel version 6.2, that has not been the case. If I have overlooked documentation explicitly mentioning this, apologies in advance, because this issue caused me to be really behind on other work, that I'm trying to catch up on.)
 
Last edited:
Just thought of a question (while working on an overdue assignment) regarding the linux-header files (as this seems that this might have been the only time I've done this correctly): because I now need to download and install the header file for kernel version 6.5 -- but only have wireless network functionality when I'm using kernel 6.1.0.3, is it possible to download and set up said file for the later kernel (6.5.0) while I am booted into 6.1.0.3?

If not, I'm thinking as a workaround, that I should be able to download the file while in 6.1.0.3 - but then install it when I'm booted in 6.5.0

(NOTE: I'm asking because even though the kernel is said to support the Realtek adapter "out-of-the-box" after kernel version 6.2, that has not been the case. If I have overlooked documentation explicitly mentioning this, apologies in advance, because this issue caused me to be really behind on other work, that I'm trying to catch up on.)
I'm not sure if it's possible to download and set up a file for the 6.5.0 kernel while booted into kernel 6.1.0.3. I searched for a answer to that and haven't found anything most reliable or complete.

My thinking is try it and see what the results are.
 
I'm not sure if it's possible to download and set up a file for the 6.5.0 kernel while booted into kernel 6.1.0.3. I searched for a answer to that and haven't found anything most reliable or complete.

My thinking is try it and see what the results are.
I didn't find anything definitive on that either - I wanted to have that confirmed with someone before attempting it, as I didn't wish to end up borking the system.

Then again, that is how we learn...
 
Just thought of a question (while working on an overdue assignment) regarding the linux-header files (as this seems that this might have been the only time I've done this correctly): because I now need to download and install the header file for kernel version 6.5 -- but only have wireless network functionality when I'm using kernel 6.1.0.3, is it possible to download and set up said file for the later kernel (6.5.0) while I am booted into 6.1.0.3?

If not, I'm thinking as a workaround, that I should be able to download the file while in 6.1.0.3 - but then install it when I'm booted in 6.5.0

(NOTE: I'm asking because even though the kernel is said to support the Realtek adapter "out-of-the-box" after kernel version 6.2, that has not been the case. If I have overlooked documentation explicitly mentioning this, apologies in advance, because this issue caused me to be really behind on other work, that I'm trying to catch up on.)
apt will install the version of linux-headers that you ask it to. For example:
Code:
apt install linux-headers-6.5.0-4-amd64
If you visit https://www.debian.org/distrib/packages, plug in a search for the headers you want, then you can select those by name and version to download in a command like the above. Note the above example is for a set of trixie headers, so don't blind copy.
 


Top