Kirjoittaja Aihe: Debian 10 ajurin kääntäminen  (Luettu 4373 kertaa)

juffe

  • Käyttäjä
  • Viestejä: 47
    • Profiili
Debian 10 ajurin kääntäminen
« : 31.03.20 - klo:23.07 »
Moi
Mulla on tuommoinen kiinasta tullut usb bt palikka ja eihän se toiminut suoraan heittämällä, piti siis btusb.c koodia puukottaa ja kääntää btusb.ko.

https://askubuntu.com/questions/1168123/how-do-i-get-my-bluetooth-device-working

Tämän sain hajanaisilla tiedoilla tehtyä, mutta ajuri ei lataannu  suoraan käynnityksessä vaan täytyy käydä kirjoittamassa sudo insmod btusb.ko

Taisi jostain kernelin versioristiriidasta herjailla. Miten tämä yhden ajurin kääntö debianissa hoituu virallista tietä?
Tällä ubuntun ohjeella koitin, mutta herjasi heti että build kansiota ei ole
https://askubuntu.com/questions/915235/error-to-load-module-btusb-with-kernel-4-10-0-20-generic

Ja miksei tuossa gnomen bluetoothin asetuspanelissa ole valintaa mistä käydään vaihtamassa bluetooth laite mitä käytetään? Onko tähän muuta graafista vaihtohtoa vai onko ainut tapa bluetoothctl komentoriviltä? Nyt mulla siis sisäänrakennettu sekä tämä usb palikka. Tämä sen takia että saan kahdet bluetooth luurit toimimaan samaan aikaan.



e
« Viimeksi muokattu: 31.03.20 - klo:23.15 kirjoittanut juffe »

juyli

  • Käyttäjä / moderaattori
  • Viestejä: 1200
    • Profiili
Vs: Debian 10 ajurin kääntäminen
« Vastaus #1 : 31.03.20 - klo:23.54 »
Tämän sain hajanaisilla tiedoilla tehtyä, mutta ajuri ei lataannu  suoraan käynnityksessä vaan täytyy käydä kirjoittamassa sudo insmod btusb.ko
Mitä virheilmoituksia saat, jos koitat ladata ajurin modprobe -komennolla? Esim.
Koodia: [Valitse]
modprobe btusb
Toki kiinnostaisi, mitä muutoksia teit laiteajurin lähdekoodiin.

juffe

  • Käyttäjä
  • Viestejä: 47
    • Profiili
Vs: Debian 10 ajurin kääntäminen
« Vastaus #2 : 01.04.20 - klo:21.54 »
modprobe: ERROR: could not insert 'btusb': Exec format error

muutokset:
/* Fake CSR devices with broken commands */
// if (bcdDevice <= 0x100 || bcdDevice == 0x134)

and

/* Detect controllers which aren't real CSR ones. */
/* if (le16_to_cpu(rp->manufacturer) != 10 ||
    le16_to_cpu(rp->lmp_subver) == 0x0c5c) */  {

modinfolla seuraavaa:
vermagic:       4.19.98 SMP mod_unload modversions
ja mun kerneli on 4.19.0-8-amd64

toi kernel source lataantui suoraan paketista linux-source. Että mättääkö tuossa nyt tuo versionumero?
« Viimeksi muokattu: 01.04.20 - klo:22.02 kirjoittanut juffe »