* [PATCH] PCI: rcar-gen4: Inline GIC_TRANSLATER offset macro
@ 2026-07-09 20:10 Marek Vasut
2026-07-10 8:30 ` Marc Zyngier
0 siblings, 1 reply; 3+ messages in thread
From: Marek Vasut @ 2026-07-09 20:10 UTC (permalink / raw)
To: linux-pci
Cc: Marek Vasut, kernel test robot, Krzysztof Wilczyński,
Bjorn Helgaas, Catalin Marinas, Conor Dooley, Geert Uytterhoeven,
Krzysztof Kozlowski, Lorenzo Pieralisi, Manivannan Sadhasivam,
Marc Zyngier, Rob Herring, Yoshihiro Shimoda, devicetree,
linux-arm-kernel, linux-doc, linux-kernel, linux-renesas-soc
Instead of pulling in the whole linux/irqchip/arm-gic-v3.h , copy the
one GITS_TRANSLATER register offset macro directly into the driver.
This repairs the ability to build the driver on non-ARM non-GIC targets
the way it was possible until now, which retains good build test coverage.
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202607100310.iQw5m9Uo-lkp@intel.com/
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kwilczynski@kernel.org>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <mani@kernel.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Rob Herring <robh@kernel.org>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: devicetree@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-doc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
---
Note: The alternative I could think of would be ifdeffery which
is not nice and thwarts the build coverage, or limit the
driver to ARM/ARM64 in Kconfig which also thwarts the build
coverage. I could also split off the register macros in
linux/irqchip/arm-gic-v3.h into some separate header
linux/irqchip/arm-gic-v3-regs.h and include that which
might be OKish and avoids duplication. Thoughts ?
---
drivers/pci/controller/dwc/pcie-rcar-gen4.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/pci/controller/dwc/pcie-rcar-gen4.c b/drivers/pci/controller/dwc/pcie-rcar-gen4.c
index 5f7211b91ee5b..4b75615c516f0 100644
--- a/drivers/pci/controller/dwc/pcie-rcar-gen4.c
+++ b/drivers/pci/controller/dwc/pcie-rcar-gen4.c
@@ -13,7 +13,6 @@
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/iopoll.h>
-#include <linux/irqchip/arm-gic-v3.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_address.h>
@@ -26,6 +25,9 @@
#include "../../pci.h"
#include "pcie-designware.h"
+/* GIC ITS TRANSLATER register offset in GIC ITS space */
+#define GITS_TRANSLATER 0x10040
+
/* Renesas-specific */
/* PCIe Mode Setting Register 0 */
#define PCIEMSR0 0x0000
--
2.53.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] PCI: rcar-gen4: Inline GIC_TRANSLATER offset macro
2026-07-09 20:10 [PATCH] PCI: rcar-gen4: Inline GIC_TRANSLATER offset macro Marek Vasut
@ 2026-07-10 8:30 ` Marc Zyngier
2026-07-10 13:35 ` Marek Vasut
0 siblings, 1 reply; 3+ messages in thread
From: Marc Zyngier @ 2026-07-10 8:30 UTC (permalink / raw)
To: Marek Vasut
Cc: linux-pci, kernel test robot, Krzysztof Wilczyński,
Bjorn Helgaas, Catalin Marinas, Conor Dooley, Geert Uytterhoeven,
Krzysztof Kozlowski, Lorenzo Pieralisi, Manivannan Sadhasivam,
Rob Herring, Yoshihiro Shimoda, devicetree, linux-arm-kernel,
linux-doc, linux-kernel, linux-renesas-soc
On Thu, 09 Jul 2026 21:10:03 +0100,
Marek Vasut <marek.vasut+renesas@mailbox.org> wrote:
>
> Instead of pulling in the whole linux/irqchip/arm-gic-v3.h , copy the
> one GITS_TRANSLATER register offset macro directly into the driver.
> This repairs the ability to build the driver on non-ARM non-GIC targets
> the way it was possible until now, which retains good build test coverage.
>
> Reported-by: kernel test robot <lkp@intel.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202607100310.iQw5m9Uo-lkp@intel.com/
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> ---
> Cc: "Krzysztof Wilczyński" <kwilczynski@kernel.org>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Catalin Marinas <catalin.marinas@arm.com>
> Cc: Conor Dooley <conor+dt@kernel.org>
> Cc: Geert Uytterhoeven <geert+renesas@glider.be>
> Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> Cc: Manivannan Sadhasivam <mani@kernel.org>
> Cc: Marc Zyngier <maz@kernel.org>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> Cc: devicetree@vger.kernel.org
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-doc@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> Cc: linux-pci@vger.kernel.org
> Cc: linux-renesas-soc@vger.kernel.org
> ---
> Note: The alternative I could think of would be ifdeffery which
> is not nice and thwarts the build coverage, or limit the
> driver to ARM/ARM64 in Kconfig which also thwarts the build
> coverage. I could also split off the register macros in
> linux/irqchip/arm-gic-v3.h into some separate header
> linux/irqchip/arm-gic-v3-regs.h and include that which
> might be OKish and avoids duplication. Thoughts ?
No, I'm not hacking something that is purely architecture specific for
the purpose of a bizarre integration quirk that should be handled by
the boot firmware, and not Linux.
Add whatever you want to the PCI glue code, limit this to arm64 (which
is the only architecture this can ever be used on, and the build
coverage argument really doesn't hold), but please leave the GIC code
alone.
M.
--
Jazz isn't dead. It just smells funny.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] PCI: rcar-gen4: Inline GIC_TRANSLATER offset macro
2026-07-10 8:30 ` Marc Zyngier
@ 2026-07-10 13:35 ` Marek Vasut
0 siblings, 0 replies; 3+ messages in thread
From: Marek Vasut @ 2026-07-10 13:35 UTC (permalink / raw)
To: Marc Zyngier
Cc: linux-pci, kernel test robot, Krzysztof Wilczyński,
Bjorn Helgaas, Catalin Marinas, Conor Dooley, Geert Uytterhoeven,
Krzysztof Kozlowski, Lorenzo Pieralisi, Manivannan Sadhasivam,
Rob Herring, Yoshihiro Shimoda, devicetree, linux-arm-kernel,
linux-doc, linux-kernel, linux-renesas-soc
On 7/10/26 10:30 AM, Marc Zyngier wrote:
> On Thu, 09 Jul 2026 21:10:03 +0100,
> Marek Vasut <marek.vasut+renesas@mailbox.org> wrote:
>>
>> Instead of pulling in the whole linux/irqchip/arm-gic-v3.h , copy the
>> one GITS_TRANSLATER register offset macro directly into the driver.
>> This repairs the ability to build the driver on non-ARM non-GIC targets
>> the way it was possible until now, which retains good build test coverage.
>>
>> Reported-by: kernel test robot <lkp@intel.com>
>> Closes: https://lore.kernel.org/oe-kbuild-all/202607100310.iQw5m9Uo-lkp@intel.com/
>> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
>> ---
>> Cc: "Krzysztof Wilczyński" <kwilczynski@kernel.org>
>> Cc: Bjorn Helgaas <bhelgaas@google.com>
>> Cc: Catalin Marinas <catalin.marinas@arm.com>
>> Cc: Conor Dooley <conor+dt@kernel.org>
>> Cc: Geert Uytterhoeven <geert+renesas@glider.be>
>> Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
>> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
>> Cc: Manivannan Sadhasivam <mani@kernel.org>
>> Cc: Marc Zyngier <maz@kernel.org>
>> Cc: Rob Herring <robh@kernel.org>
>> Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
>> Cc: devicetree@vger.kernel.org
>> Cc: linux-arm-kernel@lists.infradead.org
>> Cc: linux-doc@vger.kernel.org
>> Cc: linux-kernel@vger.kernel.org
>> Cc: linux-pci@vger.kernel.org
>> Cc: linux-renesas-soc@vger.kernel.org
>> ---
>> Note: The alternative I could think of would be ifdeffery which
>> is not nice and thwarts the build coverage, or limit the
>> driver to ARM/ARM64 in Kconfig which also thwarts the build
>> coverage. I could also split off the register macros in
>> linux/irqchip/arm-gic-v3.h into some separate header
>> linux/irqchip/arm-gic-v3-regs.h and include that which
>> might be OKish and avoids duplication. Thoughts ?
>
> No, I'm not hacking something that is purely architecture specific for
> the purpose of a bizarre integration quirk that should be handled by
> the boot firmware, and not Linux.
The PCIe controller is fully controlled by Linux. I don't think this can
be handled by the boot firmware. The GIC ITS TRANSLATER address could be
derived from the DT compatible string of the PCIe controller (I had that
implemented before), but that is the less generic option.
> Add whatever you want to the PCI glue code, limit this to arm64 (which
> is the only architecture this can ever be used on, and the build
> coverage argument really doesn't hold), but please leave the GIC code
> alone.
So in the end, it is either this patch or limit the build to arm/arm64 .
At least this patch still allows building this driver with more
compilers on the various build bots, so I would opt for this patch here.
Thank you for your help !
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-07-10 13:35 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-09 20:10 [PATCH] PCI: rcar-gen4: Inline GIC_TRANSLATER offset macro Marek Vasut
2026-07-10 8:30 ` Marc Zyngier
2026-07-10 13:35 ` Marek Vasut
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox