Skip to main content
Filter by
Sorted by
Tagged with
2 votes
1 answer
201 views

I am writing an AHCI driver for a minimal kernel and need to handle PCIe interrupts without MSI, relying solely on the legacy PIC 8259 and PCIe INTx virtual wire signaling. I have already implemented ...
NoobCEO's user avatar
  • 23
0 votes
0 answers
46 views

I designed a defective PCIe device that PRSNT1# and PRSNT2# are disconnected by accident. Interestingly, most of the motherboards were ABLE to detect this device (that's why I found this issue so late)...
Jisung Kim's user avatar
0 votes
0 answers
81 views

I am currently using a xilinx MPSoC in a PCIe EP application. I used already successfully the the EP in a baremetal application but now I would like to port my application to linux. So now th issue ...
Pea's user avatar
  • 1
1 vote
1 answer
337 views

I’m debugging PCIe enumeration and configuration on x86-64 with a PCIe switch between the RC and endpoints. I want to add printks in Linux kernel to observe CONFIG 0 and CONFIG 1 TLP handling. Which ...
vm000's user avatar
  • 13
2 votes
0 answers
236 views

I a trying to write a linux-driver for a PCIe device which should have bus mastering capabilities. I am encountering the problem that the buffer space, when initialized with dma_alloc_coherent() is ...
lazerbeam's user avatar
0 votes
1 answer
313 views

Currently using the description shown at this site to capture PCI-e AER codes. All the options related to the custom kernel compilation has been enabled as shown below cat /boot/config-6.8.0-48-...
nanoeng's user avatar
  • 183
0 votes
1 answer
434 views

I have doubts of how PCIe subsystem in Linux on x86 works in detail. For as far as I know to be able to talk to a PCIe device with only mmio the following need to happen: PCIe Configuration Space ...
Weijie Chen's user avatar
1 vote
1 answer
143 views

Windows will enumerate video devices, so application can see list of devices. I wonder how windows do that in details, so I can handle order of devices. I expect that order of devices in the list ...
Huong Nguyen Xuan's user avatar
0 votes
0 answers
75 views

I'm developing a C++ application with GUI (Qt) for reading data from PCIe bus and writing them as binary output file on an NVMe drive. This is my actual code void SCCCUtilityTool::...
Lubron's user avatar
  • 89
1 vote
1 answer
592 views

I am using kernel 5.4.93 (with Ubuntu 20.04 rootfs) on an ARMv8-based embedded system. The "BIOS" is U-boot which does not include PCIe feature thus the PCIe bus enumeration is solely done ...
bruin's user avatar
  • 1,239
0 votes
0 answers
68 views

I'm testing my FPGA with PCIE4.0 X16 on Intel Xeon 6438Y+, the theoretical bandwidth is 32 GBps per direction. If I use DMA method to perform access, it can be achieved to 27GBps, which is quite ...
John.James's user avatar
0 votes
0 answers
336 views

I wrote a very simple test program in the application layer. First, I open the PCIe device, then mmap() the starting space of the PCIe BAR. Finally, I use the address returned by mmap(), apply an ...
Qiang.xu's user avatar
0 votes
1 answer
414 views

We are developing a Linux host PCIe driver for an external PCIe card(device) to perform DMA operations. DMA controller is present on the PCIe board. We need to pass the DMA address to the board via ...
Akash Chandra 's user avatar
1 vote
1 answer
272 views

