From: Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>
To: Rahul Singh <rahul.singh@arm.com>,
"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
Stefano Stabellini <sstabellini@kernel.org>,
Julien Grall <julien@xen.org>,
Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v1 05/14] xen/arm: PCI host bridge discovery within XEN on ARM
Date: Mon, 13 Sep 2021 14:52:18 +0000 [thread overview]
Message-ID: <c9484b8e-cad5-d4e4-a25f-749035fe5859@epam.com> (raw)
In-Reply-To: <412b6574170d96d6fc4196fab4bb2b9286a770c8.1629366665.git.rahul.singh@arm.com>
Hi, Rahul!
On 19.08.21 15:02, Rahul Singh wrote:
> XEN during boot will read the PCI device tree node “reg” property
> and will map the PCI config space to the XEN memory.
[snip]
> +static struct pci_config_window *gen_pci_init(struct dt_device_node *dev,
> + int ecam_reg_idx)
> +{
> + int err;
> + struct pci_config_window *cfg;
> + paddr_t addr, size;
> +
> + cfg = xzalloc(struct pci_config_window);
> + if ( !cfg )
> + return NULL;
> +
> + err = dt_pci_parse_bus_range(dev, cfg);
> + if ( !err ) {
> + cfg->busn_start = 0;
> + cfg->busn_end = 0xff;
> + printk(XENLOG_ERR "%s:No bus range found for pci controller\n",
> + dt_node_full_name(dev));
> + } else {
> + if ( cfg->busn_end > cfg->busn_start + 0xff )
> + cfg->busn_end = cfg->busn_start + 0xff;
> + }
> +
> + /* Parse our PCI ecam register address*/
> + err = dt_device_get_address(dev, ecam_reg_idx, &addr, &size);
I am a bit worried here that we don't get the reg index from the device tree,
but for generic ECAM we use reg[0] and for Xilinx we use reg[2].
For example, for Xilinx we have
reg = <0x00 0xfd0e0000 0x00 0x1000 0x00 0xfd480000 0x00 0x1000 0x80 0x00 0x00 0x1000000>;
reg-names = "breg\0pcireg\0cfg";
so, we can parse the reg-names and understand that the configuration space is the last in the reg property.
The same I think can be done for other device trees probably.
Rahul, do you know if reg-names "cfg" is vendor specific of used widely?
Thank you,
Oleksandr
next prev parent reply other threads:[~2021-09-13 14:52 UTC|newest]
Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-19 12:02 [PATCH v1 00/14] PCI devices passthrough on Arm Rahul Singh
2021-08-19 12:02 ` [PATCH v1 01/14] xen/pci: Refactor MSI code that implements MSI functionality within XEN Rahul Singh
2021-08-19 12:18 ` Julien Grall
2021-08-19 14:16 ` Rahul Singh
2021-09-07 10:01 ` Julien Grall
2021-08-24 15:53 ` Jan Beulich
2021-08-31 12:31 ` Rahul Singh
2021-08-31 13:00 ` Jan Beulich
2021-08-26 13:23 ` Daniel P. Smith
2021-08-19 12:02 ` [PATCH v1 02/14] xen/pci: solve compilation error on ARM with HAS_PCI enabled Rahul Singh
2021-08-19 12:28 ` Julien Grall
2021-08-20 10:30 ` Rahul Singh
2021-08-20 11:37 ` Julien Grall
2021-08-20 11:55 ` Jan Beulich
2021-08-20 12:10 ` Julien Grall
2021-08-20 7:01 ` Jan Beulich
2021-08-20 11:21 ` Rahul Singh
2021-09-09 13:16 ` Julien Grall
2021-08-19 12:02 ` [PATCH v1 03/14] xen/pci: solve compilation error on ARM with ACPI && HAS_PCI Rahul Singh
2021-08-20 7:06 ` Jan Beulich
2021-08-20 11:41 ` Rahul Singh
2021-08-20 11:54 ` Jan Beulich
2021-09-09 1:11 ` Stefano Stabellini
2021-09-10 10:22 ` Rahul Singh
2021-08-19 12:02 ` [PATCH v1 04/14] xen/arm: Add support for PCI init to initialize the PCI driver Rahul Singh
2021-09-07 8:20 ` Julien Grall
2021-09-10 10:47 ` Rahul Singh
2021-09-09 1:16 ` Stefano Stabellini
2021-09-10 10:32 ` Rahul Singh
2021-08-19 12:02 ` [PATCH v1 05/14] xen/arm: PCI host bridge discovery within XEN on ARM Rahul Singh
2021-09-07 9:05 ` Julien Grall
2021-09-10 11:22 ` Rahul Singh
2021-09-10 11:53 ` Julien Grall
2021-09-09 22:54 ` Stefano Stabellini
2021-09-10 11:53 ` Rahul Singh
2021-09-13 14:52 ` Oleksandr Andrushchenko [this message]
2021-09-13 20:23 ` Stefano Stabellini
2021-09-14 4:35 ` Oleksandr Andrushchenko
2021-09-14 7:53 ` Oleksandr Andrushchenko
2021-08-19 12:02 ` [PATCH v1 06/14] xen/arm: Add support for PCI ecam operations Rahul Singh
2021-09-09 11:32 ` Julien Grall
2021-09-14 8:13 ` Rahul Singh
2021-09-09 23:21 ` Stefano Stabellini
2021-09-14 11:13 ` Rahul Singh
2021-09-14 23:06 ` Stefano Stabellini
2021-09-15 16:38 ` Rahul Singh
2021-09-15 20:45 ` Stefano Stabellini
2021-09-16 16:51 ` Rahul Singh
2021-08-19 12:02 ` [PATCH v1 07/14] xen/arm: Add support for Xilinx ZynqMP PCI host controller Rahul Singh
2021-09-09 23:34 ` Stefano Stabellini
2021-09-10 12:01 ` Rahul Singh
2021-09-13 14:46 ` Oleksandr Andrushchenko
2021-09-13 21:02 ` Stefano Stabellini
2021-09-14 4:31 ` Oleksandr Andrushchenko
2021-09-17 7:39 ` Rahul Singh
2021-08-19 12:02 ` [PATCH v1 08/14] xen:arm: Implement pci access functions Rahul Singh
2021-09-09 23:41 ` Stefano Stabellini
2021-09-14 16:05 ` Rahul Singh
2021-09-14 22:40 ` Stefano Stabellini
2021-09-15 7:54 ` Oleksandr Andrushchenko
2021-09-15 10:47 ` Rahul Singh
2021-08-19 12:02 ` [PATCH v1 09/14] xen/arm: Add cmdline boot option "pci=on" Rahul Singh
2021-08-19 12:09 ` Jan Beulich
2021-08-19 12:31 ` Julien Grall
2021-08-20 12:19 ` Rahul Singh
2021-08-20 14:34 ` Julien Grall
2021-08-20 14:37 ` Jan Beulich
2021-09-09 23:46 ` Stefano Stabellini
2021-09-09 23:48 ` Stefano Stabellini
2021-08-19 12:02 ` [PATCH v1 10/14] xen/arm: Discovering PCI devices and add the PCI devices in XEN Rahul Singh
2021-08-19 12:35 ` Julien Grall
2021-08-19 13:40 ` Jan Beulich
2021-08-20 13:05 ` Rahul Singh
2021-08-19 12:02 ` [PATCH v1 11/14] xen/arm: Enable the existing x86 virtual PCI support for ARM Rahul Singh
2021-08-24 16:09 ` Jan Beulich
2021-08-25 5:44 ` Oleksandr Andrushchenko
2021-08-25 6:35 ` Jan Beulich
2021-09-09 13:50 ` Julien Grall
2021-09-16 10:46 ` Rahul Singh
2021-09-10 0:26 ` Stefano Stabellini
2021-09-16 11:01 ` Rahul Singh
2021-09-16 20:26 ` Stefano Stabellini
2021-09-21 13:49 ` Rahul Singh
2021-09-21 21:38 ` Stefano Stabellini
2021-08-19 12:02 ` [PATCH v1 12/14] arm/libxl: Emulated PCI device tree node in libxl Rahul Singh
2021-08-19 13:00 ` Julien Grall
2021-08-20 16:03 ` Rahul Singh
2021-09-09 13:59 ` Julien Grall
2021-09-16 16:16 ` Rahul Singh
2021-09-10 0:51 ` Stefano Stabellini
2021-09-16 16:35 ` Rahul Singh
2021-08-19 12:02 ` [PATCH v1 13/14] xen/arm: Fixed error when PCI device is assigned to guest Rahul Singh
2021-08-19 12:12 ` Jan Beulich
2021-08-19 12:40 ` Julien Grall
2021-08-20 17:01 ` Rahul Singh
2021-08-19 12:02 ` [PATCH v1 14/14] xen/arm: Add linux,pci-domain property for hwdom if not available Rahul Singh
2021-09-10 1:00 ` Stefano Stabellini
2021-09-16 16:36 ` Rahul Singh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c9484b8e-cad5-d4e4-a25f-749035fe5859@epam.com \
--to=oleksandr_andrushchenko@epam.com \
--cc=Volodymyr_Babchuk@epam.com \
--cc=bertrand.marquis@arm.com \
--cc=julien@xen.org \
--cc=rahul.singh@arm.com \
--cc=sstabellini@kernel.org \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).