PCI: microchip: Move PLDA structures to plda-pcie.h
Move the PLDA generic data structures to a header file so they can be re-used by all PLDA-based drivers. [kwilczynski: commit log] Link: https://lore.kernel.org/linux-pci/20240328091835.14797-7-minda.chen@starfivetech.com Signed-off-by: Minda Chen <minda.chen@starfivetech.com> Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
This commit is contained in:
parent
e9b7007a94
commit
41ceca8c61
@ -21,9 +21,6 @@
|
||||
#include "../../pci.h"
|
||||
#include "pcie-plda.h"
|
||||
|
||||
/* Number of MSI IRQs */
|
||||
#define PLDA_MAX_NUM_MSI_IRQS 32
|
||||
|
||||
/* PCIe Bridge Phy and Controller Phy offsets */
|
||||
#define MC_PCIE1_BRIDGE_ADDR 0x00008000u
|
||||
#define MC_PCIE1_CTRL_ADDR 0x0000a000u
|
||||
@ -179,23 +176,6 @@ struct event_map {
|
||||
u32 event_bit;
|
||||
};
|
||||
|
||||
struct plda_msi {
|
||||
struct mutex lock; /* Protect used bitmap */
|
||||
struct irq_domain *msi_domain;
|
||||
struct irq_domain *dev_domain;
|
||||
u32 num_vectors;
|
||||
u64 vector_phy;
|
||||
DECLARE_BITMAP(used, PLDA_MAX_NUM_MSI_IRQS);
|
||||
};
|
||||
|
||||
struct plda_pcie_rp {
|
||||
struct device *dev;
|
||||
struct irq_domain *intx_domain;
|
||||
struct irq_domain *event_domain;
|
||||
raw_spinlock_t lock;
|
||||
struct plda_msi msi;
|
||||
void __iomem *bridge_addr;
|
||||
};
|
||||
|
||||
struct mc_pcie {
|
||||
struct plda_pcie_rp plda;
|
||||
|
@ -6,6 +6,9 @@
|
||||
#ifndef _PCIE_PLDA_H
|
||||
#define _PCIE_PLDA_H
|
||||
|
||||
/* Number of MSI IRQs */
|
||||
#define PLDA_MAX_NUM_MSI_IRQS 32
|
||||
|
||||
/* PCIe Bridge Phy Regs */
|
||||
#define PCIE_PCI_IRQ_DW0 0xa8
|
||||
#define MSIX_CAP_MASK BIT(31)
|
||||
@ -105,4 +108,22 @@ enum plda_int_event {
|
||||
|
||||
#define PLDA_MAX_EVENT_NUM (PLDA_NUM_DMA_EVENTS + PLDA_INT_EVENT_NUM)
|
||||
|
||||
struct plda_msi {
|
||||
struct mutex lock; /* Protect used bitmap */
|
||||
struct irq_domain *msi_domain;
|
||||
struct irq_domain *dev_domain;
|
||||
u32 num_vectors;
|
||||
u64 vector_phy;
|
||||
DECLARE_BITMAP(used, PLDA_MAX_NUM_MSI_IRQS);
|
||||
};
|
||||
|
||||
struct plda_pcie_rp {
|
||||
struct device *dev;
|
||||
struct irq_domain *intx_domain;
|
||||
struct irq_domain *event_domain;
|
||||
raw_spinlock_t lock;
|
||||
struct plda_msi msi;
|
||||
void __iomem *bridge_addr;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user