Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1244092

Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt controller.

From Thomas Gleixner <tglx@linutronix.de>
Newsgroups linux.kernel
Subject Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt controller.
Date 2015-10-11 12:00 +0200
Message-ID <qilA6-4GV-5@gated-at.bofh.it> (permalink)
References (2 earlier) <qexgu-oR-21@gated-at.bofh.it> <qfLU6-20A-5@gated-at.bofh.it> <qhGdA-3Jr-29@gated-at.bofh.it> <qhYk9-4Ky-1@gated-at.bofh.it> <qhZpT-6hV-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Sat, 10 Oct 2015, Marc Zyngier wrote:
> On Sat, 10 Oct 2015 17:01:32 +0800
> "majun (F)" <majun258@huawei.com> wrote:
> > But there is a problem If i make the structure like you said.
> > 
> > For example, my hardware structure likes below:
> > 
> > uart ------> mbigen --> ITS-pMSI --> ITS --> GIC
> >      virq1
> > 
> > virq1 means the virq number allocted by irq_of_parse_and_map() function
> > when system parse the uart dts node in initializing  stage.
> > 
> > To create a ITS device, I need to call msi_domain_alloc_irqs() function
> > in my mbigen alloc function.
> > 
> > In this function, a new virq number(named as virq2 ) which different from
> > virq1 is allocated.
> > So, this is a big problem.
> 
> I think I see what your problem is:
> - The wired interrupt (uart -> mbigen) is allocated through DT (and
>   must be available early, because of of_platform_populate),
> - The MSI (mgigen -> ITS) is dynamic (and allocated much later,
>   because the device model kicks in after irqchip init, and we cannot
>   allocate MSIs without a device).

Why do we need that wired interrupt at all? 

We can make mbigen the 'msi-parent' of the device and let the
msi_domain_ops::msi_prepare() callback figure out the actual wiring
through device->fwnode.

Thanks,

	tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. Thomas Gleixner <tglx@linutronix.de> - 2015-10-09 15:50 +0200
  Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. "majun (F)" <majun258@huawei.com> - 2015-10-10 11:10 +0200
    Re: [PATCH v5 1/3] initialize each mbigen device node as a  interrupt controller. Marc Zyngier <marc.zyngier@arm.com> - 2015-10-10 12:20 +0200
      Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. Thomas Gleixner <tglx@linutronix.de> - 2015-10-11 12:00 +0200
        Re: [PATCH v5 1/3] initialize each mbigen device node as a  interrupt controller. Marc Zyngier <marc.zyngier@arm.com> - 2015-10-11 13:10 +0200
          Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. Thomas Gleixner <tglx@linutronix.de> - 2015-10-11 18:50 +0200
            Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. "majun (F)" <majun258@huawei.com> - 2015-10-13 08:40 +0200
              Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. Thomas Gleixner <tglx@linutronix.de> - 2015-10-13 09:00 +0200
                Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. "majun (F)" <majun258@huawei.com> - 2015-10-14 10:30 +0200
                Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. Thomas Gleixner <tglx@linutronix.de> - 2015-10-14 10:30 +0200
                Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. "majun (F)" <majun258@huawei.com> - 2015-10-14 11:10 +0200
            Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. Marc Zyngier <marc.zyngier@arm.com> - 2015-10-14 11:00 +0200
              Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. Thomas Gleixner <tglx@linutronix.de> - 2015-10-14 11:20 +0200
                Re: [PATCH v5 1/3] initialize each mbigen device node as a interrupt  controller. Marc Zyngier <marc.zyngier@arm.com> - 2015-10-14 11:50 +0200

csiph-web