Home
last modified time | relevance | path

Searched refs:ipc_pcie (Results 1 – 6 of 6) sorted by relevance

/linux-6.1.9/drivers/net/wwan/iosm/
Diosm_ipc_pcie.c22 static void ipc_pcie_resources_release(struct iosm_pcie *ipc_pcie) in ipc_pcie_resources_release() argument
25 ipc_release_irq(ipc_pcie); in ipc_pcie_resources_release()
28 iounmap(ipc_pcie->scratchpad); in ipc_pcie_resources_release()
31 iounmap(ipc_pcie->ipc_regs); in ipc_pcie_resources_release()
37 pci_release_regions(ipc_pcie->pci); in ipc_pcie_resources_release()
40 static void ipc_pcie_cleanup(struct iosm_pcie *ipc_pcie) in ipc_pcie_cleanup() argument
43 ipc_imem_cleanup(ipc_pcie->imem); in ipc_pcie_cleanup()
45 ipc_pcie_resources_release(ipc_pcie); in ipc_pcie_cleanup()
48 pci_disable_device(ipc_pcie->pci); in ipc_pcie_cleanup()
51 static void ipc_pcie_deinit(struct iosm_pcie *ipc_pcie) in ipc_pcie_deinit() argument
[all …]
Diosm_ipc_irq.c9 static void ipc_write_dbell_reg(struct iosm_pcie *ipc_pcie, int irq_n, u32 data) in ipc_write_dbell_reg() argument
16 write_reg = (void __iomem *)((u8 __iomem *)ipc_pcie->ipc_regs + in ipc_write_dbell_reg()
17 ipc_pcie->doorbell_write + in ipc_write_dbell_reg()
18 (irq_n * ipc_pcie->doorbell_reg_offset)); in ipc_write_dbell_reg()
26 void ipc_doorbell_fire(struct iosm_pcie *ipc_pcie, int irq_n, u32 data) in ipc_doorbell_fire() argument
28 ipc_write_dbell_reg(ipc_pcie, irq_n, data); in ipc_doorbell_fire()
34 struct iosm_pcie *ipc_pcie = dev_id; in ipc_msi_interrupt() local
35 int instance = irq - ipc_pcie->pci->irq; in ipc_msi_interrupt()
40 if (instance >= ipc_pcie->nvec) in ipc_msi_interrupt()
43 if (!test_bit(0, &ipc_pcie->suspend)) in ipc_msi_interrupt()
[all …]
Diosm_ipc_pcie.h121 int ipc_pcie_addr_map(struct iosm_pcie *ipc_pcie, unsigned char *data,
131 void ipc_pcie_addr_unmap(struct iosm_pcie *ipc_pcie, size_t size,
145 struct sk_buff *ipc_pcie_alloc_skb(struct iosm_pcie *ipc_pcie, size_t size,
157 struct sk_buff *ipc_pcie_alloc_local_skb(struct iosm_pcie *ipc_pcie,
165 void ipc_pcie_kfree_skb(struct iosm_pcie *ipc_pcie, struct sk_buff *skb);
173 bool ipc_pcie_check_data_link_active(struct iosm_pcie *ipc_pcie);
183 int ipc_pcie_suspend(struct iosm_pcie *ipc_pcie);
193 int ipc_pcie_resume(struct iosm_pcie *ipc_pcie);
202 bool ipc_pcie_check_aspm_enabled(struct iosm_pcie *ipc_pcie,
208 void ipc_pcie_config_aspm(struct iosm_pcie *ipc_pcie);
Diosm_ipc_irq.h17 void ipc_doorbell_fire(struct iosm_pcie *ipc_pcie, int irq_n, u32 data);
23 void ipc_release_irq(struct iosm_pcie *ipc_pcie);
31 int ipc_acquire_irq(struct iosm_pcie *ipc_pcie);
Diosm_ipc_pm.h10 #define ipc_cp_irq_sleep_control(ipc_pcie, data) \ argument
11 ipc_doorbell_fire(ipc_pcie, IPC_DOORBELL_IRQ_SLEEP, data)
14 #define ipc_cp_irq_hpda_update(ipc_pcie, data) \ argument
15 ipc_doorbell_fire(ipc_pcie, IPC_DOORBELL_IRQ_HPDA, 0xFF & (data))
Diosm_ipc_imem_ops.c116 struct iosm_pcie *ipc_pcie = ipc_imem->pcie; in ipc_imem_map_skb_to_dma() local
122 ret = ipc_pcie_addr_map(ipc_pcie, buf, len, &mapping, DMA_TO_DEVICE); in ipc_imem_map_skb_to_dma()