[PATCH v3 06/11] PCI: plda: Add event interrupt codes and IRQ domain ops
Minda Chen
minda.chen at starfivetech.com
Tue Aug 15 03:12:07 PDT 2023
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.
More information about the linux-riscv
mailing list