Hi: > -----Original Message----- > From: Bjørn Erik Nilsen [mailto:ben@xxxxxxxxxxxxxx] > Sent: Friday, January 24, 2014 3:47 PM > To: Harro Haan > Cc: Richard Zhu; Zhu Richard-R65037; Pratyush Anand; Jingoo Han; linux- > pci@xxxxxxxxxxxxxxx; Mohit KUMAR DCG; Marek Vasut > Subject: Re: designware/imx6: question regarding MSI > > On Thu, 2014-01-23 at 18:32 +0100, Harro Haan wrote: > > On 23 January 2014 16:20, Bjørn Erik Nilsen <ben@xxxxxxxxxxxxxx> wrote: > > > Hi Pratyush, > > > > > > On Thu, 2014-01-23 at 07:51 +0100, Pratyush Anand wrote: > > >> On Thu, Jan 23, 2014 at 01:52:19PM +0800, Jingoo Han wrote: > > >> > On Thursday, January 23, 2014 5:39 AM, Jingoo Han wrote: > > >> > > > > >> > > I’m currently playing with MSI support in pci-imx6.c using Harro > Haan’s patch [*]. > > > > The above patch mentioned will not become part of mainline Linux, but > > I expect/hope a reworked version of "[PATCH] pci: imx: enable pcie msi > > support" from Richard Zhu will become part of mainline, because this > > patch supports MSIX as well. Reference to the patch with review > > remarks: > > http://www.spinics.net/lists/linux-ide/msg47074.html > > OK, cool! Thank you guys for the good work. I will give it a shot later. > > > @Richard Zhu: Is this a correct assumption? > > [Richard] Yes, it is. I use this patch to enable imx6 pcie msi now. This patch should be re-considered, re-structure too. > > >> > > > > >> > > Are there any technical reasons why dw_pcie_msi_init cannot be > > >> > > called from dw_msi_setup_irq? Or rather, why it should not? > > >> > > > >> > No, there is no special reason. > > >> > The patch (call dw_pcie_msi_init from dw_msi_setup_irq) would be > > >> > good. Thank you for your effort. > > >> > > > >> > Mohit, Pratyush, > > >> > If you have different opinions, please let us know. :-) > > >> > > >> dw_msi_setup_irq will be called for each function which needs msi > > >> assignment. However, dw_pcie_msi_init should be called only once. > > >> So, in my opinion calling dw_pcie_msi_init from dw_msi_setup_irq > > >> would not be the best option. > > >> > > >> @Bjørn, can you help us with tracing calling sequence of > > >> dw_pcie_setup & dw_pcie_scan_bus. I think when you do "reset > > >> bridge", it will call dw_pcie_setup and when you do "rescan bus", > > >> it will call dw_pcie_scan_bus. If yes, then you can move > > >> dw_pcie_msi_init to dw_pcie_setup. > > > > > > > > > It looks like dw_pcie_setup and dw_pcie_scan_bus is only called when > > > booting. Resetting the bridge or scanning the bus will not trigger > > > any of these functions, unfortunately. > > > > > > I have looked for other hooks too, without luck. > > > > @Bjørn: have you applied the following patch? > > "[PATCH] pci: designware: fix missing msi irqs" > > Reference to the patch: > > http://lists.infradead.org/pipermail/linux-arm-kernel/2013-December/21 > > 8629.html > > Yes, I have that one applied as well. Best Regards Richard Zhu ��.n��������+%������w��{.n�����{���"�)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