All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthias Brugger <mbrugger@suse.com>
To: Tomasz Nowicki <tn@semihalf.com>,
	helgaas@kernel.org, arnd@arndb.de, will.deacon@arm.com,
	catalin.marinas@arm.com, rafael@kernel.org,
	hanjun.guo@linaro.org, Lorenzo.Pieralisi@arm.com,
	okaya@codeaurora.org, jchandra@broadcom.com
Cc: jcm@redhat.com, linaro-acpi@lists.linaro.org,
	linux-pci@vger.kernel.org, dhdang@apm.com, Liviu.Dudau@arm.com,
	ddaney@caviumnetworks.com, jeremy.linton@arm.com,
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org,
	robert.richter@caviumnetworks.com, cov@codeaurora.org,
	Suravee.Suthikulpanit@amd.com, msalter@redhat.com,
	wangyijing@huawei.com, mw@semihalf.com, andrea.gallo@linaro.org,
	linux-arm-kernel@lists.infradead.org, liudongdong3@huawei.com
Subject: Re: [PATCH V7 08/11] pci, acpi: Support for ACPI based generic PCI host controller
Date: Thu, 19 May 2016 18:56:25 +0200	[thread overview]
Message-ID: <573DF039.5040405@suse.com> (raw)
In-Reply-To: <1462893601-8937-9-git-send-email-tn@semihalf.com>



