[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Using edu driver under arm virt machine
From: |
nobodynobody |
Subject: |
Using edu driver under arm virt machine |
Date: |
Sun, 31 Dec 2023 01:56:57 +0100 (CET) |
Hi everyone,
I'm new to this mailing list.
I'm trying to develop a custom qemu pci drivers using the edu drivers (hw/misc/edu.c) as a base.
I've done this before on x86_64 architecture without problem.
I have try to do the same on an arm VM running with virt machine.
the virt machine description:
says that it support pci/pcie devices.
So I code a dummy pci device, usind edu drivers as a template.
I added the -device edu, to the command line of qemu-system-arm
and launched my vm.
the device appears with I do lspci:
# lspci -n
00:01.0 Class 0200: 1af4:1000
00:00.0 Class 0600: 1b36:0008
00:02.0 Class 00ff: 1234:11e8 <--- it's the edu drivers
it's memory seems mapped:
0x0000000010000000 0x00000000100fffff 0x0000000000040200
0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 0x0000000000000000
so I try to put a breakpoint in edu_mmio_read & edu_mmio_write function, and map this zone , and write to it, as I did before on x86_64 vm.
But the breakpoint is never hit..????
I try to put breakpoint on other places in qemu, it works perfectly..
If I read to the mmio mapped memory with some generic tool like pcimem,
it returns 0xffffff ??
normally the address at offset 0 in mmio mapped memory of edu drivers should return 0x10000edu.
as the drivers source code shows:
switch (addr) {
case 0x00:
val = 0x010000edu;
break;
When I do the same on x86_64, it works perfectly, and the 0x10000edu value is returned as exepected...
I try everything possible, but impossible to communicate with the edu drivers via mmio mapped memory on arm architecture on virt machine...????!!!!
So my question is:
is the edu pci drivers usable on arm virt machine?
or does it need some specific qemu or kernel architecture...
I'm out of ideas... If someone can help me :)
best regards
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Using edu driver under arm virt machine,
nobodynobody <=