• Home
  • Raw
  • Download

Lines Matching +full:pci +full:- +full:ep

1 /* SPDX-License-Identifier: GPL-2.0 */
15 #include <linux/dma-mapping.h>
18 #include <linux/pci.h>
20 #include <linux/pci-epc.h>
21 #include <linux/pci-epf.h>
32 /* Synopsys-specific PCIe configuration registers */
121 * iATU Unroll-specific register definitions
210 void (*ep_init)(struct dw_pcie_ep *ep);
211 int (*raise_irq)(struct dw_pcie_ep *ep, u8 func_no,
213 const struct pci_epc_features* (*get_features)(struct dw_pcie_ep *ep);
221 unsigned int (*func_conf_select)(struct dw_pcie_ep *ep, u8 func_no);
228 u8 msix_cap; /* MSI-X capability offset */
271 struct dw_pcie_ep ep; member
282 container_of((endpoint), struct dw_pcie, ep)
284 u8 dw_pcie_find_capability(struct dw_pcie *pci, u8 cap);
285 u16 dw_pcie_find_ext_capability(struct dw_pcie *pci, u8 cap);
290 u32 dw_pcie_read_dbi(struct dw_pcie *pci, u32 reg, size_t size);
291 void dw_pcie_write_dbi(struct dw_pcie *pci, u32 reg, size_t size, u32 val);
292 void dw_pcie_write_dbi2(struct dw_pcie *pci, u32 reg, size_t size, u32 val);
293 int dw_pcie_link_up(struct dw_pcie *pci);
294 void dw_pcie_upconfig_setup(struct dw_pcie *pci);
295 int dw_pcie_wait_for_link(struct dw_pcie *pci);
296 void dw_pcie_prog_outbound_atu(struct dw_pcie *pci, int index,
299 void dw_pcie_prog_ep_outbound_atu(struct dw_pcie *pci, u8 func_no, int index,
302 int dw_pcie_prog_inbound_atu(struct dw_pcie *pci, u8 func_no, int index,
305 void dw_pcie_disable_atu(struct dw_pcie *pci, int index,
307 void dw_pcie_setup(struct dw_pcie *pci);
309 static inline void dw_pcie_writel_dbi(struct dw_pcie *pci, u32 reg, u32 val) in dw_pcie_writel_dbi() argument
311 dw_pcie_write_dbi(pci, reg, 0x4, val); in dw_pcie_writel_dbi()
314 static inline u32 dw_pcie_readl_dbi(struct dw_pcie *pci, u32 reg) in dw_pcie_readl_dbi() argument
316 return dw_pcie_read_dbi(pci, reg, 0x4); in dw_pcie_readl_dbi()
319 static inline void dw_pcie_writew_dbi(struct dw_pcie *pci, u32 reg, u16 val) in dw_pcie_writew_dbi() argument
321 dw_pcie_write_dbi(pci, reg, 0x2, val); in dw_pcie_writew_dbi()
324 static inline u16 dw_pcie_readw_dbi(struct dw_pcie *pci, u32 reg) in dw_pcie_readw_dbi() argument
326 return dw_pcie_read_dbi(pci, reg, 0x2); in dw_pcie_readw_dbi()
329 static inline void dw_pcie_writeb_dbi(struct dw_pcie *pci, u32 reg, u8 val) in dw_pcie_writeb_dbi() argument
331 dw_pcie_write_dbi(pci, reg, 0x1, val); in dw_pcie_writeb_dbi()
334 static inline u8 dw_pcie_readb_dbi(struct dw_pcie *pci, u32 reg) in dw_pcie_readb_dbi() argument
336 return dw_pcie_read_dbi(pci, reg, 0x1); in dw_pcie_readb_dbi()
339 static inline void dw_pcie_writel_dbi2(struct dw_pcie *pci, u32 reg, u32 val) in dw_pcie_writel_dbi2() argument
341 dw_pcie_write_dbi2(pci, reg, 0x4, val); in dw_pcie_writel_dbi2()
344 static inline void dw_pcie_dbi_ro_wr_en(struct dw_pcie *pci) in dw_pcie_dbi_ro_wr_en() argument
350 val = dw_pcie_readl_dbi(pci, reg); in dw_pcie_dbi_ro_wr_en()
352 dw_pcie_writel_dbi(pci, reg, val); in dw_pcie_dbi_ro_wr_en()
355 static inline void dw_pcie_dbi_ro_wr_dis(struct dw_pcie *pci) in dw_pcie_dbi_ro_wr_dis() argument
361 val = dw_pcie_readl_dbi(pci, reg); in dw_pcie_dbi_ro_wr_dis()
363 dw_pcie_writel_dbi(pci, reg, val); in dw_pcie_dbi_ro_wr_dis()
416 void dw_pcie_ep_linkup(struct dw_pcie_ep *ep);
417 int dw_pcie_ep_init(struct dw_pcie_ep *ep);
418 int dw_pcie_ep_init_complete(struct dw_pcie_ep *ep);
419 void dw_pcie_ep_init_notify(struct dw_pcie_ep *ep);
420 void dw_pcie_ep_exit(struct dw_pcie_ep *ep);
421 int dw_pcie_ep_raise_legacy_irq(struct dw_pcie_ep *ep, u8 func_no);
422 int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, u8 func_no,
424 int dw_pcie_ep_raise_msix_irq(struct dw_pcie_ep *ep, u8 func_no,
426 int dw_pcie_ep_raise_msix_irq_doorbell(struct dw_pcie_ep *ep, u8 func_no,
428 void dw_pcie_ep_reset_bar(struct dw_pcie *pci, enum pci_barno bar);
430 dw_pcie_ep_get_func_from_ep(struct dw_pcie_ep *ep, u8 func_no);
432 static inline void dw_pcie_ep_linkup(struct dw_pcie_ep *ep) in dw_pcie_ep_linkup() argument
436 static inline int dw_pcie_ep_init(struct dw_pcie_ep *ep) in dw_pcie_ep_init() argument
441 static inline int dw_pcie_ep_init_complete(struct dw_pcie_ep *ep) in dw_pcie_ep_init_complete() argument
446 static inline void dw_pcie_ep_init_notify(struct dw_pcie_ep *ep) in dw_pcie_ep_init_notify() argument
450 static inline void dw_pcie_ep_exit(struct dw_pcie_ep *ep) in dw_pcie_ep_exit() argument
454 static inline int dw_pcie_ep_raise_legacy_irq(struct dw_pcie_ep *ep, u8 func_no) in dw_pcie_ep_raise_legacy_irq() argument
459 static inline int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, u8 func_no, in dw_pcie_ep_raise_msi_irq() argument
465 static inline int dw_pcie_ep_raise_msix_irq(struct dw_pcie_ep *ep, u8 func_no, in dw_pcie_ep_raise_msix_irq() argument
471 static inline int dw_pcie_ep_raise_msix_irq_doorbell(struct dw_pcie_ep *ep, in dw_pcie_ep_raise_msix_irq_doorbell() argument
478 static inline void dw_pcie_ep_reset_bar(struct dw_pcie *pci, enum pci_barno bar) in dw_pcie_ep_reset_bar() argument
483 dw_pcie_ep_get_func_from_ep(struct dw_pcie_ep *ep, u8 func_no) in dw_pcie_ep_get_func_from_ep() argument