/ / Ako získať podrobnosti o USB zariadení v programovaní jadra? - linux, linux-kernel, jadro, linux-device-driver, libusb

Ako získať detaily zariadenia USB v programovaní jadra? - Linux, linux-kernel, jadro, linux-driver-driver, libusb

Som nový programátor jadra a mám dev_t hodnotu USB zariadenia.

Chcem získať podrobné informácie o zariadeníID dodávateľa, ID produktu alebo iný atribút, ktorý sa bude líšiť v závislosti od zariadenia. Chcem to urobiť v jadre a bez načítania programu ako externého modulu.

Narazil som však na knižnicu libusb, avšakPokiaľ viem, používa sa v užívateľskom priestore. Je možné použiť aj libusb v priestore jadra, podobne ako moja požiadavka? Ak je to možné, ako importovať a nastaviť libusb tak, aby som mohol kompilovať jadro?

odpovede:

1 pre odpoveď č. 1

Je lepšie napísať zavádzací modul jadrapre túto úlohu. Zakaždým, keď nájdeš chybu, musíš kompilovať svoj modul proti jadru a načítať ho. V jadre pre USB je definovaný rámec, používajú sa rozhrania API, ktoré poskytuje jadro, aby ste mohli robiť veci, ktoré hľadáte. Okrem toho, že libusb je knižnica užívateľských priestorov a nemá zmysel ju používať v jadre. V užívateľskom priestore môžete pristupovať k informáciám súvisiacim s USB aj pomocou procfs / sysfs.