[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v1 11/14] xen/arm: Enable the existing x86 virtual PCI support for ARM.
- To: Stefano Stabellini <sstabellini@xxxxxxxxxx>
- From: Rahul Singh <Rahul.Singh@xxxxxxx>
- Date: Tue, 21 Sep 2021 13:49:33 +0000
- Accept-language: en-US
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=TVfTS6YALUnftVAqcmnV+Dy+a5EXbBUKlepvvAXDTUI=; b=Z/U972zhqdmcKn7nAEyoGwy2wQTjUjokt3WMBvNxjROOOQWtgP3vy1uK3hZK2qwbQHO5twhS38bCyqrao81HYKfEvD74jKnytRnZkkjWhR9AnCvM+esq61peWJEtj++UXNP4slFf6iip+215ILT4Ruv6Y7LCsZti1WF1Av5qrEbcPsdRBAlHXuZhGNvK9BcZFfJj/Du5LyEp+/AtzFfGkNZiPddJit+m/JrbdoNqwWM7Klaai4O3v/LnOhSDCQVKmxvMshHRfTJUQy8X1B5x9aSrrdCpX81CZIHddvStZdGYoyLlncY+gpIJqT6nJxKvx5aqv3xQ+b9o3OpNwO0x9g==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RbCwLZW2D1NzRa2xKebm+udEHp/qX/BESCfnOn5rYSzudfMEfRa3oMg58FN1sgd9vH2qDHjHu/m89rKtBxMvZ3CXvmYsqmg739isPdem+Iv0QTXKVUUbSenHCC32O073m75OoU9lXfP1DCsk8qNXwGly1IHrdO9vf1VYgvR9GRYqD6sFDwsLIzvaeRu+d76Uv4KlFxUvdz2kaX1YobRJfMt3UaSYzNPFDTeXbs129jAQR8rZ7VIjrAWdChce+RI69BIENavT0zBqUYfGcPGCrGOPkBPsUO50cNtM4srZc3FFWXsWaU+KqjwE509JK8YH9Hqb6UCXkzY6rDjBwxGQEg==
- Authentication-results-original: kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
- Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, Julien Grall <julien@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Paul Durrant <paul@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>
- Delivery-date: Tue, 21 Sep 2021 13:50:18 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Nodisclaimer: true
- Original-authentication-results: kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
- Thread-index: AQHXlPL13zcSD0YvP0y1H1bgZa9bP6uciyMAgAofYICAAJ30AIAHbKUA
- Thread-topic: [PATCH v1 11/14] xen/arm: Enable the existing x86 virtual PCI support for ARM.
Hi Stefano,
> On 16 Sep 2021, at 9:26 pm, Stefano Stabellini <sstabellini@xxxxxxxxxx> wrote:
>
> On Thu, 16 Sep 2021, Rahul Singh wrote:
>> Hi Stefano,
>>
>>> On 10 Sep 2021, at 1:26 am, Stefano Stabellini <sstabellini@xxxxxxxxxx>
>>> wrote:
>>>
>>> On Thu, 19 Aug 2021, Rahul Singh wrote:
>>>> The existing VPCI support available for X86 is adapted for Arm.
>>>> When the device is added to XEN via the hyper call
>>>> “PHYSDEVOP_pci_device_add”, VPCI handler for the config space
>>>> access is added to the Xen to emulate the PCI devices config space.
>>>
>>> This is done just for device discovery, right?
>>>
>>> Although it is currently not implemented (and I am not asking to
>>> implement it now, I am only trying to understand the architecture), it
>>> would be possible to discover all PCI devices just by walking down the
>>> PCI hierarchy by ourselves in Xen (no Dom0 interactions) given that we
>>> have an ECAM driver.
>>>
>>> I take that would be the way to implement PCI support for Dom0less?
>>
>> It is not possible to discover PCI devices in XEN if enumeration is not done
>> before XEN boot.
>> If boot firmware did the enumeration, XEN will discover the PCI device.
>
> OK, but if the boot firmware does the enumeration, how will Xen discover
> the PCI device exactly? Will Xen discover it because the PCI device will
> be present in device tree explicitly (will have its own device tree
> node)? Or will Xen discover it by walking the PCI bus?
Yes Xen discover it by walking the PCI bus. There is already a function in XEN
scan_pci_devices() that we can use
to discover the PCI device for dom0less system.
Regards,
Rahul
|