• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/arch/mips/pci/

Lines Matching refs:pcie_port

82  * @pcie_port: PCIe port the IO is for
86 static inline uint64_t cvmx_pcie_get_io_base_address(int pcie_port)
95 pcie_addr.io.port = pcie_port;
103 * @pcie_port: PCIe port the IO is for
107 static inline uint64_t cvmx_pcie_get_io_size(int pcie_port)
116 * @pcie_port: PCIe port the IO is for
120 static inline uint64_t cvmx_pcie_get_mem_base_address(int pcie_port)
127 pcie_addr.mem.subdid = 3 + pcie_port;
135 * @pcie_port: PCIe port the IO is for
139 static inline uint64_t cvmx_pcie_get_mem_size(int pcie_port)
148 * @pcie_port: PCIe port to read from
153 static uint32_t cvmx_pcie_cfgx_read(int pcie_port, uint32_t cfg_offset)
158 cvmx_write_csr(CVMX_PESCX_CFG_RD(pcie_port), pescx_cfg_rd.u64);
159 pescx_cfg_rd.u64 = cvmx_read_csr(CVMX_PESCX_CFG_RD(pcie_port));
167 * @pcie_port: PCIe port to write to
171 static void cvmx_pcie_cfgx_write(int pcie_port, uint32_t cfg_offset,
178 cvmx_write_csr(CVMX_PESCX_CFG_WR(pcie_port), pescx_cfg_wr.u64);
184 * @pcie_port: PCIe port to access
192 static inline uint64_t __cvmx_pcie_build_config_addr(int pcie_port, int bus,
199 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG006(pcie_port));
209 pcie_addr.config.port = pcie_port;
221 * @pcie_port: PCIe port the device is on
229 static uint8_t cvmx_pcie_config_read8(int pcie_port, int bus, int dev,
233 __cvmx_pcie_build_config_addr(pcie_port, bus, dev, fn, reg);
243 * @pcie_port: PCIe port the device is on
251 static uint16_t cvmx_pcie_config_read16(int pcie_port, int bus, int dev,
255 __cvmx_pcie_build_config_addr(pcie_port, bus, dev, fn, reg);
265 * @pcie_port: PCIe port the device is on
273 static uint32_t cvmx_pcie_config_read32(int pcie_port, int bus, int dev,
277 __cvmx_pcie_build_config_addr(pcie_port, bus, dev, fn, reg);
287 * @pcie_port: PCIe port the device is on
294 static void cvmx_pcie_config_write8(int pcie_port, int bus, int dev, int fn,
298 __cvmx_pcie_build_config_addr(pcie_port, bus, dev, fn, reg);
306 * @pcie_port: PCIe port the device is on
313 static void cvmx_pcie_config_write16(int pcie_port, int bus, int dev, int fn,
317 __cvmx_pcie_build_config_addr(pcie_port, bus, dev, fn, reg);
325 * @pcie_port: PCIe port the device is on
332 static void cvmx_pcie_config_write32(int pcie_port, int bus, int dev, int fn,
336 __cvmx_pcie_build_config_addr(pcie_port, bus, dev, fn, reg);
344 * @pcie_port: PCIe port to initialize
346 static void __cvmx_pcie_rc_initialize_config_space(int pcie_port)
367 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG030(pcie_port));
390 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG030(pcie_port),
405 if (pcie_port)
413 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG070(pcie_port));
416 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG070(pcie_port),
427 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG001(pcie_port));
432 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG001(pcie_port),
437 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG066(pcie_port), 0);
439 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG069(pcie_port), 0);
443 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG032(pcie_port));
445 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG032(pcie_port),
463 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG006(pcie_port),
474 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG008(pcie_port),
484 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG009(pcie_port));
486 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG010(pcie_port));
488 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG011(pcie_port));
493 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG009(pcie_port),
495 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG010(pcie_port),
497 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG011(pcie_port),
505 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG035(pcie_port));
514 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG035(pcie_port),
522 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG075(pcie_port));
529 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG075(pcie_port),
536 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG034(pcie_port));
543 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG034(pcie_port),
552 * @pcie_port: PCIe port to initialize
556 static int __cvmx_pcie_rc_initialize_link(int pcie_port)
566 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG452(pcie_port));
567 pescx_ctl_status.u64 = cvmx_read_csr(CVMX_PESCX_CTL_STATUS(pcie_port));
575 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG452(pcie_port),
586 cvmx_pcie_cfgx_read(pcie_port,
587 CVMX_PCIERCX_CFG455(pcie_port));
589 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG455(pcie_port),
594 if (OCTEON_IS_MODEL(OCTEON_CN52XX) && (pcie_port == 1)) {
596 cvmx_write_csr(CVMX_PESCX_CTL_STATUS(pcie_port),
601 pescx_ctl_status.u64 = cvmx_read_csr(CVMX_PESCX_CTL_STATUS(pcie_port));
603 cvmx_write_csr(CVMX_PESCX_CTL_STATUS(pcie_port), pescx_ctl_status.u64);
613 cvmx_dprintf("PCIe: Waiting for port %d link\n", pcie_port);
619 pcie_port);
624 cvmx_pcie_cfgx_read(pcie_port,
625 CVMX_PCIERCX_CFG032(pcie_port));
629 cvmx_dprintf("PCIe: Port %d link active, %d lanes\n", pcie_port,
633 cvmx_pcie_cfgx_read(pcie_port, CVMX_PCIERCX_CFG448(pcie_port));
648 cvmx_pcie_cfgx_write(pcie_port, CVMX_PCIERCX_CFG448(pcie_port),
658 * @pcie_port: PCIe port to initialize
662 static int cvmx_pcie_rc_initialize(int pcie_port)
682 if ((pcie_port == 0) && !npei_ctl_status.s.host_mode) {
694 if ((pcie_port == 1) && npei_dbg_data.cn52xx.qlm0_link_width) {
721 if (pcie_port == 0) {
755 if (pcie_port)
767 if (pcie_port)
776 if (pcie_port) {
800 cvmx_read_csr(CVMX_PESCX_CTL_STATUS2(pcie_port));
802 cvmx_write_csr(CVMX_PESCX_CTL_STATUS2(pcie_port),
808 if (CVMX_WAIT_FOR_FIELD64(CVMX_PESCX_CTL_STATUS2(pcie_port),
812 pcie_port);
823 cvmx_read_csr(CVMX_PESCX_CTL_STATUS2(pcie_port));
826 pcie_port);
835 cvmx_read_csr(CVMX_PESCX_BIST_STATUS2(pcie_port));
839 pcie_port);
845 cvmx_read_csr(CVMX_PESCX_BIST_STATUS(pcie_port));
848 pcie_port, CAST64(pescx_bist_status.u64));
851 __cvmx_pcie_rc_initialize_config_space(pcie_port);
854 if (__cvmx_pcie_rc_initialize_link(pcie_port)) {
871 mem_access_subid.s.port = pcie_port;
893 for (i = 12 + pcie_port * 4; i < 16 + pcie_port * 4; i++) {
906 cvmx_write_csr(CVMX_PESCX_P2P_BARX_START(i, pcie_port), -1);
907 cvmx_write_csr(CVMX_PESCX_P2P_BARX_END(i, pcie_port), -1);
911 cvmx_write_csr(CVMX_PESCX_P2N_BAR0_START(pcie_port), 0);
914 cvmx_write_csr(CVMX_PESCX_P2N_BAR1_START(pcie_port), CVMX_PCIE_BAR1_RC_BASE);
922 base = pcie_port ? 16 : 0;
944 cvmx_write_csr(CVMX_PESCX_P2N_BAR2_START(pcie_port), 0);
955 if (pcie_port) {
1044 static inline int octeon_pcie_read_config(int pcie_port, struct pci_bus *bus,
1058 pciercx_cfg006.u32 = cvmx_pcie_cfgx_read(pcie_port,
1059 CVMX_PCIERCX_CFG006(pcie_port));
1064 cvmx_pcie_cfgx_write(pcie_port,
1065 CVMX_PCIERCX_CFG006(pcie_port),
1113 *val = cvmx_pcie_config_read32(pcie_port, bus_number,
1117 *val = cvmx_pcie_config_read16(pcie_port, bus_number,
1121 *val = cvmx_pcie_config_read8(pcie_port, bus_number, devfn >> 3,
1158 static inline int octeon_pcie_write_config(int pcie_port, struct pci_bus *bus,
1166 cvmx_pcie_config_write32(pcie_port, bus_number, devfn >> 3,
1170 cvmx_pcie_config_write16(pcie_port, bus_number, devfn >> 3,
1174 cvmx_pcie_config_write8(pcie_port, bus_number, devfn >> 3,