On 10/05/16 17:19, Tomasz Nowicki wrote:
> This patch is going to implement generic PCI host controller for
> ACPI world, similar to what pci-host-generic.c driver does for DT world.
>
> All such drivers, which we have seen so far, were implemented within
> arch/ directory since they had some arch assumptions (x86 and ia64).
> However, they all are doing similar thing, so it makes sense to find
> some common code and abstract it into the generic driver.
>
> In order to handle PCI config space regions properly, we define new
> MCFG interface which does sanity checks on MCFG table and keeps its
> root pointer. User is able to lookup MCFG regions based on that root
> pointer and specified domain:bus_start:bus_end touple. We are using
> pci_mmcfg_late_init old prototype to avoid another function name.
>
> The implementation of pci_acpi_scan_root() looks up the MCFG entries
> and sets up a new mapping (regions are not mapped until host controller ask
> for it). Generic PCI functions are used for accessing config space.
> Driver selects PCI_ECAM and uses functions from drivers/pci/ecam.h
> to create and access ECAM mappings.
>
> As mentioned in Kconfig help section, ACPI_PCI_HOST_GENERIC choice
> should be made on a per-architecture basis.
>
> Signed-off-by: Tomasz Nowicki <tn@semihalf.com>
> Signed-off-by: Jayachandran C <jchandra@broadcom.com>
> ---
>   drivers/acpi/Kconfig            |   8 +++
>   drivers/acpi/Makefile           |   1 +
>   drivers/acpi/pci_mcfg.c         |  97 ++++++++++++++++++++++++++
>   drivers/acpi/pci_root_generic.c | 149 ++++++++++++++++++++++++++++++++++++++++
>   drivers/pci/ecam.h              |   5 ++
>   include/linux/pci-acpi.h        |   5 ++
>   include/linux/pci.h             |   5 +-
>   7 files changed, 269 insertions(+), 1 deletion(-)
>   create mode 100644 drivers/acpi/pci_mcfg.c
>   create mode 100644 drivers/acpi/pci_root_generic.c
>
> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
> index 183ffa3..44afc76 100644
> --- a/drivers/acpi/Kconfig
> +++ b/drivers/acpi/Kconfig
> @@ -346,6 +346,14 @@ config ACPI_PCI_SLOT
>   	  i.e., segment/bus/device/function tuples, with physical slots in
>   	  the system.  If you are unsure, say N.
>
> +config ACPI_PCI_HOST_GENERIC
> +	bool
> +	select PCI_ECAM
> +	help
> +	  Select this config option from the architecture Kconfig,
> +	  if it is preferred to enable ACPI PCI host controller driver which
> +	  has no arch-specific assumptions.
> +
>   config X86_PM_TIMER
>   	bool "Power Management Timer Support" if EXPERT
>   	depends on X86
> diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile
> index 81e5cbc..627a2b7 100644
> --- a/drivers/acpi/Makefile
> +++ b/drivers/acpi/Makefile
> @@ -40,6 +40,7 @@ acpi-$(CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC) += processor_pdc.o
>   acpi-y				+= ec.o
>   acpi-$(CONFIG_ACPI_DOCK)	+= dock.o
>   acpi-y				+= pci_root.o pci_link.o pci_irq.o
> +obj-$(CONFIG_ACPI_PCI_HOST_GENERIC)	+= pci_root_generic.o pci_mcfg.o
>   acpi-y				+= acpi_lpss.o acpi_apd.o
>   acpi-y				+= acpi_platform.o
>   acpi-y				+= acpi_pnp.o
> diff --git a/drivers/acpi/pci_mcfg.c b/drivers/acpi/pci_mcfg.c
> new file mode 100644
> index 0000000..373d079
> --- /dev/null
> +++ b/drivers/acpi/pci_mcfg.c
> @@ -0,0 +1,97 @@
> +/*
> + * Copyright (C) 2016 Broadcom
> + *	Author: Jayachandran C <jchandra@broadcom.com>
> + * Copyright (C) 2016 Semihalf
> + * 	Author: Tomasz Nowicki <tn@semihalf.com>
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License, version 2, as
> + * published by the Free Software Foundation (the "GPL").
> + *
> + * This program is distributed in the hope that it will be useful, but
> + * WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> + * General Public License version 2 (GPLv2) for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * version 2 (GPLv2) along with this source code.
> + */
> +#include <linux/kernel.h>
> +#include <linux/pci.h>
> +#include <linux/pci-acpi.h>
> +
> +#define PREFIX	"ACPI: "
> +
> +/* Root pointer to the mapped MCFG table */
> +static struct acpi_table_mcfg *mcfg_table;
> +
> +#define MCFG_ENTRIES(mcfg_ptr)	(((mcfg_ptr)->header.length -		\
> +				sizeof(struct acpi_table_mcfg)) /	\
> +				sizeof(struct acpi_mcfg_allocation))
> +
> +static phys_addr_t pci_mcfg_lookup_static(u16 seg, u8 bus_start, u8 bus_end)
> +{
> +	struct acpi_mcfg_allocation *mptr;
> +	int i;
> +
> +	if (!mcfg_table) {
> +		pr_err(PREFIX "MCFG table not available, lookup failed\n");
> +		return -ENXIO;
> +	}
> +
> +	mptr = (struct acpi_mcfg_allocation *) &mcfg_table[1];
> +
> +	/*
> +	 * We expect exact match, unless MCFG entry end bus covers more than
> +	 * specified by caller.
> +	 */
> +	for (i = 0; i < MCFG_ENTRIES(mcfg_table); i++, mptr++) {
> +		if (mptr->pci_segment == seg &&
> +		    mptr->start_bus_number == bus_start &&
> +		    mptr->end_bus_number >= bus_end) {
> +			return mptr->address;
> +		}
> +	}
> +
> +	return -ENXIO;
> +}
> +
> +phys_addr_t pci_mcfg_lookup(struct acpi_device *device, u16 seg,
> +			    struct resource *bus_res)
> +{
> +	phys_addr_t addr;
> +
> +	addr = acpi_pci_root_get_mcfg_addr(device->handle);
> +	if (addr)
> +		return addr;
> +
> +	return pci_mcfg_lookup_static(seg, bus_res->start, bus_res->end);
> +}
> +
> +static __init int pci_mcfg_parse(struct acpi_table_header *header)
> +{
> +	struct acpi_table_mcfg *mcfg;
> +	int n;
> +
> +	if (!header)
> +		return -EINVAL;

Maybe that's bike shedding, but acpi_table_parse already checks that the 
table passed to the handler exists, so this is redundant.

Regards,
Matthias

WARNING: multiple messages have this Message-ID (diff)
From: mbrugger@suse.com (Matthias Brugger)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V7 08/11] pci, acpi: Support for ACPI based generic PCI host controller
Date: Thu, 19 May 2016 18:56:25 +0200	[thread overview]
Message-ID: <573DF039.5040405@suse.com> (raw)
In-Reply-To: <1462893601-8937-9-git-send-email-tn@semihalf.com>