I'm creating a 64-bit x86-64 kernel and I'm testing it on my real machine. In my nvme driver code, I'm creating the I/O completion queue and calling the `nvme_admin' function at line no. 312 (please ...
Charlie_23's user avatar
0 votes
1 answer
428 views

I would like to understand how a linux kernel identifies that a particular PCIe device attached is supporting multiple physical functions during enumeration process? Is there a particular ...
Anil Joby's user avatar
0 votes
0 answers
164 views

Does ACPI have a method by which individual devices like PCIe devices etc can let the BIOS/OS know that it does or does not support D3 state (or any low power state for that matter)? Tried searching ...
AmruthaAnika Yadu's user avatar
0 votes
0 answers
61 views

Like the question asks, I am tasked to find a way to have the data coming off the PCIE bus into 2 memory regions. Normally I would just do a memcpy, but I was instructed this is not possible. I don't ...
teslik's user avatar
  • 21
1 vote
1 answer
162 views

I have a FPGA card plugged in to a host memory over PCIe. I want my host to access 2GB of DDR memory on card. Does that mean I'll have to request for a BAR size of 2GB ? My understanding is that, if I ...
Georgy Paul's user avatar
0 votes
0 answers
70 views

I have created a simple python program using the pypcie package on Linux(Ubuntu) so that I can access a 1GB DDR3 memory on an fpga board through pcie. I want to test the throughput of my program when ...
miner_kai's user avatar
0 votes
0 answers
130 views

I want to know the way to check the PCIe Memory-mapped BAR region is cacheable or not. Is there any way to check the setting value or not? Or is it just configured uncacheable in hardware-way?? (I saw ...
horse-master's user avatar
0 votes
0 answers
130 views

I am searching for the unit size of the MMIO request when sending to the PCIe device BAR region from CPU. I used this code. In the below code, you can see that the MMIO accessing code between the &...
horse-master's user avatar
0 votes
0 answers
125 views

I am trying to write a uefi applcation to print pci link status for all the pci device. I am able to locate all the pci devices but how do i get the status link speed for these? I am using ...
Sharingan's user avatar
0 votes
0 answers
163 views

Our goal is to boot linux kernel using devicetree. Implementation like bootloader pass dtb file to linux to enumerate pci and stuffs ... In our server platforms we have multiple segments and multiple ...
Jayaprakash's user avatar
1 vote
1 answer
697 views

I am currently writing a userspace driver to interface with an Altera PCIe card. My goal is to reduce max interrupt latency as much as possible. I am currently using VFIO_DEVICE_SET_IRQS ioctl to ...
Ahmed Eshra's user avatar
0 votes
2 answers
1k views

Since PCIe write is a Post TPL, what will happen when CPU tries to write to a memory mapped BAR address very frequently? For example, write a busy loop and update a Register on a PCIe device. When the ...
Myrfy's user avatar
  • 675
0 votes
1 answer
164 views

According to this answer, PCI/PCIe devices (such as GPUs) in the system need to go through an initialization process before being used: The OS kernel obtains the values in PCI configuration registers....
Frontier_Setter's user avatar
2 votes
1 answer
812 views

(Apologize for my previous question, a code mistake in my kernel lead to wrong values of BAR's "needed mapping space", and it misleads me written a wrong question description.) I'm ...
08822407d's user avatar
  • 108
1 vote
1 answer
1k views

I am writing a PCIe driver and have trouble with setting the DMA mask. The host is a zcu102 with a Quadcore ARM-Cortex A53. The PCIe device is a custom Device. The kernel is v5.15.0-1023-xilinx-zynqmp ...
GuentherMeyer's user avatar
3 votes
1 answer
111 views

I need to develop a desktop application that uses a PCI-e driver to read/write data from a FPGA board. The drivers have already been installed and I can compile the sources of the executables used for ...
Lubron's user avatar
  • 89
1 vote
0 answers
108 views

I am developing FPGA based PCI Express (PCIe) device that should work under Linux OS, so I am writing the Linux kernel driver also. One of the features of the device is that it can write data to Linux ...
ya_urock's user avatar
0 votes
2 answers
593 views

As we know, Message data in MSI, is used to indicate which vector you are going to trigger. But, in MSI-X, we have different Message address for different vectors. So, looks like Message data in MSI-X ...
Leo Xu's user avatar
  • 1
0 votes
1 answer
328 views

On a Ubuntu platform, when execute it with root, it always returns -EPERM Operation not permitted, I don't know which configuration should I change. The region info of the PCIe: Region 0: Memory at ...
dfei's user avatar
  • 1
0 votes
0 answers
954 views

So PCIe has this mechanism where a receiver will advertise a certain amount of credits to the transmitter, that way the transmitter can check if the data that to be sent can fit in the receiver's ...
viterbi's user avatar
  • 429
2 votes
0 answers
548 views

PCIe 3.0 supports atomic operation request(FetchAdd, Swap, CAS). I try to generate PCIe atomic operation request from host by using Build-in function for memory model aware atomic operations, but so ...
bruce_kao's user avatar
2 votes
3 answers
3k views

PCIe specs express clearly what are the ordering rules. A Posted Request must not pass another Posted Request A Posted Request must be able to pass Non-Posted Requests to avoid deadlocks It means ...
無名前's user avatar
  • 2,448
0 votes
1 answer
942 views

I want to write a driver for my PCI-e device that has a bus-master DMA engine with scatter-gather capability. I've already did this for Windows, and now trying to make the same for Linux. Bus-master ...
KzQHLnsb's user avatar
0 votes
1 answer
500 views

Usually in PCIe RC side, the S/W should set MSI (message signaled interrupt) Base register address in the circuit right in front of the PCIe core I guess so that the PCIe core (or bridge connected to ...
Chan Kim's user avatar
  • 6,159
0 votes
0 answers
327 views

I'm trying to access eMMC soldered to Intel SDIO controller on Intel Atom z8350 platform. The documentation says that there are 3 controllers in the SoC, but PCI scanning finds only one one that is ...
acckiitvar's user avatar
0 votes
0 answers
1k views

How to judge whether ACS is enabled or disabled on the device? By looking at the ACS register or something else?
sssqqq's user avatar
  • 73
2 votes
1 answer
69 views

above is an example of a figure from PCIe Gen5.0 specification. here some bit locations are marked with dotted green line Vs some are marked with solid black lines. While spec defines all bit fields ...
ankit patel's user avatar
  • 1,509
1 vote
1 answer
830 views

I want to map PCIe Memory mapped config space into the user space. I am trying to use mmap system call to map the MMCONFIG physical address into the user space. I did some search but not able to ...
Usr1's user avatar
  • 389
3 votes
1 answer
453 views

My question I already have the correct entitlements, provisioning profile and development certification, and I have turned off SIP, turned on systemextensions developer on, but it still shows provider ...
xmx's user avatar
  • 51
3 votes
1 answer
1k views

EDIT: The driver is working and has been open-sourced https://github.com/OpenMPDK/MacVFN I'm trying to write a user-space PCI driver in DriverKit for educational/research purposes. I've found an ...
Mads Y's user avatar
  • 414
1 vote
0 answers
483 views

I'm currently trying to design a system where two identical SoC chips interact with each other. I want to read and write each other's chip memory using PCIe. As far as I know, since the two chips are ...
K ys's user avatar
  • 11
1 vote
0 answers
96 views

I have some questions about the sequence of calls to request/free MSI-X interrupt resource on FreeBSD. I tried "amd64 FreeBSD 13.1" and "amd64 FreeBSD 13.2". When requesting MSI-X ...
JasonZ's user avatar
  • 11
0 votes
1 answer
299 views

I have a C++ DLL which is communicating with a PCIe board. I also need to integrate it in a C# program, so I am writing a wrapper for it. The DLL is written in C++ because I have a test app given by ...
Danilo7's user avatar
  • 47
0 votes
1 answer
53 views

I'm embedded programmer and using C. I wan to know how I can access audio board low level access. I know audio cards are connected to PCIe, then I must using the registers of south bridge to ...
mohammadsdtmnd's user avatar
0 votes
1 answer
311 views

I am using the following code to test a PCIe BAR register write through VFIO_PCI APIs. ` struct vfio_group_status group_status = { .argsz = sizeof(group_status) }; struct vfio_device_info ...
Clark's user avatar
  • 1
1 vote
0 answers
120 views

I'm playing around with a Chinese PCI Express dev board which is based on a Xilinx Virtex-6 365T XC6VLX365T FPGA: https://www.aliexpress.com/item/4001072461753.html?gatewayAdapt=glo2fra The demo code ...
philpem's user avatar
  • 70
0 votes
0 answers
777 views

For example in linux-5.15.68's arch/arm64/boot/dts/ti/k3-am64-main.dtsi, &cbass_main { ... skip ... pcie0_rc: pcie@f102000 { compatible = "ti,am64-pcie-host", "ti,...
Chan Kim's user avatar
  • 6,159

1
2 3 4 5
10