Hello,
Yes, my version has some different from the new lastest verison, I will update 
my checkouts, and try. Thank you very much

发件人: Felizzi, Alison (Data61, Kensington NSW) 
[mailto:alison.feli...@data61.csiro.au]
发送时间: 2020年2月24日 12:46
收件人: yadong.li; devel@sel4.systems
主题: Re: two questions when I add virtio net with virtio_console meanwhile in 
arm-vm project

Hello,

Sorry for the late reply. Thanks for highlighting this!
The issues you've identified have recently been fixed. If you update your 
checkouts of the 'camkes-arm-vm' and 'seL4_project_libs' repositories you 
should get the fixes that allow for multiple virtio PCI devices. If you want to 
just apply the changes directly, see the following changes:
camkes-arm-vm:https://github.com/SEL4PROJ/camkes-arm-vm/commit/b24769db73ea7696056763b0d75a44865acbb7ce
 and 
https://github.com/SEL4PROJ/camkes-arm-vm/commit/855b9028f91c718cb64d4b30ea0e3713e1c017cf
seL4_project_libs: 
https://github.com/SEL4PROJ/seL4_projects_libs/commit/cb2b459c09b3a942e42d11671dece0264c13568b
 ,  
https://github.com/SEL4PROJ/seL4_projects_libs/commit/8ff01fd5e8deda3009cd02ad537403a6c0704c58
 and 
https://github.com/SEL4PROJ/seL4_projects_libs/commit/ad4d8b3414d0c9297f136efb1c0de4a20caf4422

These changes make the ioport allocations more dynamic so you don't have to 
worry about overlapping regions. In addition it fixes this issue with 
'install_virtio_vpci_device' being called multiple times.

Hope this helps. Let me know if you require any further help.

Alison.
________________________________
From: Devel <devel-bounces@sel4.systems<mailto:devel-bounces@sel4.systems>> on 
behalf of yadong.li <yadong...@horizon.ai<mailto:yadong...@horizon.ai>>
Sent: Friday, February 21, 2020 9:34 PM
To: devel@sel4.systems<mailto:devel@sel4.systems> 
<devel@sel4.systems<mailto:devel@sel4.systems>>
Subject: [seL4] two questions when I add virtio net with virtio_console 
meanwhile in arm-vm project

hi,
    I had make virtio_console work OK on my environment(armv8),
    But I meet two question when I add virtio net with virtio_console meanwhile.

Question1:
    "add_io_port_range@io.c:111 Requested ioport range 
0x6200-0x6600<mailto:add_io_port_range@io.c:111%20Requested%20ioport%20range%200x6200-0x6600>"
 for VIRTIO CON overlaps with existing range 0x6200-0x6600 for VIRTIO PCI NET

    According to the print above:
    common_make_virtio_con(virtio_emul_vm, vm->pci, vm->io_port, 
VIRTIO_IOPORT_START, VIRTIO_IOPORT_SIZE,
                                        VIRTIO_INTERRUPT_PIN, 
VIRTIO_CON_PLAT_INTERRUPT_LINE, backend);
    common_make_virtio_net(virtio_emul_vm, vm->pci, vm->io_port, 
VIRTIO_IOPORT_START + 0x1000, VIRTIO_IOPORT_SIZE,
                                        VIRTIO_INTERRUPT_PIN, 
VIRTIO_NET_PLAT_INTERRUPT_LINE, backend);
    a、above two function,I found they use the same VIRTIO_IOPORT_START, I 
modify VIRTIO_IOPORT_START  of common_make_virtio_net to (VIRTIO_IOPORT_START   
+ 0x1000), is it OK?
    b、I also found(VIRTIO_CON_PLAT_INTERRUPT_LINE  == 
VIRTIO_NET_PLAT_INTERRUPT_LINE),is that OK? Whether it should be make interrupt 
line different ?

Question2:
    "_utspace_split_alloc@split.c:272 Failed to find any untyped capable of 
creating an object at address 0xc0001000
    Failed to find device cap for 
0xc0001000<mailto:_utspace_split_alloc@split.c:272%20Failed%20to%20find%20any%20untyped%20capable%20of%20creating%20an%20object%20at%20address%200xc0001000%0b
   %20Failed%20to%20find%20device%20cap%20for%200xc0001000>"

     According to the print above:
     a、my PCI region define as below:
      #define PCI_CFG_REGION_ADDR 0xC1000000
      #define PCI_IO_REGION_ADDR 0xC0000000
        #define PCI_CFG_REGION_SIZE 0x1000000
        #define PCI_IO_REGION_SIZE 0x1000
               #define PCI_CFG_BAR_MASK 0xFFFFFFFF
         I found 'virtio_net_init' and 'virtio_console_init' will call the same 
function 'install_virtio_vpci_device',
         net and console will have the same PCI_IO_REGION_ADDR ? is it OK?
    b、If I want to support two or muti virtio device, which should I add  a new 
macro define for virtio_net in a? for example add PCI_IO_REGION_ADDR for net or 
add PCI_CFG_REGION_ADDR ?
c、Can you give me some list file to change for support for support net and 
console meanwhile?
                                  Thank you very much.

_______________________________________________
Devel mailing list
Devel@sel4.systems<mailto:Devel@sel4.systems>
https://sel4.systems/lists/listinfo/devel
_______________________________________________
Devel mailing list
Devel@sel4.systems
https://sel4.systems/lists/listinfo/devel

Reply via email to