Вопросы по теме 'pci-e'

Задержка чтения / записи MMIO
Я обнаружил, что задержка чтения / записи моего MMIO неоправданно высока. Я надеюсь, что кто-нибудь может дать мне несколько предложений. В пространстве ядра я написал простую программу для чтения 4-байтового значения в адресе BAR0 устройства...
2705 просмотров
schedule 04.02.2023

Захватите PCI-Express, когда он подключен, а затем эмулируйте в системе
Есть ли способ зафиксировать состояние устройства, когда оно подключено, а затем эмулировать его в Windows? Я купил несколько устройств PCI Express, которые должны быть установлены в слотах, чтобы программное обеспечение работало. Но у меня только...
174 просмотров

Использование pci_enable_msi_block
Я пытаюсь включить несколько строк MSI irq в модуле ядра. Я работаю в режиме RC. Проблема в том, что когда я вызываю pci_enable_msi_block() , он не выделяет более 1 MSI. Если я вызову pci_enable_msi_block(dev, 32) , он вернет 4 (что, как я...
1289 просмотров
schedule 06.06.2022

Драйвер Linux PCI вызывает инициализацию, но не зонд
Я разрабатываю драйвер для платы FPGA, подключенной к моей машине через слот расширения PCIe, и все отлично работает, если плата включается раньше ПК. Однако, если я сначала забронирую свой компьютер, а затем плату FPGA, я получу довольно необычное...
1776 просмотров

разница между pci_alloc_consistent и dma_alloc_coherent
Я работаю над сетевым драйвером на основе pcie. В разных примерах используется один из pci_alloc_consistent или dma_alloc_coherent , чтобы получить память для дескрипторов передачи и приема. Какой из них лучше, если есть, и в чем разница между...
6352 просмотров

Передача чтения DMA PCIe с ПК на ПЛИС
Я пытаюсь заставить работать передачу DMA между FPGA и машиной Linux x86_64. На стороне ПК я выполняю эту инициализацию: //driver probe ... pci_set_master(dev); //set endpoint as master result = pci_set_dma_mask(dev, 0xffffffffffffffff); //set...
1735 просмотров
schedule 10.03.2024

Как работает сетевая карта PCIe и как она взаимодействует с хостами?
Я использую сетевую карту Intel i210 1G с моим ПК Intel i7, я хочу знать, как эта сетевая карта взаимодействует с хостом, не настраивая ничего из коробки. Что NIC экспортирует как устройство PCIe на хост, как эта информация используется хостом pci...
356 просмотров

Почему прерывания MSI не используются совместно?
Может ли кто-нибудь сказать, почему прерывания MSI недоступны в Linux. Прерывания на основе PIN-кода могут совместно использоваться устройствами, но прерывания MSI не используются устройствами, каждое устройство получает свой собственный номер IRQ...
1411 просмотров

Что такое сопоставление DMA и механизм DMA в контексте ядра Linux?
Что такое сопоставление DMA и механизм DMA в контексте ядра Linux? Когда API сопоставления DMA и API механизма DMA можно использовать в драйвере устройства Linux? Любой реальный пример драйвера устройства Linux в качестве эталона был бы великолепен.
9722 просмотров

Эмуляция MSI QEMU
Я работаю над эмулированным устройством QEMU для имитации интерфейса FPGA PCIe. Я использую устройство lev-pci в качестве базового шаблона: https://github.com/levex/kernel-qemu-pci/blob/master/qemu/hw/char/lev-pci.c Мое устройство использует...
1297 просмотров
schedule 11.11.2022

Как осуществляется управление линиями на контроллере PCIe 3.0, встроенном в новейшие процессоры Xeon?
Я использую несколько карт расширения PCIe 3.0 (графические процессоры и межсоединения Infiniband). Мне интересно, как на самом деле управляются полосы и могу ли я оптимизировать свои устройства, изменив порты или используя некоторые адаптеры (16x ->...
1534 просмотров
schedule 24.06.2022

Memcpy из памяти PCIe занимает больше времени, чем memcpy в память PCIe
Я пытаюсь выполнять чтение/запись данных на/с ПК с Linux с/на устройство PCIe 2.0 (2-полосное). Память для чтения и записи находится в разных местах ОЗУ устройства PCIe. Эти воспоминания отображаются на ПК с Linux с помощью ioremap. Мой вариант...
1069 просмотров

Как сравнить PCIe и DMA?
Я использую двухпортовую сетевую карту Intel x520 и x540, подключенную к серверу Dell PowerEdge. Все порты NIC могут работать на скорости 10 Гбит/с, следовательно, всего 40 Гбит/с. Система имеет 2 сокета, содержащих процессор Xeon E5-2640 v3...
1331 просмотров
schedule 28.05.2022

Есть ли способ для двух пользовательских карт PCIe напрямую общаться друг с другом при подключении к серверу (без переключателя)?
Мы видели этот ответ: Прямая связь между двумя устройствами PCI Что имеет большое значение для ответа на вопрос. Но мы хотели немного поковыряться, посмотреть, есть ли место для маневра. Итак, мы делаем специальные карты PCIe со специальными...
200 просмотров
schedule 01.08.2022

Вопрос о прерываниях, сигнализируемых сообщениями (MSI), в системе x86 LAPIC
Привет, я пишу ядро ​​и планирую использовать прерывание MSI для устройств PCI. Тем не менее, я также весьма смущен документацией. Мое понимание MSI следующее: С точки зрения устройства PCI: В документации указано, что мне нужно найти...
1100 просмотров
schedule 04.06.2022

Как рассчитать размер области, отображаемой MMIO, из адреса BAR в PCIe
Я углубился в то, как работает PCIe в целом, и застрял там, где во многих книгах и на веб-сайтах говорится о пространстве конфигурации PCIe. До сих пор я узнал, что для каждого назначенного устройства с его BDF (биты функции шины, устройства), для...
742 просмотров
schedule 21.07.2022

Разница между DVSEC, VSEC и RCRB
Может кто-нибудь объяснить, в чем разница между VSEC и DVSEC. Насколько я понял, VSEC привязан к vendorID, а DVSEC нет, но до сих пор не ясно, как? А что такое комплексный регистровый блок Rot - RCRB? Зачем это нужно пользователю, когда есть DVSEC?
486 просмотров
schedule 19.11.2022