diff options
Diffstat (limited to 'drivers/pci/controller/dwc/pcie-designware.h')
| -rw-r--r-- | drivers/pci/controller/dwc/pcie-designware.h | 27 | 
1 files changed, 8 insertions, 19 deletions
| diff --git a/drivers/pci/controller/dwc/pcie-designware.h b/drivers/pci/controller/dwc/pcie-designware.h index 9d2f511f13fa..0207840756c4 100644 --- a/drivers/pci/controller/dwc/pcie-designware.h +++ b/drivers/pci/controller/dwc/pcie-designware.h @@ -80,10 +80,8 @@  #define PCIE_ATU_VIEWPORT		0x900  #define PCIE_ATU_REGION_INBOUND		BIT(31)  #define PCIE_ATU_REGION_OUTBOUND	0 -#define PCIE_ATU_REGION_INDEX2		0x2 -#define PCIE_ATU_REGION_INDEX1		0x1 -#define PCIE_ATU_REGION_INDEX0		0x0  #define PCIE_ATU_CR1			0x904 +#define PCIE_ATU_INCREASE_REGION_SIZE	BIT(13)  #define PCIE_ATU_TYPE_MEM		0x0  #define PCIE_ATU_TYPE_IO		0x2  #define PCIE_ATU_TYPE_CFG0		0x4 @@ -174,11 +172,11 @@ enum dw_pcie_device_mode {  struct dw_pcie_host_ops {  	int (*host_init)(struct pcie_port *pp); -	void (*set_num_vectors)(struct pcie_port *pp);  	int (*msi_host_init)(struct pcie_port *pp);  };  struct pcie_port { +	bool			has_msi_ctrl:1;  	u64			cfg0_base;  	void __iomem		*va_cfg0_base;  	u32			cfg0_size; @@ -239,8 +237,6 @@ struct dw_pcie_ep {  	phys_addr_t		*outbound_addr;  	unsigned long		*ib_window_map;  	unsigned long		*ob_window_map; -	u32			num_ib_windows; -	u32			num_ob_windows;  	void __iomem		*msi_mem;  	phys_addr_t		msi_mem_phys;  	struct pci_epf_bar	*epf_bar[PCI_STD_NUM_BARS]; @@ -265,8 +261,9 @@ struct dw_pcie {  	void __iomem		*dbi_base2;  	/* Used when iatu_unroll_enabled is true */  	void __iomem		*atu_base; -	u32			num_viewport; -	u8			iatu_unroll_enabled; +	size_t			atu_size; +	u32			num_ib_windows; +	u32			num_ob_windows;  	struct pcie_port	pp;  	struct dw_pcie_ep	ep;  	const struct dw_pcie_ops *ops; @@ -274,6 +271,8 @@ struct dw_pcie {  	int			num_lanes;  	int			link_gen;  	u8			n_fts[2]; +	bool			iatu_unroll_enabled: 1; +	bool			io_cfg_atu_shared: 1;  };  #define to_dw_pcie_from_pp(port) container_of((port), struct dw_pcie, pp) @@ -295,7 +294,7 @@ void dw_pcie_upconfig_setup(struct dw_pcie *pci);  int dw_pcie_wait_for_link(struct dw_pcie *pci);  void dw_pcie_prog_outbound_atu(struct dw_pcie *pci, int index,  			       int type, u64 cpu_addr, u64 pci_addr, -			       u32 size); +			       u64 size);  void dw_pcie_prog_ep_outbound_atu(struct dw_pcie *pci, u8 func_no, int index,  				  int type, u64 cpu_addr, u64 pci_addr,  				  u32 size); @@ -365,8 +364,6 @@ static inline void dw_pcie_dbi_ro_wr_dis(struct dw_pcie *pci)  #ifdef CONFIG_PCIE_DW_HOST  irqreturn_t dw_handle_msi_irq(struct pcie_port *pp); -void dw_pcie_msi_init(struct pcie_port *pp); -void dw_pcie_free_msi(struct pcie_port *pp);  void dw_pcie_setup_rc(struct pcie_port *pp);  int dw_pcie_host_init(struct pcie_port *pp);  void dw_pcie_host_deinit(struct pcie_port *pp); @@ -379,14 +376,6 @@ static inline irqreturn_t dw_handle_msi_irq(struct pcie_port *pp)  	return IRQ_NONE;  } -static inline void dw_pcie_msi_init(struct pcie_port *pp) -{ -} - -static inline void dw_pcie_free_msi(struct pcie_port *pp) -{ -} -  static inline void dw_pcie_setup_rc(struct pcie_port *pp)  {  } | 
