* [PATCH 0/3] PCI: mobiveil: Misc fixes
@ 2018-07-30 13:43 Lorenzo Pieralisi
2018-07-30 13:43 ` [PATCH 1/3] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type Lorenzo Pieralisi
` (4 more replies)
0 siblings, 5 replies; 8+ messages in thread
From: Lorenzo Pieralisi @ 2018-07-30 13:43 UTC (permalink / raw)
To: linux-pci; +Cc: Lorenzo Pieralisi, Subrahmanya Lingappa, Bjorn Helgaas
Subrahmanya,
I put together this series so that the Mobiveil controller driver
can compile (successfully). Please review and ack as soon as possible
since the current situation is a bit embarassing to be honest, we
should be sending these patches as fixes this week so that they
can make it for v4.18, currently the driver is in the kernel for
nothing.
Thank you
Lorenzo
Cc: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Lorenzo Pieralisi (3):
PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type
PCI: mobiveil: Add missing ../pci.h include
PCI: mobiveil: Add Kconfig/Makefile entries
drivers/pci/controller/Kconfig | 10 ++++++++++
drivers/pci/controller/Makefile | 1 +
drivers/pci/controller/pcie-mobiveil.c | 4 +++-
3 files changed, 14 insertions(+), 1 deletion(-)
--
2.15.0
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/3] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type
2018-07-30 13:43 [PATCH 0/3] PCI: mobiveil: Misc fixes Lorenzo Pieralisi
@ 2018-07-30 13:43 ` Lorenzo Pieralisi
2018-08-03 7:44 ` Subrahmanya Lingappa
2018-07-30 13:43 ` [PATCH 2/3] PCI: mobiveil: Add missing ../pci.h include Lorenzo Pieralisi
` (3 subsequent siblings)
4 siblings, 1 reply; 8+ messages in thread
From: Lorenzo Pieralisi @ 2018-07-30 13:43 UTC (permalink / raw)
To: linux-pci; +Cc: Lorenzo Pieralisi, Bjorn Helgaas, Subrahmanya Lingappa
The field pcie_reg_base in struct mobiveil_pcie represents a physical
address so it should be of phys_addr_t type rather than void __iomem*;
this results in the following compilation warnings:
drivers/pci/controller/pcie-mobiveil.c: In function
'mobiveil_pcie_parse_dt':
drivers/pci/controller/pcie-mobiveil.c:326:22: warning: assignment makes
pointer from integer without a cast [-Wint-conversion]
pcie->pcie_reg_base = res->start;
^
drivers/pci/controller/pcie-mobiveil.c: In function
'mobiveil_pcie_enable_msi':
drivers/pci/controller/pcie-mobiveil.c:485:25: warning: initialization
makes integer from pointer without a cast [-Wint-conversion]
phys_addr_t msg_addr = pcie->pcie_reg_base;
^~~~
drivers/pci/controller/pcie-mobiveil.c: In function
'mobiveil_compose_msi_msg':
drivers/pci/controller/pcie-mobiveil.c:640:21: warning: initialization
makes integer from pointer without a cast [-Wint-conversion]
phys_addr_t addr = pcie->pcie_reg_base + (data->hwirq * sizeof(int));
Fix the type and with it the compilation warnings.
Fixes: 9af6bcb11e12 ("PCI: mobiveil: Add Mobiveil PCIe Host Bridge IP
driver")
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
---
drivers/pci/controller/pcie-mobiveil.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pci/controller/pcie-mobiveil.c b/drivers/pci/controller/pcie-mobiveil.c
index cf0aa7cee5b0..8b45f77d70f9 100644
--- a/drivers/pci/controller/pcie-mobiveil.c
+++ b/drivers/pci/controller/pcie-mobiveil.c
@@ -130,7 +130,7 @@ struct mobiveil_pcie {
void __iomem *config_axi_slave_base; /* endpoint config base */
void __iomem *csr_axi_slave_base; /* root port config base */
void __iomem *apb_csr_base; /* MSI register base */
- void __iomem *pcie_reg_base; /* Physical PCIe Controller Base */
+ phys_addr_t pcie_reg_base; /* Physical PCIe Controller Base */
struct irq_domain *intx_domain;
raw_spinlock_t intx_mask_lock;
int irq;
--
2.15.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/3] PCI: mobiveil: Add missing ../pci.h include
2018-07-30 13:43 [PATCH 0/3] PCI: mobiveil: Misc fixes Lorenzo Pieralisi
2018-07-30 13:43 ` [PATCH 1/3] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type Lorenzo Pieralisi
@ 2018-07-30 13:43 ` Lorenzo Pieralisi
2018-07-30 13:43 ` [PATCH 3/3] PCI: mobiveil: Add Kconfig/Makefile entries Lorenzo Pieralisi
` (2 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: Lorenzo Pieralisi @ 2018-07-30 13:43 UTC (permalink / raw)
To: linux-pci; +Cc: Lorenzo Pieralisi, Bjorn Helgaas, Subrahmanya Lingappa
PCI mobiveil host controller driver currently fails to compile
with the following error:
drivers/pci/controller/pcie-mobiveil.c: In function
'mobiveil_pcie_probe':
drivers/pci/controller/pcie-mobiveil.c:788:8: error: implicit
declaration of function 'devm_of_pci_get_host_bridge_resources'; did you
mean 'pci_get_host_bridge_device'?
[-Werror=implicit-function-declaration]
ret = devm_of_pci_get_host_bridge_resources(dev, 0, 0xff,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pci_get_host_bridge_device
Add the missing include file to pull in the required function declaration.
Fixes: 9af6bcb11e12 ("PCI: mobiveil: Add Mobiveil PCIe Host Bridge IP
driver")
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
---
drivers/pci/controller/pcie-mobiveil.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/pci/controller/pcie-mobiveil.c b/drivers/pci/controller/pcie-mobiveil.c
index 8b45f77d70f9..a939e8d31735 100644
--- a/drivers/pci/controller/pcie-mobiveil.c
+++ b/drivers/pci/controller/pcie-mobiveil.c
@@ -23,6 +23,8 @@
#include <linux/platform_device.h>
#include <linux/slab.h>
+#include "../pci.h"
+
/* register offsets and bit positions */
/*
--
2.15.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 3/3] PCI: mobiveil: Add Kconfig/Makefile entries
2018-07-30 13:43 [PATCH 0/3] PCI: mobiveil: Misc fixes Lorenzo Pieralisi
2018-07-30 13:43 ` [PATCH 1/3] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type Lorenzo Pieralisi
2018-07-30 13:43 ` [PATCH 2/3] PCI: mobiveil: Add missing ../pci.h include Lorenzo Pieralisi
@ 2018-07-30 13:43 ` Lorenzo Pieralisi
2018-07-31 16:56 ` [PATCH 0/3] PCI: mobiveil: Misc fixes Bjorn Helgaas
2018-08-03 7:14 ` Subrahmanya Lingappa
4 siblings, 0 replies; 8+ messages in thread
From: Lorenzo Pieralisi @ 2018-07-30 13:43 UTC (permalink / raw)
To: linux-pci; +Cc: Lorenzo Pieralisi, Bjorn Helgaas, Subrahmanya Lingappa
commit 9af6bcb11e12 ("PCI: mobiveil: Add Mobiveil PCIe Host Bridge IP
driver") did not add the configuration and build infrastructure to
configure and build the mobiveil controller driver, so at present the
driver code is in the kernel but cannot be compiled.
Add the mobiveil controller driver Kconfig/Makefile infrastructure.
Fixes: 9af6bcb11e12 ("PCI: mobiveil: Add Mobiveil PCIe Host Bridge IP
driver")
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
---
drivers/pci/controller/Kconfig | 10 ++++++++++
drivers/pci/controller/Makefile | 1 +
2 files changed, 11 insertions(+)
diff --git a/drivers/pci/controller/Kconfig b/drivers/pci/controller/Kconfig
index 18fa09b3ac8f..fc4dbcd35e8f 100644
--- a/drivers/pci/controller/Kconfig
+++ b/drivers/pci/controller/Kconfig
@@ -242,6 +242,16 @@ config PCIE_MEDIATEK
Say Y here if you want to enable PCIe controller support on
MediaTek SoCs.
+config PCIE_MOBIVEIL
+ bool "Mobiveil AXI PCIe controller"
+ depends on ARCH_ZYNQMP || COMPILE_TEST
+ depends on OF
+ depends on PCI_MSI_IRQ_DOMAIN
+ help
+ Say Y here if you want to enable support for the Mobiveil AXI PCIe
+ Soft IP. It has up to 8 outbound and inbound windows
+ for address translation and it is a PCIe Gen4 IP.
+
config PCIE_TANGO_SMP8759
bool "Tango SMP8759 PCIe controller (DANGEROUS)"
depends on ARCH_TANGO && PCI_MSI && OF
diff --git a/drivers/pci/controller/Makefile b/drivers/pci/controller/Makefile
index 24322b92f200..d56a507495c5 100644
--- a/drivers/pci/controller/Makefile
+++ b/drivers/pci/controller/Makefile
@@ -26,6 +26,7 @@ obj-$(CONFIG_PCIE_ROCKCHIP) += pcie-rockchip.o
obj-$(CONFIG_PCIE_ROCKCHIP_EP) += pcie-rockchip-ep.o
obj-$(CONFIG_PCIE_ROCKCHIP_HOST) += pcie-rockchip-host.o
obj-$(CONFIG_PCIE_MEDIATEK) += pcie-mediatek.o
+obj-$(CONFIG_PCIE_MOBIVEIL) += pcie-mobiveil.o
obj-$(CONFIG_PCIE_TANGO_SMP8759) += pcie-tango.o
obj-$(CONFIG_VMD) += vmd.o
# pcie-hisi.o quirks are needed even without CONFIG_PCIE_DW
--
2.15.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] PCI: mobiveil: Misc fixes
2018-07-30 13:43 [PATCH 0/3] PCI: mobiveil: Misc fixes Lorenzo Pieralisi
` (2 preceding siblings ...)
2018-07-30 13:43 ` [PATCH 3/3] PCI: mobiveil: Add Kconfig/Makefile entries Lorenzo Pieralisi
@ 2018-07-31 16:56 ` Bjorn Helgaas
2018-07-31 17:27 ` Lorenzo Pieralisi
2018-08-03 7:14 ` Subrahmanya Lingappa
4 siblings, 1 reply; 8+ messages in thread
From: Bjorn Helgaas @ 2018-07-31 16:56 UTC (permalink / raw)
To: Lorenzo Pieralisi; +Cc: linux-pci, Subrahmanya Lingappa, Bjorn Helgaas
On Mon, Jul 30, 2018 at 02:43:13PM +0100, Lorenzo Pieralisi wrote:
> Subrahmanya,
>
> I put together this series so that the Mobiveil controller driver
> can compile (successfully). Please review and ack as soon as possible
> since the current situation is a bit embarassing to be honest, we
> should be sending these patches as fixes this week so that they
> can make it for v4.18, currently the driver is in the kernel for
> nothing.
There doesn't seem to be much interest in the Mobiveil driver (the
last patch I see was on May 10), and as you say, it's not even in the
Makefile, so it has gotten zero testing or even building.
Should we just drop the driver and see if anybody wants to try again
next cycle? I'm a little hesitant about flipping the switch to enable
a brand-new driver this late in the cycle.
Bjorn
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] PCI: mobiveil: Misc fixes
2018-07-31 16:56 ` [PATCH 0/3] PCI: mobiveil: Misc fixes Bjorn Helgaas
@ 2018-07-31 17:27 ` Lorenzo Pieralisi
0 siblings, 0 replies; 8+ messages in thread
From: Lorenzo Pieralisi @ 2018-07-31 17:27 UTC (permalink / raw)
To: Bjorn Helgaas; +Cc: linux-pci, Subrahmanya Lingappa, Bjorn Helgaas
On Tue, Jul 31, 2018 at 11:56:00AM -0500, Bjorn Helgaas wrote:
> On Mon, Jul 30, 2018 at 02:43:13PM +0100, Lorenzo Pieralisi wrote:
> > Subrahmanya,
> >
> > I put together this series so that the Mobiveil controller driver
> > can compile (successfully). Please review and ack as soon as possible
> > since the current situation is a bit embarassing to be honest, we
> > should be sending these patches as fixes this week so that they
> > can make it for v4.18, currently the driver is in the kernel for
> > nothing.
>
> There doesn't seem to be much interest in the Mobiveil driver (the
> last patch I see was on May 10), and as you say, it's not even in the
> Makefile, so it has gotten zero testing or even building.
>
> Should we just drop the driver and see if anybody wants to try again
> next cycle? I'm a little hesitant about flipping the switch to enable
> a brand-new driver this late in the cycle.
I totally share your concern - I do not know what's the best way
to drop it but I think that reverting it is sensible given what
this series has to do to enable it in the first place.
Thanks,
Lorenzo
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] PCI: mobiveil: Misc fixes
2018-07-30 13:43 [PATCH 0/3] PCI: mobiveil: Misc fixes Lorenzo Pieralisi
` (3 preceding siblings ...)
2018-07-31 16:56 ` [PATCH 0/3] PCI: mobiveil: Misc fixes Bjorn Helgaas
@ 2018-08-03 7:14 ` Subrahmanya Lingappa
4 siblings, 0 replies; 8+ messages in thread
From: Subrahmanya Lingappa @ 2018-08-03 7:14 UTC (permalink / raw)
To: Lorenzo Pieralisi; +Cc: linux-pci, Bjorn Helgaas
[-- Attachment #1: Type: text/plain, Size: 1094 bytes --]
Lorenzo,
Please go ahead.
Acked by: Subrahmanya lingappa
Thanks for this.
Subrahmanya
On Mon 30 Jul, 2018, 7:13 PM Lorenzo Pieralisi, <lorenzo.pieralisi@arm.com>
wrote:
> Subrahmanya,
>
> I put together this series so that the Mobiveil controller driver
> can compile (successfully). Please review and ack as soon as possible
> since the current situation is a bit embarassing to be honest, we
> should be sending these patches as fixes this week so that they
> can make it for v4.18, currently the driver is in the kernel for
> nothing.
>
> Thank you
> Lorenzo
>
> Cc: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
>
> Lorenzo Pieralisi (3):
> PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type
> PCI: mobiveil: Add missing ../pci.h include
> PCI: mobiveil: Add Kconfig/Makefile entries
>
> drivers/pci/controller/Kconfig | 10 ++++++++++
> drivers/pci/controller/Makefile | 1 +
> drivers/pci/controller/pcie-mobiveil.c | 4 +++-
> 3 files changed, 14 insertions(+), 1 deletion(-)
>
> --
> 2.15.0
>
>
[-- Attachment #2: Type: text/html, Size: 1728 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/3] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type
2018-07-30 13:43 ` [PATCH 1/3] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type Lorenzo Pieralisi
@ 2018-08-03 7:44 ` Subrahmanya Lingappa
0 siblings, 0 replies; 8+ messages in thread
From: Subrahmanya Lingappa @ 2018-08-03 7:44 UTC (permalink / raw)
To: Lorenzo Pieralisi; +Cc: linux-pci, Bjorn Helgaas
Lorenzo,
Acked By: Subrahmanya Lingappa
Thanks,
Subrahmanya
On Mon, Jul 30, 2018 at 7:13 PM, Lorenzo Pieralisi
<lorenzo.pieralisi@arm.com> wrote:
> The field pcie_reg_base in struct mobiveil_pcie represents a physical
> address so it should be of phys_addr_t type rather than void __iomem*;
> this results in the following compilation warnings:
>
> drivers/pci/controller/pcie-mobiveil.c: In function
> 'mobiveil_pcie_parse_dt':
> drivers/pci/controller/pcie-mobiveil.c:326:22: warning: assignment makes
> pointer from integer without a cast [-Wint-conversion]
> pcie->pcie_reg_base = res->start;
> ^
> drivers/pci/controller/pcie-mobiveil.c: In function
> 'mobiveil_pcie_enable_msi':
> drivers/pci/controller/pcie-mobiveil.c:485:25: warning: initialization
> makes integer from pointer without a cast [-Wint-conversion]
> phys_addr_t msg_addr = pcie->pcie_reg_base;
> ^~~~
> drivers/pci/controller/pcie-mobiveil.c: In function
> 'mobiveil_compose_msi_msg':
> drivers/pci/controller/pcie-mobiveil.c:640:21: warning: initialization
> makes integer from pointer without a cast [-Wint-conversion]
> phys_addr_t addr = pcie->pcie_reg_base + (data->hwirq * sizeof(int));
>
> Fix the type and with it the compilation warnings.
>
> Fixes: 9af6bcb11e12 ("PCI: mobiveil: Add Mobiveil PCIe Host Bridge IP
> driver")
> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
> ---
> drivers/pci/controller/pcie-mobiveil.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/pci/controller/pcie-mobiveil.c b/drivers/pci/controller/pcie-mobiveil.c
> index cf0aa7cee5b0..8b45f77d70f9 100644
> --- a/drivers/pci/controller/pcie-mobiveil.c
> +++ b/drivers/pci/controller/pcie-mobiveil.c
> @@ -130,7 +130,7 @@ struct mobiveil_pcie {
> void __iomem *config_axi_slave_base; /* endpoint config base */
> void __iomem *csr_axi_slave_base; /* root port config base */
> void __iomem *apb_csr_base; /* MSI register base */
> - void __iomem *pcie_reg_base; /* Physical PCIe Controller Base */
> + phys_addr_t pcie_reg_base; /* Physical PCIe Controller Base */
> struct irq_domain *intx_domain;
> raw_spinlock_t intx_mask_lock;
> int irq;
> --
> 2.15.0
>
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2018-08-03 9:39 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-30 13:43 [PATCH 0/3] PCI: mobiveil: Misc fixes Lorenzo Pieralisi
2018-07-30 13:43 ` [PATCH 1/3] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type Lorenzo Pieralisi
2018-08-03 7:44 ` Subrahmanya Lingappa
2018-07-30 13:43 ` [PATCH 2/3] PCI: mobiveil: Add missing ../pci.h include Lorenzo Pieralisi
2018-07-30 13:43 ` [PATCH 3/3] PCI: mobiveil: Add Kconfig/Makefile entries Lorenzo Pieralisi
2018-07-31 16:56 ` [PATCH 0/3] PCI: mobiveil: Misc fixes Bjorn Helgaas
2018-07-31 17:27 ` Lorenzo Pieralisi
2018-08-03 7:14 ` Subrahmanya Lingappa
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).