You are not logged in.

#1 2021-11-17 17:42:21

chdslv
Member
Registered: 2015-08-24
Posts: 51

Is it enough to copy the firmware file to /lib/firmware?

My laptop doesn't have a Linux firmware file for the touchscreen, but an extracted and adapted one for Linux can be found in Github. Is it enough to just paste that file into /lib/firmware?

Last edited by chdslv (2021-11-17 17:42:50)

Offline

#2 2021-11-17 17:45:36

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,300

Re: Is it enough to copy the firmware file to /lib/firmware?

Since you added absolutely nothing to identify any piece of your hardware, logs that show the hardware failing to load firmware nor the github where you grabbed something, the answer is a resounding: Maybe.

FWIW random githubs usually have a readme as to how to use/apply their files, is that not the case?

Why don't you just try it? And if it doesn't work you need to post more information about what you are doing with which kind of hardware and which kind of firmware

Last edited by V1del (2021-11-17 17:47:03)

Offline

#3 2021-11-17 17:51:16

chdslv
Member
Registered: 2015-08-24
Posts: 51

Re: Is it enough to copy the firmware file to /lib/firmware?

Oh, sorry. The name of the extracted firmware is gsl1680-trekstor-primebook-c13.fw. It should be placed in /lib/firmware/silead folder. Got it from here,, https://github.com/onitake/gsl-firmware The firm is Silead. They don't make firmware for Linux. The direct pasting and rebooting worked with Ubuntu, but with Arch it didn't, so the question. Is there anything else to do?

Last edited by chdslv (2021-11-17 17:53:51)

Offline

#4 2021-11-17 18:17:26

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,300

Re: Is it enough to copy the firmware file to /lib/firmware?

You need to check your dmesg whether it has even seen the firmware and whether the silead_ts module is loaded and can then load the firmare, according to https://github.com/onitake/gsl-firmware#usage there's a chance you might have to patch the kernel to add the identifiers of your HW.

Offline

#5 2021-11-18 13:59:56

burny02
Member
Registered: 2021-07-01
Posts: 129

Re: Is it enough to copy the firmware file to /lib/firmware?

I had to do this, with my new bluetooth adapter. Here's what I had to do

Get the vendor/ProdID from

nano /sys/kernel/debug/usb/devices

T:  Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  2 Spd=12   MxCh= 0
D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=2550 ProdID=8761 Rev= 2.00
S:  Manufacturer=Realtek
S:  Product=Bluetooth Radio

Move that over to drivers/bluestooth/btusb.c

/*  MY EDIT - Additional Realtek 8761BU Bluetooth devices  --Vendor ID & Prod ID*/
    { USB_DEVICE(0x2550, 0x8761), .driver_info =
                            BTUSB_REALTEK |
                               BTUSB_WIDEBAND_SPEECH },


Compile the modules, unload the modules from current kernel, copy over, reload modules

I made a little script (Just for my own benefit as I had to try lots of time)

#!/bin/bash

linuxFold="linux-5.10.79"
btusbFile="btusb-5.10.c"
btrtlFile="btusb-5.10.c"

cd $linuxFold &&
sudo modprobe -r btusb &&
sudo modprobe -r btrtl &&
cp ../$btusbFile ./drivers/bluetooth/ &&
cp ../$btrtlFile ./drivers/bluetooth/ &&
make -j16 mrproper &&
zcat /proc/config.gz > .config &&
make -j16 oldconfig &&

read -p "
Change .config CONFIG_LOCALVERSION="" to match current kernel name
Press Enter once complete.
"

make -j16 modules_prepare &&
make -j16 modules M=drivers/bluetooth/ &&
sudo make -j16 modules_install M=drivers/bluetooth/ &&
sudo cp /lib/modules/$(uname -r)/extra/btusb* /lib/modules/$(uname -r)/kernel/drivers/bluetooth/ &&
sudo modprobe btusb &&
sudo modprobe btrtl &&
cd ..

Last edited by burny02 (2021-11-18 14:00:48)

Offline

Board footer

Powered by FluxBB