Linux. USB drivers. simple "hello world" when I plug device
uaha1979
Перед написанием простого "hello world" модуля, когда какое-либо устройство подключается, => в лог пишется: "Hello cruel world, I have something to say ...". Я подумал (я ваще крут неимоверно даже думать умею =]) о следующем:
1. Вот устройство подключилось, какой драйвер выберется для управления устройством из двух, если оба драйвера заточены под idVendor, idProduct? те оба драйвера использовали
2. Аналогичная 1. ситуация, НО один драйвер заточен под конкретные id, другой под все usb устройства.
Я решил экспериментировать на мышке, те подключать usb-mouse и лезть потом в лог, отсюда возник следующий вопрос:
3. Как узнать idVendor, idProduct моей мышки?
4. Как сделать так чтобы именно мой модуль управлял моей мышкой, а остальные модули лесом бы шли?
PS. 1. изучаю книгу Linux device drivers 3rd edition
2. Рад получить любую инфу по моим вопросам, рад также ссылкам на нужную инфу или просто "прочитай то-то", все же желательно ссылки поконкретнее давать =]
ppplva
Исходники ядра открыты, в них есть все ответы. Учись читать код - это полезнее чем писать модули.
dgaf
Какой драйвер раньше проинициализируется, тот и будет рулить устройством. Сначала инциализируются вкомпиленные в ядро драйверы в определённом порядке, потом драйверы из модулей в порядке их загрузки. Выноси всё в модули и управляй порядком их загрузки.
lsusb(usbutils)
uaha1979
Перед написанием простого "hello world" модуля, когда какое-либо устройство подключается, => в лог пишется: "Hello cruel world, I have something to say ...". Я подумал (я ваще крут неимоверно даже думать умею =]) о следующем:1. Вот устройство подключилось, какой драйвер выберется для управления устройством из двух, если оба драйвера заточены под idVendor, idProduct? те оба драйвера использовали
2. Аналогичная 1. ситуация, НО один драйвер заточен под конкретные id, другой под все usb устройства.
Я решил экспериментировать на мышке, те подключать usb-mouse и лезть потом в лог, отсюда возник следующий вопрос:
3. Как узнать idVendor, idProduct моей мышки?
4. Как сделать так чтобы именно мой модуль управлял моей мышкой, а остальные модули лесом бы шли?
PS. 1. изучаю книгу Linux device drivers 3rd edition
2. Рад получить любую инфу по моим вопросам, рад также ссылкам на нужную инфу или просто "прочитай то-то", все же желательно ссылки поконкретнее давать =]