How to add missing 64 Xenial hardware driver from a later pup? [SOLVED]

Issues and / or general discussion relating to Puppy

Moderator: Forum moderators

Post Reply
User avatar
houndstooth
Posts: 226
Joined: Sun Jul 17, 2022 9:41 am
Location: U.S.A.
Has thanked: 12 times
Been thanked: 17 times

How to add missing 64 Xenial hardware driver from a later pup? [SOLVED]

Post by houndstooth »

The driver exists in Bionic, Fossa & 32-bit. Can it be copied over for a different kernel or is there no alternative to compiling it from source?

Then the file must in place upon boot (can't be copied later)?

Advice appreciated thank you.

Last edited by houndstooth on Fri May 19, 2023 3:22 am, edited 1 time in total.
ozsouth
Posts: 1565
Joined: Sun Jul 12, 2020 2:38 am
Location: S.E. Australia
Has thanked: 241 times
Been thanked: 701 times

Re: How to add missing 64 Xenial hardware driver from a later pup?

Post by ozsouth »

@houndstooth - unfortunately, drivers are kernel specific. You could copy a kernel (vmlinuz & zdrv, with zdrv renamed to same as one being replaced) which has the driver you want, but may lose other drivers. If you made any extra drivers in the old kernel, would need to uninstall & redo them in the new one.

I suggest starting with a fresh xenialpup64_7.5 install & substituting bionicpup64_8.0's kernel in xenialpup64. Upon reboot, new kernel should run. As both those kernels have firmware enclosed, no fdrv is required. Bionicpup64's kernel is here: https://archive.org/download/Puppy_Linu ... 64.tar.bz2. Use at own risk. Once downloaded, place in an empty folder & in a terminal, cd into that folder & run tar -jxvf huge-4.19.23-bionicpup64.tar.bz2, then rename vmlinuz... to just vmlinuz & rename kernel-modules... to zdrv_xenialpup64_7.5.sfs & replace originals & reboot. If your test works ok, then maybe do substitution on your working system.

EDIT: I made the above change & am posting from it. Note any .pets installed after change would need to be generic ones or for bionicpup64's 4.19.23 kernel.

User avatar
houndstooth
Posts: 226
Joined: Sun Jul 17, 2022 9:41 am
Location: U.S.A.
Has thanked: 12 times
Been thanked: 17 times

Re: How to add missing 64 Xenial hardware driver from a later pup?

Post by houndstooth »

I will try it. For reference sake, this is 64 Bionic's driver missing from Xenial:

Module Name: rtsx_usb_sdmmc
Memory Used: 24.00 KB
Path: /lib/modules/4.19.23/kernel/drivers/mmc/host/rtsx_usb_sdmmc.ko
Description: Realtek USB SD/MMC Card Host Driver
Author: Roger Tseng <rogerable@realtek.com>
License: GPL v2
Alias: platform:rtsx_usb_sdmmc
Dependencies:
Retpoline: Yes
Built-in: Yes
Name: rtsx_usb_sdmmc
Version Magic: 4.19.23 SMP mod_unload modversions
Used by: 0

User avatar
houndstooth
Posts: 226
Joined: Sun Jul 17, 2022 9:41 am
Location: U.S.A.
Has thanked: 12 times
Been thanked: 17 times

Re: How to add missing 64 Xenial hardware driver from a later pup?

Post by houndstooth »

Bionic has a huge zdrv so I chose Fossa's with vmlinuz only increasing the size of 64Xenial by a few MB.

SD card driver is working with no introductory system glitches. Anything gained or lost is to be discovered.

ozsouth
Posts: 1565
Joined: Sun Jul 12, 2020 2:38 am
Location: S.E. Australia
Has thanked: 241 times
Been thanked: 701 times

Re: How to add missing 64 Xenial hardware driver from a later pup? [SOLVED]

Post by ozsouth »

@houndstooth - Bionic's zdrv is large because it contains a lot of firmware, which many drivers need to run. You might get lucky if no firmware you need is missing, but I don't recommend it. Fossa has it's firmware separately in an fdrv.
To check if you have missing firmware, in a terminal, run: dmesg | grep irmware
If any is missing, you can add it into /lib/firmware when you have installed.

User avatar
houndstooth
Posts: 226
Joined: Sun Jul 17, 2022 9:41 am
Location: U.S.A.
Has thanked: 12 times
Been thanked: 17 times

Re: How to add missing 64 Xenial hardware driver from a later pup? [SOLVED]

Post by houndstooth »

@ozsouth I tried dmesg on the machine in question in my Franken FossaXenial:

root# dmesg | grep irmware
platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
root#

Overall I'm still kicking the tires, imagining app & dependencies issues on one hand while some functions work better on the other.

If this heavily cobbled distro is a winner I'm going to stop feeding it from the HD & put everything on SD instead.

ozsouth
Posts: 1565
Joined: Sun Jul 12, 2020 2:38 am
Location: S.E. Australia
Has thanked: 241 times
Been thanked: 701 times

Re: How to add missing 64 Xenial hardware driver from a later pup? [SOLVED]

Post by ozsouth »

@houndstooth - the missing file 'regulatory.db' is attached below. Remove .fake.txt & place it in /lib/firmware. Use at own risk. NOTE: not vital nor really useful for anyone else.

Attachments
regulatory.db.fake.txt
Remove .fake.txt & place in /lib/firmware
(3.94 KiB) Downloaded 47 times
Post Reply

Return to “Users”