• Home
  • Raw
  • Download

Lines Matching refs:pc

20 u32 bcma_pcie_read(struct bcma_drv_pci *pc, u32 address)  in bcma_pcie_read()  argument
22 pcicore_write32(pc, BCMA_CORE_PCI_PCIEIND_ADDR, address); in bcma_pcie_read()
23 pcicore_read32(pc, BCMA_CORE_PCI_PCIEIND_ADDR); in bcma_pcie_read()
24 return pcicore_read32(pc, BCMA_CORE_PCI_PCIEIND_DATA); in bcma_pcie_read()
27 static void bcma_pcie_write(struct bcma_drv_pci *pc, u32 address, u32 data) in bcma_pcie_write() argument
29 pcicore_write32(pc, BCMA_CORE_PCI_PCIEIND_ADDR, address); in bcma_pcie_write()
30 pcicore_read32(pc, BCMA_CORE_PCI_PCIEIND_ADDR); in bcma_pcie_write()
31 pcicore_write32(pc, BCMA_CORE_PCI_PCIEIND_DATA, data); in bcma_pcie_write()
34 static void bcma_pcie_mdio_set_phy(struct bcma_drv_pci *pc, u8 phy) in bcma_pcie_mdio_set_phy() argument
47 pcicore_write32(pc, BCMA_CORE_PCI_MDIO_DATA, v); in bcma_pcie_mdio_set_phy()
51 v = pcicore_read32(pc, BCMA_CORE_PCI_MDIO_CONTROL); in bcma_pcie_mdio_set_phy()
58 static u16 bcma_pcie_mdio_read(struct bcma_drv_pci *pc, u8 device, u8 address) in bcma_pcie_mdio_read() argument
68 pcicore_write32(pc, BCMA_CORE_PCI_MDIO_CONTROL, v); in bcma_pcie_mdio_read()
70 if (pc->core->id.rev >= 10) { in bcma_pcie_mdio_read()
72 bcma_pcie_mdio_set_phy(pc, device); in bcma_pcie_mdio_read()
85 pcicore_write32(pc, BCMA_CORE_PCI_MDIO_DATA, v); in bcma_pcie_mdio_read()
89 v = pcicore_read32(pc, BCMA_CORE_PCI_MDIO_CONTROL); in bcma_pcie_mdio_read()
92 ret = pcicore_read32(pc, BCMA_CORE_PCI_MDIO_DATA); in bcma_pcie_mdio_read()
97 pcicore_write32(pc, BCMA_CORE_PCI_MDIO_CONTROL, 0); in bcma_pcie_mdio_read()
101 static void bcma_pcie_mdio_write(struct bcma_drv_pci *pc, u8 device, in bcma_pcie_mdio_write() argument
111 pcicore_write32(pc, BCMA_CORE_PCI_MDIO_CONTROL, v); in bcma_pcie_mdio_write()
113 if (pc->core->id.rev >= 10) { in bcma_pcie_mdio_write()
115 bcma_pcie_mdio_set_phy(pc, device); in bcma_pcie_mdio_write()
128 pcicore_write32(pc, BCMA_CORE_PCI_MDIO_DATA, v); in bcma_pcie_mdio_write()
132 v = pcicore_read32(pc, BCMA_CORE_PCI_MDIO_CONTROL); in bcma_pcie_mdio_write()
137 pcicore_write32(pc, BCMA_CORE_PCI_MDIO_CONTROL, 0); in bcma_pcie_mdio_write()
144 static u8 bcma_pcicore_polarity_workaround(struct bcma_drv_pci *pc) in bcma_pcicore_polarity_workaround() argument
148 tmp = bcma_pcie_read(pc, BCMA_CORE_PCI_PLP_STATUSREG); in bcma_pcicore_polarity_workaround()
156 static void bcma_pcicore_serdes_workaround(struct bcma_drv_pci *pc) in bcma_pcicore_serdes_workaround() argument
160 bcma_pcie_mdio_write(pc, BCMA_CORE_PCI_MDIODATA_DEV_RX, in bcma_pcicore_serdes_workaround()
162 bcma_pcicore_polarity_workaround(pc)); in bcma_pcicore_serdes_workaround()
163 tmp = bcma_pcie_mdio_read(pc, BCMA_CORE_PCI_MDIODATA_DEV_PLL, in bcma_pcicore_serdes_workaround()
166 bcma_pcie_mdio_write(pc, BCMA_CORE_PCI_MDIODATA_DEV_PLL, in bcma_pcicore_serdes_workaround()
171 static void bcma_core_pci_fixcfg(struct bcma_drv_pci *pc) in bcma_core_pci_fixcfg() argument
173 struct bcma_device *core = pc->core; in bcma_core_pci_fixcfg()
180 val16 = pcicore_read16(pc, regoff); in bcma_core_pci_fixcfg()
185 pcicore_write16(pc, regoff, val16); in bcma_core_pci_fixcfg()
191 static void bcma_core_pci_config_fixup(struct bcma_drv_pci *pc) in bcma_core_pci_config_fixup() argument
198 val16 = pcicore_read16(pc, regoff); in bcma_core_pci_config_fixup()
202 pcicore_write16(pc, regoff, val16); in bcma_core_pci_config_fixup()
210 static void bcma_core_pci_clientmode_init(struct bcma_drv_pci *pc) in bcma_core_pci_clientmode_init() argument
212 bcma_core_pci_fixcfg(pc); in bcma_core_pci_clientmode_init()
213 bcma_pcicore_serdes_workaround(pc); in bcma_core_pci_clientmode_init()
214 bcma_core_pci_config_fixup(pc); in bcma_core_pci_clientmode_init()
217 void bcma_core_pci_init(struct bcma_drv_pci *pc) in bcma_core_pci_init() argument
219 if (pc->setup_done) in bcma_core_pci_init()
223 pc->hostmode = bcma_core_pci_is_in_hostmode(pc); in bcma_core_pci_init()
224 if (pc->hostmode) in bcma_core_pci_init()
225 bcma_core_pci_hostmode_init(pc); in bcma_core_pci_init()
228 if (!pc->hostmode) in bcma_core_pci_init()
229 bcma_core_pci_clientmode_init(pc); in bcma_core_pci_init()
232 int bcma_core_pci_irq_ctl(struct bcma_drv_pci *pc, struct bcma_device *core, in bcma_core_pci_irq_ctl() argument
239 if (!pc || core->bus->hosttype != BCMA_HOSTTYPE_PCI) { in bcma_core_pci_irq_ctl()
246 pdev = pc->core->bus->host_pci; in bcma_core_pci_irq_ctl()
265 void bcma_core_pci_extend_L1timer(struct bcma_drv_pci *pc, bool extend) in bcma_core_pci_extend_L1timer() argument
269 w = bcma_pcie_read(pc, BCMA_CORE_PCI_DLLP_PMTHRESHREG); in bcma_core_pci_extend_L1timer()
274 bcma_pcie_write(pc, BCMA_CORE_PCI_DLLP_PMTHRESHREG, w); in bcma_core_pci_extend_L1timer()
275 bcma_pcie_read(pc, BCMA_CORE_PCI_DLLP_PMTHRESHREG); in bcma_core_pci_extend_L1timer()