Home
last modified time | relevance | path

Searched refs:mhi_cntrl (Results 1 – 18 of 18) sorted by relevance

/Linux-v6.1/drivers/bus/mhi/host/
Dpm.c111 enum mhi_pm_state __must_check mhi_tryset_pm_state(struct mhi_controller *mhi_cntrl, in mhi_tryset_pm_state() argument
114 unsigned long cur_state = mhi_cntrl->pm_state; in mhi_tryset_pm_state()
126 mhi_cntrl->pm_state = state; in mhi_tryset_pm_state()
127 return mhi_cntrl->pm_state; in mhi_tryset_pm_state()
130 void mhi_set_mhi_state(struct mhi_controller *mhi_cntrl, enum mhi_state state) in mhi_set_mhi_state() argument
132 struct device *dev = &mhi_cntrl->mhi_dev->dev; in mhi_set_mhi_state()
136 ret = mhi_write_reg_field(mhi_cntrl, mhi_cntrl->regs, MHICTRL, in mhi_set_mhi_state()
139 ret = mhi_write_reg_field(mhi_cntrl, mhi_cntrl->regs, MHICTRL, in mhi_set_mhi_state()
149 static void mhi_toggle_dev_wake_nop(struct mhi_controller *mhi_cntrl) in mhi_toggle_dev_wake_nop() argument
153 static void mhi_toggle_dev_wake(struct mhi_controller *mhi_cntrl) in mhi_toggle_dev_wake() argument
[all …]
Dinit.c87 struct mhi_controller *mhi_cntrl = mhi_dev->mhi_cntrl; in serial_number_show() local
90 mhi_cntrl->serial_number); in serial_number_show()
99 struct mhi_controller *mhi_cntrl = mhi_dev->mhi_cntrl; in oem_pk_hash_show() local
102 for (i = 0; i < ARRAY_SIZE(mhi_cntrl->oem_pk_hash); i++) in oem_pk_hash_show()
104 i, mhi_cntrl->oem_pk_hash[i]); in oem_pk_hash_show()
116 struct mhi_controller *mhi_cntrl = mhi_dev->mhi_cntrl; in soc_reset_store() local
118 mhi_soc_reset(mhi_cntrl); in soc_reset_store()
132 static int mhi_alloc_aligned_ring(struct mhi_controller *mhi_cntrl, in mhi_alloc_aligned_ring() argument
137 ring->pre_aligned = dma_alloc_coherent(mhi_cntrl->cntrl_dev, ring->alloc_size, in mhi_alloc_aligned_ring()
148 void mhi_deinit_free_irq(struct mhi_controller *mhi_cntrl) in mhi_deinit_free_irq() argument
[all …]
Dboot.c22 int mhi_rddm_prepare(struct mhi_controller *mhi_cntrl, in mhi_rddm_prepare() argument
27 void __iomem *base = mhi_cntrl->bhie; in mhi_rddm_prepare()
28 struct device *dev = &mhi_cntrl->mhi_dev->dev; in mhi_rddm_prepare()
40 mhi_write_reg(mhi_cntrl, base, BHIE_RXVECADDR_HIGH_OFFS, in mhi_rddm_prepare()
43 mhi_write_reg(mhi_cntrl, base, BHIE_RXVECADDR_LOW_OFFS, in mhi_rddm_prepare()
46 mhi_write_reg(mhi_cntrl, base, BHIE_RXVECSIZE_OFFS, mhi_buf->len); in mhi_rddm_prepare()
49 ret = mhi_write_reg_field(mhi_cntrl, base, BHIE_RXVECDB_OFFS, in mhi_rddm_prepare()
63 static int __mhi_download_rddm_in_panic(struct mhi_controller *mhi_cntrl) in __mhi_download_rddm_in_panic() argument
69 u32 retry = (mhi_cntrl->timeout_ms * 1000) / delayus; in __mhi_download_rddm_in_panic()
72 void __iomem *base = mhi_cntrl->bhie; in __mhi_download_rddm_in_panic()
[all …]
Dmain.c19 int __must_check mhi_read_reg(struct mhi_controller *mhi_cntrl, in mhi_read_reg() argument
22 return mhi_cntrl->read_reg(mhi_cntrl, base + offset, out); in mhi_read_reg()
25 int __must_check mhi_read_reg_field(struct mhi_controller *mhi_cntrl, in mhi_read_reg_field() argument
32 ret = mhi_read_reg(mhi_cntrl, base, offset, &tmp); in mhi_read_reg_field()
41 int __must_check mhi_poll_reg_field(struct mhi_controller *mhi_cntrl, in mhi_poll_reg_field() argument
46 u32 out, retry = (mhi_cntrl->timeout_ms * 1000) / delayus; in mhi_poll_reg_field()
49 ret = mhi_read_reg_field(mhi_cntrl, base, offset, mask, &out); in mhi_poll_reg_field()
62 void mhi_write_reg(struct mhi_controller *mhi_cntrl, void __iomem *base, in mhi_write_reg() argument
65 mhi_cntrl->write_reg(mhi_cntrl, base + offset, val); in mhi_write_reg()
68 int __must_check mhi_write_reg_field(struct mhi_controller *mhi_cntrl, in mhi_write_reg_field() argument
[all …]
Ddebugfs.c17 struct mhi_controller *mhi_cntrl = m->private; in mhi_debugfs_states_show() local
21 to_mhi_pm_state_str(mhi_cntrl->pm_state), in mhi_debugfs_states_show()
22 mhi_is_active(mhi_cntrl) ? "Active" : "Inactive", in mhi_debugfs_states_show()
23 mhi_state_str(mhi_cntrl->dev_state), in mhi_debugfs_states_show()
24 TO_MHI_EXEC_STR(mhi_cntrl->ee), in mhi_debugfs_states_show()
25 mhi_cntrl->wake_set ? "true" : "false"); in mhi_debugfs_states_show()
28 seq_printf(m, "M0: %u M2: %u M3: %u", mhi_cntrl->M0, mhi_cntrl->M2, in mhi_debugfs_states_show()
29 mhi_cntrl->M3); in mhi_debugfs_states_show()
32 atomic_read(&mhi_cntrl->dev_wake), in mhi_debugfs_states_show()
33 atomic_read(&mhi_cntrl->pending_pkts)); in mhi_debugfs_states_show()
[all …]
Dinternal.h117 #define MHI_DB_ACCESS_VALID(mhi_cntrl) (mhi_cntrl->pm_state & mhi_cntrl->db_access) argument
145 void (*process_db)(struct mhi_controller *mhi_cntrl,
193 struct mhi_controller *mhi_cntrl; member
205 int (*process_event)(struct mhi_controller *mhi_cntrl,
249 void mhi_create_debugfs(struct mhi_controller *mhi_cntrl);
250 void mhi_destroy_debugfs(struct mhi_controller *mhi_cntrl);
254 static inline void mhi_create_debugfs(struct mhi_controller *mhi_cntrl) in mhi_create_debugfs() argument
258 static inline void mhi_destroy_debugfs(struct mhi_controller *mhi_cntrl) in mhi_destroy_debugfs() argument
271 struct mhi_device *mhi_alloc_device(struct mhi_controller *mhi_cntrl);
274 void mhi_create_devices(struct mhi_controller *mhi_cntrl);
[all …]
Dpci_generic.c607 struct mhi_controller mhi_cntrl; member
614 static int mhi_pci_read_reg(struct mhi_controller *mhi_cntrl, in mhi_pci_read_reg() argument
621 static void mhi_pci_write_reg(struct mhi_controller *mhi_cntrl, in mhi_pci_write_reg() argument
627 static void mhi_pci_status_cb(struct mhi_controller *mhi_cntrl, in mhi_pci_status_cb() argument
630 struct pci_dev *pdev = to_pci_dev(mhi_cntrl->cntrl_dev); in mhi_pci_status_cb()
647 static void mhi_pci_wake_get_nop(struct mhi_controller *mhi_cntrl, bool force) in mhi_pci_wake_get_nop() argument
652 static void mhi_pci_wake_put_nop(struct mhi_controller *mhi_cntrl, bool override) in mhi_pci_wake_put_nop() argument
657 static void mhi_pci_wake_toggle_nop(struct mhi_controller *mhi_cntrl) in mhi_pci_wake_toggle_nop() argument
662 static bool mhi_pci_is_alive(struct mhi_controller *mhi_cntrl) in mhi_pci_is_alive() argument
664 struct pci_dev *pdev = to_pci_dev(mhi_cntrl->cntrl_dev); in mhi_pci_is_alive()
[all …]
/Linux-v6.1/drivers/bus/mhi/ep/
Dmmio.c13 u32 mhi_ep_mmio_read(struct mhi_ep_cntrl *mhi_cntrl, u32 offset) in mhi_ep_mmio_read() argument
15 return readl(mhi_cntrl->mmio + offset); in mhi_ep_mmio_read()
18 void mhi_ep_mmio_write(struct mhi_ep_cntrl *mhi_cntrl, u32 offset, u32 val) in mhi_ep_mmio_write() argument
20 writel(val, mhi_cntrl->mmio + offset); in mhi_ep_mmio_write()
23 void mhi_ep_mmio_masked_write(struct mhi_ep_cntrl *mhi_cntrl, u32 offset, u32 mask, u32 val) in mhi_ep_mmio_masked_write() argument
27 regval = mhi_ep_mmio_read(mhi_cntrl, offset); in mhi_ep_mmio_masked_write()
30 mhi_ep_mmio_write(mhi_cntrl, offset, regval); in mhi_ep_mmio_masked_write()
44 void mhi_ep_mmio_get_mhi_state(struct mhi_ep_cntrl *mhi_cntrl, enum mhi_state *state, in mhi_ep_mmio_get_mhi_state() argument
49 regval = mhi_ep_mmio_read(mhi_cntrl, EP_MHICTRL); in mhi_ep_mmio_get_mhi_state()
54 static void mhi_ep_mmio_set_chdb(struct mhi_ep_cntrl *mhi_cntrl, u32 ch_id, bool enable) in mhi_ep_mmio_set_chdb() argument
[all …]
Dmain.c25 static int mhi_ep_create_device(struct mhi_ep_cntrl *mhi_cntrl, u32 ch_id);
28 static int mhi_ep_send_event(struct mhi_ep_cntrl *mhi_cntrl, u32 ring_idx, in mhi_ep_send_event() argument
31 struct device *dev = &mhi_cntrl->mhi_dev->dev; in mhi_ep_send_event()
36 mutex_lock(&mhi_cntrl->event_lock); in mhi_ep_send_event()
37 ring = &mhi_cntrl->mhi_event[ring_idx].ring; in mhi_ep_send_event()
38 ctx = (union mhi_ep_ring_ctx *)&mhi_cntrl->ev_ctx_cache[ring_idx]; in mhi_ep_send_event()
40 ret = mhi_ep_ring_start(mhi_cntrl, ring, ctx); in mhi_ep_send_event()
54 mutex_unlock(&mhi_cntrl->event_lock); in mhi_ep_send_event()
61 mhi_cntrl->raise_irq(mhi_cntrl, ring->irq_vector); in mhi_ep_send_event()
66 mutex_unlock(&mhi_cntrl->event_lock); in mhi_ep_send_event()
[all …]
Dsm.c11 bool __must_check mhi_ep_check_mhi_state(struct mhi_ep_cntrl *mhi_cntrl, in mhi_ep_check_mhi_state() argument
30 int mhi_ep_set_mhi_state(struct mhi_ep_cntrl *mhi_cntrl, enum mhi_state mhi_state) in mhi_ep_set_mhi_state() argument
32 struct device *dev = &mhi_cntrl->mhi_dev->dev; in mhi_ep_set_mhi_state()
34 if (!mhi_ep_check_mhi_state(mhi_cntrl, mhi_cntrl->mhi_state, mhi_state)) { in mhi_ep_set_mhi_state()
37 mhi_state_str(mhi_cntrl->mhi_state)); in mhi_ep_set_mhi_state()
47 mhi_ep_mmio_masked_write(mhi_cntrl, EP_MHISTATUS, MHISTATUS_MHISTATE_MASK, mhi_state); in mhi_ep_set_mhi_state()
48 mhi_cntrl->mhi_state = mhi_state; in mhi_ep_set_mhi_state()
51 mhi_ep_mmio_masked_write(mhi_cntrl, EP_MHISTATUS, MHISTATUS_READY_MASK, 1); in mhi_ep_set_mhi_state()
54 mhi_ep_mmio_masked_write(mhi_cntrl, EP_MHISTATUS, MHISTATUS_SYSERR_MASK, 1); in mhi_ep_set_mhi_state()
59 int mhi_ep_set_m0_state(struct mhi_ep_cntrl *mhi_cntrl) in mhi_ep_set_m0_state() argument
[all …]
Dinternal.h125 struct mhi_ep_cntrl *mhi_cntrl; member
171 void mhi_ep_ring_reset(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_ring *ring);
172 int mhi_ep_ring_start(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_ring *ring,
180 u32 mhi_ep_mmio_read(struct mhi_ep_cntrl *mhi_cntrl, u32 offset);
181 void mhi_ep_mmio_write(struct mhi_ep_cntrl *mhi_cntrl, u32 offset, u32 val);
182 void mhi_ep_mmio_masked_write(struct mhi_ep_cntrl *mhi_cntrl, u32 offset, u32 mask, u32 val);
184 void mhi_ep_mmio_enable_ctrl_interrupt(struct mhi_ep_cntrl *mhi_cntrl);
185 void mhi_ep_mmio_disable_ctrl_interrupt(struct mhi_ep_cntrl *mhi_cntrl);
186 void mhi_ep_mmio_enable_cmdb_interrupt(struct mhi_ep_cntrl *mhi_cntrl);
187 void mhi_ep_mmio_disable_cmdb_interrupt(struct mhi_ep_cntrl *mhi_cntrl);
[all …]
Dring.c31 struct mhi_ep_cntrl *mhi_cntrl = ring->mhi_cntrl; in __mhi_ep_cache_ring() local
32 struct device *dev = &mhi_cntrl->mhi_dev->dev; in __mhi_ep_cache_ring()
47 ret = mhi_cntrl->read_from_host(mhi_cntrl, ring->rbase + in __mhi_ep_cache_ring()
54 ret = mhi_cntrl->read_from_host(mhi_cntrl, ring->rbase + in __mhi_ep_cache_ring()
61 ret = mhi_cntrl->read_from_host(mhi_cntrl, ring->rbase, in __mhi_ep_cache_ring()
103 struct mhi_ep_cntrl *mhi_cntrl = ring->mhi_cntrl; in mhi_ep_ring_add_element() local
104 struct device *dev = &mhi_cntrl->mhi_dev->dev; in mhi_ep_ring_add_element()
136 ret = mhi_cntrl->write_to_host(mhi_cntrl, el, ring->rbase + (old_offset * sizeof(*el)), in mhi_ep_ring_add_element()
160 int mhi_ep_ring_start(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_ring *ring, in mhi_ep_ring_start() argument
163 struct device *dev = &mhi_cntrl->mhi_dev->dev; in mhi_ep_ring_start()
[all …]
/Linux-v6.1/include/linux/
Dmhi.h431 void (*status_cb)(struct mhi_controller *mhi_cntrl,
433 void (*wake_get)(struct mhi_controller *mhi_cntrl, bool override);
434 void (*wake_put)(struct mhi_controller *mhi_cntrl, bool override);
435 void (*wake_toggle)(struct mhi_controller *mhi_cntrl);
436 int (*runtime_get)(struct mhi_controller *mhi_cntrl);
437 void (*runtime_put)(struct mhi_controller *mhi_cntrl);
438 int (*map_single)(struct mhi_controller *mhi_cntrl,
440 void (*unmap_single)(struct mhi_controller *mhi_cntrl,
442 int (*read_reg)(struct mhi_controller *mhi_cntrl, void __iomem *addr,
444 void (*write_reg)(struct mhi_controller *mhi_cntrl, void __iomem *addr,
[all …]
Dmhi_ep.h132 void (*raise_irq)(struct mhi_ep_cntrl *mhi_cntrl, u32 vector);
133 int (*alloc_map)(struct mhi_ep_cntrl *mhi_cntrl, u64 pci_addr, phys_addr_t *phys_ptr,
135 void (*unmap_free)(struct mhi_ep_cntrl *mhi_cntrl, u64 pci_addr, phys_addr_t phys,
137 int (*read_from_host)(struct mhi_ep_cntrl *mhi_cntrl, u64 from, void *to, size_t size);
138 int (*write_to_host)(struct mhi_ep_cntrl *mhi_cntrl, void *from, u64 to, size_t size);
166 struct mhi_ep_cntrl *mhi_cntrl; member
236 int mhi_ep_register_controller(struct mhi_ep_cntrl *mhi_cntrl,
243 void mhi_ep_unregister_controller(struct mhi_ep_cntrl *mhi_cntrl);
251 int mhi_ep_power_up(struct mhi_ep_cntrl *mhi_cntrl);
257 void mhi_ep_power_down(struct mhi_ep_cntrl *mhi_cntrl);
/Linux-v6.1/drivers/net/wireless/ath/ath11k/
Dmhi.c288 static int ath11k_mhi_op_runtime_get(struct mhi_controller *mhi_cntrl) in ath11k_mhi_op_runtime_get() argument
293 static void ath11k_mhi_op_runtime_put(struct mhi_controller *mhi_cntrl) in ath11k_mhi_op_runtime_put() argument
323 static void ath11k_mhi_op_status_cb(struct mhi_controller *mhi_cntrl, in ath11k_mhi_op_status_cb() argument
326 struct ath11k_base *ab = dev_get_drvdata(mhi_cntrl->cntrl_dev); in ath11k_mhi_op_status_cb()
344 static int ath11k_mhi_op_read_reg(struct mhi_controller *mhi_cntrl, in ath11k_mhi_op_read_reg() argument
353 static void ath11k_mhi_op_write_reg(struct mhi_controller *mhi_cntrl, in ath11k_mhi_op_write_reg() argument
/Linux-v6.1/drivers/net/wwan/
Dmhi_wwan_mbim.c597 struct mhi_controller *cntrl = mhi_dev->mhi_cntrl; in mhi_mbim_probe()
608 mbim->mru = mhi_dev->mhi_cntrl->mru ? mhi_dev->mhi_cntrl->mru : MHI_DEFAULT_MRU; in mhi_mbim_probe()
627 struct mhi_controller *cntrl = mhi_dev->mhi_cntrl; in mhi_mbim_remove()
Dmhi_wwan_ctrl.c217 struct mhi_controller *cntrl = mhi_dev->mhi_cntrl; in mhi_wwan_ctrl_probe()
/Linux-v6.1/drivers/net/
Dmhi_net.c315 mhi_netdev->mru = mhi_dev->mhi_cntrl->mru; in mhi_net_newlink()