Описание тега linux-device-driver
Драйверы устройств играют особую роль в ядре Linux. Это отдельные программно абстрактные "черные ящики", которые заставляют конкретную часть оборудования реагировать на четко определенный внутренний программный интерфейс; они полностью скрывают детали того, как работает устройство.
1
ответ
Известные схемы взаимного исключения в драйверах Linux
В настоящее время я читаю Драйверы устройств Linux, третье издание, глава 5: Условия параллелизма и гонки. Автор утверждает, что сценарии Read-Copy-Update иногда используются при написании драйверов для Linux. Затем он углубляется в то, почему они и…
06 ноя '13 в 22:21
0
ответов
Являются ли функции ядра / инструкции x86 outw и inw атомарными при доступе к ISA/LPC?
ТЛ; др Являются ли функции ядра Linux outw() и inw() атомарными при доступе к ISA/LPC на x86 в многоядерной системе, учитывая, что на уровне HW он должен состоять из четырех отдельных 8-битных транзакций? В качестве эквивалентного вопроса, поскольку…
28 сен '16 в 23:52
1
ответ
Компоновка драйвера Tree-USB для ядра Linux
Я должен удалить модуль (usb-storage.ko) от /lib/modules/KERNEL-VERSION/kernel/drivers/usb/storage/ каталог с именем usb-storage.ko Есть ли какие-либо конкретные исходные файлы внутри linux/drivers/usb/storage дифракторией, которая приводит к usb-st…
29 май '13 в 09:10
2
ответа
Как определить частоту таймера в Linux
Мне нужно написать модуль ядра для расчета частоты ядра Linux (таймера прерывания). кто-то сказал мне, что мне нужно использовать таймер в моем модуле, но я не знаю, как это сделать явно:( Моя конечная цель - записать результат (частоту) в некоторый…
28 ноя '12 в 08:12
2
ответа
Как перехватить сообщения с USB-устройства в Linux?
У меня есть популярный планшет для рисования, который я подключаю к компьютеру через USB. После подключения планшет распознает движения рук и соответствующим образом манипулирует указателем. Где-то планшет передает эти данные на мой компьютер. Моя ц…
08 авг '13 в 22:24
0
ответов
printk/pr_info все еще не печатает в буфер ядра
Я пытаюсь отладить, почему внесенное мной изменение не работает так, как должно. Это довольно странно, потому что одновременно работают две разные сборки этого драйвера (mpt2sas и mpt3sas), и изменение таково, что оно одинаково для обоих. Изменение …
14 апр '14 в 18:26
1
ответ
Использование драйвера I2C dev
Я хочу настроить датчик по шине I2C с помощью модуля I2C-dev. Необходимая шина I2C запущена и работает, однако я не могу получить никаких данных от датчика. Может ли кто-нибудь помочь мне отладить приведенный ниже код. Все регистры датчиков являются…
31 май '18 в 07:18
2
ответа
Количество пакетов ifconfig
Если я наберу ifconfig, я получу пакет для Tx и RX ... где именно кусок кода, чтобы увеличить этот счетчик? Это в самом сетевом драйвере? или в ядре? Если возможно, укажите ссылку на lxr используемой переменной счетчика. Спасибо!
10 мар '10 в 18:20
2
ответа
Получение списка устройств внутри другого драйвера
Мне нужен драйвер устройства, который я пишу / модифицирую, чтобы иметь доступ к другому устройству в системе. Я знаю некоторую информацию о драйвере, такую как имя и / или адрес, чтобы найти его, но не могу найти, как на самом деле выполнить поис…
27 сен '13 в 00:47
0
ответов
Управление дополнительным оборудованием в Android
Что я должен добавить / изменить, чтобы Android управлял дополнительными устройствами, подключенными к шине AMBA? Я хочу реализовать определенное действие (описанное в моем приложении для Android), когда новый компонент генерирует аппаратное прерыва…
26 сен '14 в 14:25
1
ответ
Как рассчитать время работы функции Linux в ядре start_kernel?
Мне нужно выяснить, сколько времени занимают вызовы функций внутри функции start_kernel ядра Linux. Почему это проблема, потому что ядро не загрузится, если я поставлю ktime_get() вызов функции перед вызовом функции timekeeping_init() внутри этой …
03 фев '17 в 23:38
1
ответ
Эквивалент do_div в пространстве пользователя (glibc)
Есть ли у glibc эквивалент для макроса ядра, как показано ниже: http://lxr.free-electrons.com/source/include/asm-generic/div64.h#L40 Я пытаюсь написать бинарный файл пользовательского пространства (glibc) для достижения той же функциональности. Явля…
21 окт '13 в 22:22
1
ответ
Ядро Linux и мой модуль ядра
Я пытался вставить свой драйвер как часть ядра Linux. Ниже приведен Makefile. Модуль rs_pci зависит от rs_9x. Однако ядро пытается собрать rs_pci перед сборкой rs_9x, что приводит к сбою компиляции rs_pci. Я бы хотел, чтобы ядро сначала скомпили…
25 фев '14 в 04:29
0
ответов
Ошибка Linux SDIO MMC при остановке и перезапуске устройства WLAN
У нас есть специальная платформа на базе iMX53, работающая под управлением Android Gingerbread, ядро Linux 2.6.35 с устройством TiWi-BLE Wlan/Bluetooth, использующим интерфейс SDIO для WLAN. Мы используем Freescale BSP. TiWi-BLE - это перепакованн…
19 сен '14 в 11:28
0
ответов
Установка модифицированного драйвера kvm требует доступа к источнику linux
Я попытался установить Nitro, который требует установки модифицированного KVM (nitro-kmod_build). когда я делаю make sync это требует kvm_host.h: IOError: [Errno 2] No such file or directory: 'header/include/linux/kvm_host.h' так что я делаю make sy…
17 июн '14 в 12:42
1
ответ
Проблемы совпадения в C++11
Недавно я узнал о многопоточности библиотеки в C++11. Я рассматриваю такую ситуацию, что существует глобальная переменная int x=0 и два отдельных потока работают в двух разных ядрах. Могут ли два потока быть записаны в память x одновременно? Напри…
20 ноя '14 в 12:57
0
ответов
Android WiFI работает нормально из командной строки, но не работает из графического интерфейса
Я использую Android JB 4.1.1 на своей плате. Я использую TI WL1283 для поддержки Wi-Fi и Bluetooth с хост-процессором Samsung Exynos. на моей доске wifi работает нормально из командной строки. я могу связаться с AP и пинговать внешний IP. но когда я…
23 июл '13 в 05:32
2
ответа
Открыть системные вызовы в C на Linux
Вероятно, есть несколько проблем с кодом ниже. Нашел его в Интернете после поиска способа получить ввод с клавиатуры в Linux. Я проверил правильное событие для ввода с клавиатуры. Причина, по которой это кажется мне подозрительной, заключается в том…
11 фев '14 в 14:07
2
ответа
Каков наилучший способ рассчитать log(base2) любого числа?
Мне нужно найти log(base2) любого числа в программировании ядра Linux. Есть ли встроенная функция для этой операции? Если не как рассчитать?
09 июн '14 в 09:57
1
ответ
Реализация перезапускаемого системного вызова
Если у меня есть часть кода драйвера likethis: down_interruptible(&semA); //success if(down_interruptible(&semB)) { //wait return -ERESTARTSYS; } up(&semA); up(&semB); Я прочитал, что если код драйвера возвращается -ERESTARTSYSУровен…
08 дек '13 в 15:51