[PATCH v3 06/11] PCI: plda: Add event interrupt codes and IRQ domain ops

Conor Dooley conor at kernel.org
Tue Aug 15 06:11:09 PDT 2023


On Tue, Aug 15, 2023 at 06:12:07PM +0800, Minda Chen wrote:
> 
> 
> On 2023/8/14 21:52, Conor Dooley wrote:
> > On Mon, Aug 14, 2023 at 04:20:11PM +0800, Minda Chen wrote:
> >> For PolarFire implements non-PLDA local interrupt events, most of
> >> event interrupt process codes can not be re-used. PLDA implements
> >> new codes and IRQ domain ops like PolarFire.
> >> 
> >> plda_handle_event adds a new IRQ num to event num mapping codes for
> >> PLDA local event except DMA engine interrupt events. The DMA engine
> >> interrupt events are implemented by vendors.
> >> 
> >> Signed-off-by: Minda Chen <minda.chen at starfivetech.com>
> >> ---
> >>  .../pci/controller/plda/pcie-microchip-host.c | 29 +++---
> >>  drivers/pci/controller/plda/pcie-plda-host.c  | 99 +++++++++++++++++++
> >>  drivers/pci/controller/plda/pcie-plda.h       | 19 ++++
> >>  3 files changed, 133 insertions(+), 14 deletions(-)
> >> 
> >> diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
> >> index c28840315019..b42f1aac3ec3 100644
> >> --- a/drivers/pci/controller/plda/pcie-microchip-host.c
> >> +++ b/drivers/pci/controller/plda/pcie-microchip-host.c
> >> @@ -96,20 +96,21 @@
> >>  #define EVENT_LOCAL_DMA_END_ENGINE_1		12
> >>  #define EVENT_LOCAL_DMA_ERROR_ENGINE_0		13
> >>  #define EVENT_LOCAL_DMA_ERROR_ENGINE_1		14
> >> -#define EVENT_LOCAL_A_ATR_EVT_POST_ERR		15
> >> -#define EVENT_LOCAL_A_ATR_EVT_FETCH_ERR		16
> >> -#define EVENT_LOCAL_A_ATR_EVT_DISCARD_ERR	17
> >> -#define EVENT_LOCAL_A_ATR_EVT_DOORBELL		18
> >> -#define EVENT_LOCAL_P_ATR_EVT_POST_ERR		19
> >> -#define EVENT_LOCAL_P_ATR_EVT_FETCH_ERR		20
> >> -#define EVENT_LOCAL_P_ATR_EVT_DISCARD_ERR	21
> >> -#define EVENT_LOCAL_P_ATR_EVT_DOORBELL		22
> >> -#define EVENT_LOCAL_PM_MSI_INT_INTX		23
> >> -#define EVENT_LOCAL_PM_MSI_INT_MSI		24
> >> -#define EVENT_LOCAL_PM_MSI_INT_AER_EVT		25
> >> -#define EVENT_LOCAL_PM_MSI_INT_EVENTS		26
> >> -#define EVENT_LOCAL_PM_MSI_INT_SYS_ERR		27
> >> -#define NUM_EVENTS				28
> >> +#define NUM_MC_EVENTS				15
> >> +#define EVENT_LOCAL_A_ATR_EVT_POST_ERR		(NUM_MC_EVENTS + EVENT_A_ATR_EVT_POST_ERR)
> >> +#define EVENT_LOCAL_A_ATR_EVT_FETCH_ERR		(NUM_MC_EVENTS + EVENT_A_ATR_EVT_FETCH_ERR)
> >> +#define EVENT_LOCAL_A_ATR_EVT_DISCARD_ERR	(NUM_MC_EVENTS + EVENT_A_ATR_EVT_DISCARD_ERR)
> >> +#define EVENT_LOCAL_A_ATR_EVT_DOORBELL		(NUM_MC_EVENTS + EVENT_A_ATR_EVT_DOORBELL)
> >> +#define EVENT_LOCAL_P_ATR_EVT_POST_ERR		(NUM_MC_EVENTS + EVENT_P_ATR_EVT_POST_ERR)
> >> +#define EVENT_LOCAL_P_ATR_EVT_FETCH_ERR		(NUM_MC_EVENTS + EVENT_P_ATR_EVT_FETCH_ERR)
> >> +#define EVENT_LOCAL_P_ATR_EVT_DISCARD_ERR	(NUM_MC_EVENTS + EVENT_P_ATR_EVT_DISCARD_ERR)
> >> +#define EVENT_LOCAL_P_ATR_EVT_DOORBELL		(NUM_MC_EVENTS + EVENT_P_ATR_EVT_DOORBELL)
> >> +#define EVENT_LOCAL_PM_MSI_INT_INTX		(NUM_MC_EVENTS + EVENT_PM_MSI_INT_INTX)
> >> +#define EVENT_LOCAL_PM_MSI_INT_MSI		(NUM_MC_EVENTS + EVENT_PM_MSI_INT_MSI)
> >> +#define EVENT_LOCAL_PM_MSI_INT_AER_EVT		(NUM_MC_EVENTS + EVENT_PM_MSI_INT_AER_EVT)
> >> +#define EVENT_LOCAL_PM_MSI_INT_EVENTS		(NUM_MC_EVENTS + EVENT_PM_MSI_INT_EVENTS)
> >> +#define EVENT_LOCAL_PM_MSI_INT_SYS_ERR		(NUM_MC_EVENTS + EVENT_PM_MSI_INT_SYS_ERR)
> >> +#define NUM_EVENTS				(NUM_MC_EVENTS + NUM_PLDA_EVENTS)
> > 
> > Is this change not in the wrong patch & should be changed alongside the
> > movement of defines? 
> EVENT_xxx is new added one for PLDA codes and The event num start from 0. This add association to PLDA events.
> Maybe this can be moved to patch8 or a new patch.

It feels like it should be in patch 3 to me.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-riscv/attachments/20230815/2375e0d0/attachment.sig>


More information about the linux-riscv mailing list