On 10/05/16 17:19, Tomasz Nowicki wrote:
> This patch is going to implement generic PCI host controller for
> ACPI world, similar to what pci-host-generic.c driver does for DT world.
>
> All such drivers, which we have seen so far, were implemented within
> arch/ directory since they had some arch assumptions (x86 and ia64).
> However, they all are doing similar thing, so it makes sense to find
> some common code and abstract it into the generic driver.
>
> In order to handle PCI config space regions properly, we define new
> MCFG interface which does sanity checks on MCFG table and keeps its
> root pointer. User is able to lookup MCFG regions based on that root
> pointer and specified domain:bus_start:bus_end touple. We are using
> pci_mmcfg_late_init old prototype to avoid another function name.
>
> The implementation of pci_acpi_scan_root() looks up the MCFG entries
> and sets up a new mapping (regions are not mapped until host controller ask
> for it). Generic PCI functions are used for accessing config space.
> Driver selects PCI_ECAM and uses functions from drivers/pci/ecam.h
> to create and access ECAM mappings.
>
> As mentioned in Kconfig help section, ACPI_PCI_HOST_GENERIC choice
> should be made on a per-architecture basis.
>
> Signed-off-by: Tomasz Nowicki <tn@semihalf.com>
> Signed-off-by: Jayachandran C <jchandra@broadcom.com>
> ---
>   drivers/acpi/Kconfig            |   8 +++
>   drivers/acpi/Makefile           |   1 +
>   drivers/acpi/pci_mcfg.c         |  97 ++++++++++++++++++++++++++
>   drivers/acpi/pci_root_generic.c | 149 ++++++++++++++++++++++++++++++++++++++++
>   drivers/pci/ecam.h              |   5 ++
>   include/linux/pci-acpi.h        |   5 ++
>   include/linux/pci.h             |   5 +-
>   7 files changed, 269 insertions(+), 1 deletion(-)
>   create mode 100644 drivers/acpi/pci_mcfg.c
>   create mode 100644 drivers/acpi/pci_root_generic.c
>
> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
> index 183ffa3..44afc76 100644
> --- a/drivers/acpi/Kconfig
> +++ b/drivers/acpi/Kconfig
> @@ -346,6 +346,14 @@ config ACPI_PCI_SLOT
>   	  i.e., segment/bus/device/function tuples, with physical slots in
>   	  the system.  If you are unsure, say N.
>
> +config ACPI_PCI_HOST_GENERIC
> +	bool
> +	select PCI_ECAM
> +	help
> +	  Select this config option from the architecture Kconfig,
> +	  if it is preferred to enable ACPI PCI host controller driver which
> +	  has no arch-specific assumptions.
> +
>   config X86_PM_TIMER
>   	bool "Power Management Timer Support" if EXPERT
>   	depends on X86
> diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile
> index 81e5cbc..627a2b7 100644
> --- a/drivers/acpi/Makefile
> +++ b/drivers/acpi/Makefile
> @@ -40,6 +40,7 @@ acpi-$(CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC) += processor_pdc.o
>   acpi-y				+= ec.o
>   acpi-$(CONFIG_ACPI_DOCK)	+= dock.o
>   acpi-y				+= pci_root.o pci_link.o pci_irq.o
> +obj-$(CONFIG_ACPI_PCI_HOST_GENERIC)	+= pci_root_generic.o pci_mcfg.o
>   acpi-y				+= acpi_lpss.o acpi_apd.o
>   acpi-y				+= acpi_platform.o
>   acpi-y				+= acpi_pnp.o
> diff --git a/drivers/acpi/pci_mcfg.c b/drivers/acpi/pci_mcfg.c
> new file mode 100644
> index 0000000..373d079
> --- /dev/null
> +++ b/drivers/acpi/pci_mcfg.c
> @@ -0,0 +1,97 @@
> +/*
> + * Copyright (C) 2016 Broadcom
> + *	Author: Jayachandran C <jchandra@broadcom.com>
> + * Copyright (C) 2016 Semihalf
> + * 	Author: Tomasz Nowicki <tn@semihalf.com>
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License, version 2, as
> + * published by the Free Software Foundation (the "GPL").
> + *
> + * This program is distributed in the hope that it will be useful, but
> + * WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> + * General Public License version 2 (GPLv2) for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * version 2 (GPLv2) along with this source code.
> + */
> +#include <linux/kernel.h>
> +#include <linux/pci.h>
> +#include <linux/pci-acpi.h>
> +
> +#define PREFIX	"ACPI: "
> +
> +/* Root pointer to the mapped MCFG table */
> +static struct acpi_table_mcfg *mcfg_table;
> +
> +#define MCFG_ENTRIES(mcfg_ptr)	(((mcfg_ptr)->header.length -		\
> +				sizeof(struct acpi_table_mcfg)) /	\
> +				sizeof(struct acpi_mcfg_allocation))
> +
> +static phys_addr_t pci_mcfg_lookup_static(u16 seg, u8 bus_start, u8 bus_end)
> +{
> +	struct acpi_mcfg_allocation *mptr;
> +	int i;
> +
> +	if (!mcfg_table) {
> +		pr_err(PREFIX "MCFG table not available, lookup failed\n");
> +		return -ENXIO;
> +	}
> +
> +	mptr = (struct acpi_mcfg_allocation *) &mcfg_table[1];
> +
> +	/*
> +	 * We expect exact match, unless MCFG entry end bus covers more than
> +	 * specified by caller.
> +	 */
> +	for (i = 0; i < MCFG_ENTRIES(mcfg_table); i++, mptr++) {
> +		if (mptr->pci_segment == seg &&
> +		    mptr->start_bus_number == bus_start &&
> +		    mptr->end_bus_number >= bus_end) {
> +			return mptr->address;
> +		}
> +	}
> +
> +	return -ENXIO;
> +}
> +
> +phys_addr_t pci_mcfg_lookup(struct acpi_device *device, u16 seg,
> +			    struct resource *bus_res)
> +{
> +	phys_addr_t addr;
> +
> +	addr = acpi_pci_root_get_mcfg_addr(device->handle);
> +	if (addr)
> +		return addr;
> +
> +	return pci_mcfg_lookup_static(seg, bus_res->start, bus_res->end);
> +}
> +
> +static __init int pci_mcfg_parse(struct acpi_table_header *header)
> +{
> +	struct acpi_table_mcfg *mcfg;
> +	int n;
> +
> +	if (!header)
> +		return -EINVAL;

Maybe that's bike shedding, but acpi_table_parse already checks that the 
table passed to the handler exists, so this is redundant.

Regards,
Matthias

  parent reply	other threads:[~2016-05-19 16:56 UTC|newest]

Thread overview: 239+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-10 15:19 [PATCH V7 00/11] Support for generic ACPI based PCI host controller Tomasz Nowicki
2016-05-10 15:19 ` Tomasz Nowicki
2016-05-10 15:19 ` [PATCH V7 01/11] PCI: Provide common functions for ECAM mapping Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 15:19 ` [PATCH V7 02/11] PCI: generic, thunder: update to use generic ECAM API Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 15:19 ` [PATCH V7 03/11] pci, of: Move the PCI I/O space management to PCI core code Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 17:59   ` Rafael J. Wysocki
2016-05-10 17:59     ` Rafael J. Wysocki
2016-05-10 17:59     ` Rafael J. Wysocki
2016-05-10 17:59     ` Rafael J. Wysocki
2016-05-11  7:36     ` Tomasz Nowicki
2016-05-11  7:36       ` Tomasz Nowicki
2016-05-11  7:36       ` Tomasz Nowicki
2016-05-11  7:36       ` Tomasz Nowicki
2016-05-11 11:01       ` Arnd Bergmann
2016-05-11 11:01         ` Arnd Bergmann
2016-05-11 11:01         ` Arnd Bergmann
2016-05-11 11:01         ` Arnd Bergmann
2016-05-10 15:19 ` [PATCH V7 04/11] pci: Add new function to unmap IO resources Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-23  8:28   ` Jayachandran C
2016-05-23  8:28     ` Jayachandran C
2016-05-23  8:28     ` Jayachandran C
2016-05-10 15:19 ` [PATCH V7 05/11] acpi, pci: Support IO resources when parsing PCI host bridge resources Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 18:20   ` Rafael J. Wysocki
2016-05-10 18:20     ` Rafael J. Wysocki
2016-05-10 18:20     ` Rafael J. Wysocki
2016-05-10 18:20     ` Rafael J. Wysocki
2016-05-11  7:39     ` Tomasz Nowicki
2016-05-11  7:39       ` Tomasz Nowicki
2016-05-11  7:39       ` Tomasz Nowicki
2016-05-11  7:39       ` Tomasz Nowicki
2016-05-10 15:19 ` [PATCH V7 06/11] pci, acpi: Provide a way to assign bus domain number Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 15:19 ` [PATCH V7 07/11] pci, acpi: Handle ACPI companion assignment Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 18:37   ` Rafael J. Wysocki
2016-05-10 18:37     ` Rafael J. Wysocki
2016-05-10 18:37     ` Rafael J. Wysocki
2016-05-10 18:37     ` Rafael J. Wysocki
2016-05-10 18:43     ` Rafael J. Wysocki
2016-05-10 18:43       ` Rafael J. Wysocki
2016-05-10 18:43       ` Rafael J. Wysocki
2016-05-10 18:43       ` Rafael J. Wysocki
2016-05-11 10:11     ` Lorenzo Pieralisi
2016-05-11 10:11       ` Lorenzo Pieralisi
2016-05-11 10:11       ` Lorenzo Pieralisi
2016-05-11 10:11       ` Lorenzo Pieralisi
2016-05-11 20:30       ` Rafael J. Wysocki
2016-05-11 20:30         ` Rafael J. Wysocki
2016-05-11 20:30         ` Rafael J. Wysocki
2016-05-11 20:30         ` Rafael J. Wysocki
2016-05-11 22:43         ` Bjorn Helgaas
2016-05-11 22:43           ` Bjorn Helgaas
2016-05-11 22:43           ` Bjorn Helgaas
2016-05-11 22:43           ` Bjorn Helgaas
2016-05-12 10:01           ` Lorenzo Pieralisi
2016-05-12 10:01             ` Lorenzo Pieralisi
2016-05-12 10:01             ` Lorenzo Pieralisi
2016-05-12 10:01             ` Lorenzo Pieralisi
2016-05-12 10:43           ` Jayachandran C
2016-05-12 10:43             ` Jayachandran C
2016-05-12 10:43             ` Jayachandran C
2016-05-12 10:43             ` Jayachandran C
2016-05-12 11:27             ` Rafael J. Wysocki
2016-05-12 11:27               ` Rafael J. Wysocki
2016-05-12 11:27               ` Rafael J. Wysocki
2016-05-12 11:27               ` Rafael J. Wysocki
2016-05-13 10:32               ` Lorenzo Pieralisi
2016-05-13 10:32                 ` Lorenzo Pieralisi
2016-05-13 10:32                 ` Lorenzo Pieralisi
2016-05-13 10:32                 ` Lorenzo Pieralisi
2016-05-12 10:50           ` Tomasz Nowicki
2016-05-12 10:50             ` Tomasz Nowicki
2016-05-12 10:50             ` Tomasz Nowicki
2016-05-12 10:50             ` Tomasz Nowicki
2016-05-12 12:08             ` Bjorn Helgaas
2016-05-12 12:08               ` Bjorn Helgaas
2016-05-12 12:08               ` Bjorn Helgaas
2016-05-12 12:08               ` Bjorn Helgaas
2016-05-17  3:11   ` Dongdong Liu
2016-05-17  3:11     ` Dongdong Liu
2016-05-17  3:11     ` Dongdong Liu
2016-05-17 13:44     ` Tomasz Nowicki
2016-05-17 13:44       ` Tomasz Nowicki
2016-05-10 15:19 ` [PATCH V7 08/11] pci, acpi: Support for ACPI based generic PCI host controller Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 17:54   ` Rafael J. Wysocki
2016-05-10 17:54     ` Rafael J. Wysocki
2016-05-10 17:54     ` Rafael J. Wysocki
2016-05-10 17:54     ` Rafael J. Wysocki
2016-05-10 18:18   ` Rafael J. Wysocki
2016-05-10 18:18     ` Rafael J. Wysocki
2016-05-10 18:18     ` Rafael J. Wysocki
2016-05-10 18:18     ` Rafael J. Wysocki
2016-05-13 11:25   ` Jayachandran C
2016-05-13 11:25     ` Jayachandran C
2016-05-13 11:25     ` Jayachandran C
2016-05-13 11:31     ` Rafael J. Wysocki
2016-05-13 11:31       ` Rafael J. Wysocki
2016-05-13 11:31       ` Rafael J. Wysocki
2016-05-13 11:31       ` Rafael J. Wysocki
2016-05-13 11:42       ` Tomasz Nowicki
2016-05-13 11:42         ` Tomasz Nowicki
2016-05-13 11:42         ` Tomasz Nowicki
2016-05-13 11:42         ` Tomasz Nowicki
2016-05-14  9:07   ` Jayachandran C
2016-05-14  9:07     ` Jayachandran C
2016-05-14  9:07     ` Jayachandran C
2016-05-23 11:34     ` Tomasz Nowicki
2016-05-23 11:34       ` Tomasz Nowicki
2016-05-23 11:34       ` Tomasz Nowicki
2016-05-19 16:56   ` Matthias Brugger [this message]
2016-05-19 16:56     ` Matthias Brugger
2016-05-10 15:19 ` [PATCH V7 09/11] arm64, pci, acpi: ACPI support for legacy IRQs parsing and consolidation with DT code Tomasz Nowicki
2016-05-10 15:19   ` Tomasz Nowicki
2016-05-10 15:20 ` [PATCH V7 10/11] arm64, pci, acpi: Provide ACPI-specific prerequisites for PCI bus enumeration Tomasz Nowicki
2016-05-10 15:20   ` Tomasz Nowicki
2016-05-10 15:20 ` [PATCH V7 11/11] arm64, pci, acpi: Start using ACPI based PCI host controller driver for ARM64 Tomasz Nowicki
2016-05-10 15:20   ` Tomasz Nowicki
2016-05-11 10:41 ` [PATCH V7 00/11] Support for generic ACPI based PCI host controller Gabriele Paoloni
2016-05-11 10:41   ` Gabriele Paoloni
2016-05-11 10:41   ` Gabriele Paoloni
2016-05-11 10:41   ` Gabriele Paoloni
2016-05-11 11:08   ` Tomasz Nowicki
2016-05-11 11:08     ` Tomasz Nowicki
2016-05-11 11:08     ` Tomasz Nowicki
2016-05-11 11:08     ` Tomasz Nowicki
2016-05-11 12:53     ` Gabriele Paoloni
2016-05-11 12:53       ` Gabriele Paoloni
2016-05-11 12:53       ` Gabriele Paoloni
2016-05-11 12:53       ` Gabriele Paoloni
2016-05-20  4:41     ` Jon Masters
2016-05-20  4:41       ` Jon Masters
2016-05-20  4:41       ` Jon Masters
2016-05-20  7:37       ` Ard Biesheuvel
2016-05-20  7:37         ` Ard Biesheuvel
2016-05-20  7:37         ` Ard Biesheuvel
2016-05-20  7:37         ` Ard Biesheuvel
2016-05-20  8:01         ` Jon Masters
2016-05-20  8:01           ` Jon Masters
2016-05-20  8:01           ` Jon Masters
2016-05-20  8:01           ` Jon Masters
2016-05-20  8:28           ` Ard Biesheuvel
2016-05-20  8:28             ` Ard Biesheuvel
2016-05-20  8:28             ` Ard Biesheuvel
2016-05-20  8:28             ` Ard Biesheuvel
2016-05-20  8:40             ` Gabriele Paoloni
2016-05-20  8:40               ` Gabriele Paoloni
2016-05-20  8:40               ` Gabriele Paoloni
2016-05-20  8:40               ` Gabriele Paoloni
2016-05-20  9:14               ` Ard Biesheuvel
2016-05-20  9:14                 ` Ard Biesheuvel
2016-05-20  9:14                 ` Ard Biesheuvel
2016-05-20  9:14                 ` Ard Biesheuvel
2016-05-23 10:56                 ` Lorenzo Pieralisi
2016-05-23 10:56                   ` Lorenzo Pieralisi
2016-05-23 10:56                   ` Lorenzo Pieralisi
2016-05-23 10:56                   ` Lorenzo Pieralisi
2016-05-23 15:16                   ` Gabriele Paoloni
2016-05-23 15:16                     ` Gabriele Paoloni
2016-05-23 15:16                     ` Gabriele Paoloni
2016-05-23 15:16                     ` Gabriele Paoloni
2016-05-23 23:39                     ` Bjorn Helgaas
2016-05-23 23:39                       ` Bjorn Helgaas
2016-05-23 23:39                       ` Bjorn Helgaas
2016-05-23 23:39                       ` Bjorn Helgaas
2016-05-24  1:11                       ` Jon Masters
2016-05-24  1:11                         ` Jon Masters
2016-05-24  1:11                         ` Jon Masters
2016-05-24  1:11                         ` Jon Masters
2016-05-24  1:48                         ` Jon Masters
2016-05-24  1:48                           ` Jon Masters
2016-05-24  1:48                           ` Jon Masters
2016-05-24  1:48                           ` Jon Masters
2016-05-24 14:33                         ` Gabriele Paoloni
2016-05-24 14:33                           ` Gabriele Paoloni
2016-05-24 14:33                           ` Gabriele Paoloni
2016-05-24 14:33                           ` Gabriele Paoloni
2016-05-24  7:23                       ` Gabriele Paoloni
2016-05-24  7:23                         ` Gabriele Paoloni
2016-05-24  7:23                         ` Gabriele Paoloni
2016-05-24  7:23                         ` Gabriele Paoloni
2016-05-24 14:38                         ` Jon Masters
2016-05-24 14:38                           ` Jon Masters
2016-05-24 14:38                           ` Jon Masters
2016-05-24 14:38                           ` Jon Masters
2016-05-24 17:24                       ` Lorenzo Pieralisi
2016-05-24 17:24                         ` Lorenzo Pieralisi
2016-05-24 17:24                         ` Lorenzo Pieralisi
2016-05-24 17:24                         ` Lorenzo Pieralisi
2016-05-24 17:35                         ` Jon Masters
2016-05-24 17:35                           ` Jon Masters
2016-05-24 17:35                           ` Jon Masters
2016-05-24 17:35                           ` Jon Masters
2016-05-24 19:00                         ` Bjorn Helgaas
2016-05-24 19:00                           ` Bjorn Helgaas
2016-05-24 19:00                           ` Bjorn Helgaas
2016-05-24 19:00                           ` Bjorn Helgaas
2016-05-26  9:58                           ` Gabriele Paoloni
2016-05-26  9:58                             ` Gabriele Paoloni
2016-05-26  9:58                             ` Gabriele Paoloni
2016-05-26  9:58                             ` Gabriele Paoloni
2016-05-25  6:31                         ` Gabriele Paoloni
2016-05-25  6:31                           ` Gabriele Paoloni
2016-05-25  6:31                           ` Gabriele Paoloni
2016-05-25  6:31                           ` Gabriele Paoloni
2016-05-24  4:20                   ` Jon Masters
2016-05-24  4:20                     ` Jon Masters
2016-05-24  4:20                     ` Jon Masters
2016-05-24  4:20                     ` Jon Masters
2016-05-20  8:11         ` Gabriele Paoloni
2016-05-20  8:11           ` Gabriele Paoloni
2016-05-20  8:11           ` Gabriele Paoloni
2016-05-20  8:11           ` Gabriele Paoloni
2016-05-20  8:24           ` Jon Masters
2016-05-20  8:24             ` Jon Masters
2016-05-20  8:24             ` Jon Masters
2016-05-20  8:24             ` Jon Masters
2016-05-13  2:55 ` Duc Dang
2016-05-13  2:55   ` Duc Dang
2016-05-13  2:55   ` Duc Dang
2016-05-19 18:18 ` Jeremy Linton
2016-05-19 18:18   ` Jeremy Linton
2016-05-20  7:46 ` Jon Masters
2016-05-20  7:46   ` Jon Masters
2016-05-20  7:46   ` Jon Masters
2016-05-23 11:25 ` Dongdong Liu
2016-05-23 11:25   ` Dongdong Liu
2016-05-23 11:25   ` Dongdong Liu
2016-05-23 15:36 ` Sinan Kaya
2016-05-23 15:36   ` Sinan Kaya

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=573DF039.5040405@suse.com \
    --to=mbrugger@suse.com \
    --cc=Liviu.Dudau@arm.com \
    --cc=Lorenzo.Pieralisi@arm.com \
    --cc=Suravee.Suthikulpanit@amd.com \
    --cc=andrea.gallo@linaro.org \
    --cc=arnd@arndb.de \
    --cc=catalin.marinas@arm.com \
    --cc=cov@codeaurora.org \
    --cc=ddaney@caviumnetworks.com \
    --cc=dhdang@apm.com \
    --cc=hanjun.guo@linaro.org \
    --cc=helgaas@kernel.org \
    --cc=jchandra@broadcom.com \
    --cc=jcm@redhat.com \
    --cc=jeremy.linton@arm.com \
    --cc=linaro-acpi@lists.linaro.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=liudongdong3@huawei.com \
    --cc=msalter@redhat.com \
    --cc=mw@semihalf.com \
    --cc=okaya@codeaurora.org \
    --cc=rafael@kernel.org \
    --cc=robert.richter@caviumnetworks.com \
    --cc=tn@semihalf.com \
    --cc=wangyijing@huawei.com \
    --cc=will.deacon@arm.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.