On 2018-04-11 19:40, Giovani Gracioli wrote:
> Here is the output of the unhandled data read:
> 
> Unhandled data read at 0xfc100000(2)
> 
> FATAL: unhandled trap (exception class 0x24)
> Cell state before exception:
>  pc: 0000000000001828   lr: 00000000000015f0 spsr: 60000005     EL1
>  sp: 0000000000003f30  esr: 24 1 1400006
>  x0: 00000000fc100000   x1: 0000000000000000   x2: 0000000000000002
>  x3: 00000000fc000000   x4: 0000000000000000   x5: 0000000000000000
>  x6: 0000000000001000   x7: 0000000000000000   x8: 0000000000000000
>  x9: 0000000000000000  x10: 0000000000000000  x11: 0000000000000000
> x12: 0000000000000000  x13: 0000000000000000  x14: 0000000000000000
> x15: 0000000000000000  x16: 0000000000000000  x17: 0000000000000000
> x18: 0000000000000000  x19: 0000000000001000  x20: 000000000000ffff
> x21: 0000000000001af4  x22: 0000000000001110  x23: 0000000000001000
> x24: 0000000000002660  x25: 0000000000000000  x26: 0000000000000000
> x27: 0000000000000000  x28: 0000000000000000  x29: 0000000000000000
> 
> Parking CPU 3 (Cell: "gic-demo-ivshmem")
> 
> Am I missing something in the configuration?

Possibly. As this is code of Claudio and his colleagues, he may answer
this better.

Jan

> 
>> Hi Jan,
>>
>> Thanks for the reply. I am using the uio driver and when I load it, the pci 
>> devices become enabled. I suppose this part is ok:
>>
>> lspci -v after the driver is loaded:
>>
>> 00:00.0 Unassigned class [ff00]: Red Hat, Inc Inter-VM shared memory
>>         Subsystem: Red Hat, Inc Inter-VM shared memory
>>         Flags: bus master, fast devsel, latency 0, IRQ 38
>>         Memory at fc100000 (64-bit, non-prefetchable) [size=256]
>>         Kernel driver in use: uio_ivshmem
>>
>> 00:01.0 Unassigned class [ff01]: Red Hat, Inc Inter-VM shared memory
>>         Subsystem: Red Hat, Inc Inter-VM shared memory
>>         Flags: bus master, fast devsel, latency 0, IRQ 39
>>         Memory at fc100100 (64-bit, non-prefetchable) [size=256]
>>         Kernel driver in use: uio_ivshmem
>>
>> I got the code available here 
>> (https://github.com/evidence/linux-jailhouse-tx1) that has an ivshmem demo 
>> on arm. I basically copied and pasted the pci_read_config and 
>> pci_write_config functions in the inmates/lib/arm-common/pci.c (had to 
>> change some makefiles to compile the code because of the pci.c file).
>>
>> However, I am getting an Unhandled data read at 0xfc100000, which is the 
>> address of the 00:00.0 device, during the execution of the function 
>> pci_find_device().
>>
>> If a decrease the while value test in the pci_find_device() function (bdf < 
>> 0x10000), it does not find any PCI device (obviously) and there is no error.
>>
>> start_bdf is initially defined as 0xfc000000, as configured in the root cell 
>> (.pci_mmconfig_base = 0xfc000000).
>>
>> Any suggestion?
>>
>> Giovani
>>
>>> On 2018-04-10 16:39, Giovani Gracioli wrote:
>>>> Updating:
>>>>
>>>> I added 
>>>>
>>>> .num_msix_vectors = 1,
>>>> .iommu = 1, 
>>>>
>>>> to the root cell .pci_devices config, wrote a simple linux program to 
>>>> write to the shared memory (0x800500000) and a simple inmate cell code to 
>>>> read from the shared memory. It was able to read the values that were 
>>>> written.
>>>>
>>>> The next step is how to generate interrupts among the cells. I tried to 
>>>> use the pci functions (the same used in the ivshmem-demo) on the arm64 but 
>>>> got an error. The lib/pci.c is not compiled by arm64.
>>>>
>>>> How should I discover the pci device and send/receive interrupts on arm64?
>>>>
>>>
>>> ivshmem demo inmate for ARM/ARM64 is still work in progress. Henning, is
>>> there any intermediate step we can point to?
>>>
>>> You could start your tests between two Linux cells, meanwhile, using the
>>> uio driver.
>>>
>>> Jan
>>>
>>> -- 
>>> Siemens AG, Corporate Technology, CT RDA IOT SES-DE
>>> Corporate Competence Center Embedded Linux
> 

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to