Home
last modified time | relevance | path

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

12

/linux-6.15/drivers/bus/mhi/host/
H A Dpm.c165 mhi_cntrl->wake_get(mhi_cntrl, false); in mhi_toggle_dev_wake()
166 mhi_cntrl->wake_put(mhi_cntrl, true); in mhi_toggle_dev_wake()
281 mhi_cntrl->wake_get(mhi_cntrl, true); in mhi_pm_m0_transition()
325 mhi_cntrl->wake_put(mhi_cntrl, false); in mhi_pm_m0_transition()
361 mhi_cntrl->wake_get(mhi_cntrl, true); in mhi_pm_m1_transition()
362 mhi_cntrl->wake_put(mhi_cntrl, true); in mhi_pm_m1_transition()
464 mhi_cntrl->wake_put(mhi_cntrl, false); in mhi_pm_mission_mode_transition()
865 mhi_cntrl->wake_get(mhi_cntrl, false); in mhi_pm_suspend()
875 mhi_cntrl->wake_put(mhi_cntrl, false); in mhi_pm_suspend()
1019 mhi_cntrl->wake_get(mhi_cntrl, true); in __mhi_device_get_sync()
[all …]
H A Dinit.c86 struct mhi_controller *mhi_cntrl = mhi_dev->mhi_cntrl; in serial_number_show() local
146 ret = mhi_cntrl->edl_trigger(mhi_cntrl); in trigger_edl_store()
191 free_irq(mhi_cntrl->irq[0], mhi_cntrl); in mhi_deinit_free_irq()
252 free_irq(mhi_cntrl->irq[0], mhi_cntrl); in mhi_init_irq_setup()
941 if (!mhi_cntrl || !mhi_cntrl->cntrl_dev || !mhi_cntrl->regs || in mhi_register_controller()
945 !mhi_cntrl->irq || !mhi_cntrl->reg_len) in mhi_register_controller()
984 mhi_event->mhi_cntrl = mhi_cntrl; in mhi_register_controller()
1032 mhi_dev->mhi_cntrl = mhi_cntrl; in mhi_register_controller()
1145 mhi_cntrl->bhi = mhi_cntrl->regs + bhi_off; in mhi_prepare_for_power_up()
1147 if (mhi_cntrl->fbc_download || mhi_cntrl->rddm_size || mhi_cntrl->seg_len) { in mhi_prepare_for_power_up()
[all …]
H A Dboot.c121 mhi_soc_reset(mhi_cntrl); in __mhi_download_rddm_in_panic()
449 if (mhi_cntrl->seg_len) in mhi_fw_load_type_get()
508 ret = mhi_read_reg(mhi_cntrl, mhi_cntrl->bhi, BHI_SERIALNU, in mhi_fw_load_handler()
518 mhi_cntrl->edl_image : mhi_cntrl->fw_image; in mhi_fw_load_handler()
522 mhi_cntrl->fw_data && mhi_cntrl->fw_sz) { in mhi_fw_load_handler()
530 fw_sz = mhi_cntrl->fw_sz; in mhi_fw_load_handler()
534 if (!fw_name || (mhi_cntrl->fbc_download && (!mhi_cntrl->sbl_size || in mhi_fw_load_handler()
547 size = (mhi_cntrl->fbc_download) ? mhi_cntrl->sbl_size : firmware->size; in mhi_fw_load_handler()
587 ret = mhi_alloc_bhie_table(mhi_cntrl, &mhi_cntrl->fbc_image, fw_sz); in mhi_fw_load_handler()
594 mhi_firmware_copy_bhie(mhi_cntrl, fw_data, fw_sz, mhi_cntrl->fbc_image); in mhi_fw_load_handler()
[all …]
H A Dmain.c23 return mhi_cntrl->read_reg(mhi_cntrl, base + offset, out); in mhi_read_reg()
67 mhi_cntrl->write_reg(mhi_cntrl, base + offset, val); in mhi_write_reg()
174 mhi_cntrl->reset(mhi_cntrl); in mhi_soc_reset()
288 mhi_cntrl = mhi_dev->mhi_cntrl; in mhi_destroy_device()
653 mhi_cntrl->runtime_put(mhi_cntrl); in parse_xfer_event()
1147 mhi_cntrl->runtime_get(mhi_cntrl); in mhi_queue()
1150 mhi_cntrl->wake_toggle(mhi_cntrl); in mhi_queue()
1159 mhi_cntrl->runtime_put(mhi_cntrl); in mhi_queue()
1366 mhi_cntrl->runtime_get(mhi_cntrl); in mhi_update_channel_state()
1397 mhi_cntrl->runtime_put(mhi_cntrl); in mhi_update_channel_state()
[all …]
H A Ddebugfs.c24 TO_MHI_EXEC_STR(mhi_cntrl->ee), 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()
45 if (!mhi_is_active(mhi_cntrl)) { in mhi_debugfs_events_show()
51 mhi_event = mhi_cntrl->mhi_event; in mhi_debugfs_events_show()
88 if (!mhi_is_active(mhi_cntrl)) { in mhi_debugfs_channels_show()
93 mhi_chan = mhi_cntrl->mhi_chan; in mhi_debugfs_channels_show()
157 if (!mhi_is_active(mhi_cntrl)) { in mhi_debugfs_devices_show()
213 ee = mhi_get_exec_env(mhi_cntrl); in mhi_debugfs_regdump_show()
236 if (!mhi_is_active(mhi_cntrl)) { in mhi_debugfs_device_wake_show()
[all …]
H A Dinternal.h164 #define MHI_DB_ACCESS_VALID(mhi_cntrl) (mhi_cntrl->pm_state & mhi_cntrl->db_access) argument
192 void (*process_db)(struct mhi_controller *mhi_cntrl,
240 struct mhi_controller *mhi_cntrl; member
330 struct mhi_controller *mhi_cntrl,
347 return (mhi_cntrl->dev_state >= MHI_STATE_M0 && in mhi_is_active()
348 mhi_cntrl->dev_state <= MHI_STATE_M3_FAST); in mhi_is_active()
353 pm_wakeup_event(&mhi_cntrl->mhi_dev->dev, 0); in mhi_trigger_resume()
354 mhi_cntrl->runtime_get(mhi_cntrl); in mhi_trigger_resume()
355 mhi_cntrl->runtime_put(mhi_cntrl); in mhi_trigger_resume()
385 int mhi_init_mmio(struct mhi_controller *mhi_cntrl);
[all …]
H A Dpci_generic.c1093 struct mhi_controller *mhi_cntrl = &mhi_pdev->mhi_cntrl; in mhi_pci_recovery_work() local
1140 struct mhi_controller *mhi_cntrl = &mhi_pdev->mhi_cntrl; in health_check() local
1170 mhi_cntrl->runtime_get(mhi_cntrl); in mhi_pci_generic_edl_trigger()
1184 mhi_cntrl->runtime_put(mhi_cntrl); in mhi_pci_generic_edl_trigger()
1209 mhi_cntrl = &mhi_pdev->mhi_cntrl; in mhi_pci_probe()
1294 struct mhi_controller *mhi_cntrl = &mhi_pdev->mhi_cntrl; in mhi_pci_remove() local
1320 struct mhi_controller *mhi_cntrl = &mhi_pdev->mhi_cntrl; in mhi_pci_reset_prepare() local
1342 struct mhi_controller *mhi_cntrl = &mhi_pdev->mhi_cntrl; in mhi_pci_reset_done() local
1376 struct mhi_controller *mhi_cntrl = &mhi_pdev->mhi_cntrl; in mhi_pci_error_detected() local
1428 struct mhi_controller *mhi_cntrl = &mhi_pdev->mhi_cntrl; in mhi_pci_runtime_suspend() local
[all …]
H A Dtrace.h95 TP_ARGS(mhi_cntrl, mhi_chan, mhi_tre),
98 __string(name, mhi_cntrl->mhi_dev->name)
124 TP_ARGS(mhi_cntrl, dev_ee, dev_state),
127 __string(name, mhi_cntrl->mhi_dev->name)
136 __entry->local_ee = mhi_cntrl->ee;
137 __entry->state = mhi_cntrl->dev_state;
154 TP_ARGS(mhi_cntrl, pm_state),
176 TP_ARGS(mhi_cntrl, rp),
205 TP_ARGS(mhi_cntrl, rp)
212 TP_ARGS(mhi_cntrl, rp)
[all …]
/linux-6.15/drivers/bus/mhi/ep/
H A Dmmio.c15 return readl(mhi_cntrl->mmio + offset); in mhi_ep_mmio_read()
20 writel(val, mhi_cntrl->mmio + offset); in mhi_ep_mmio_write()
89 mhi_cntrl->chdb[i].mask = val; in mhi_ep_mmio_set_chdb_interrupts()
109 mhi_cntrl->chdb[i].status = mhi_ep_mmio_read(mhi_cntrl, MHI_CHDB_INT_STATUS_n(i)); in mhi_ep_mmio_read_chdb_status_interrupts()
110 if (mhi_cntrl->chdb[i].status) in mhi_ep_mmio_read_chdb_status_interrupts()
189 mhi_cntrl->ch_ctx_host_pa <<= 32; in mhi_ep_mmio_get_chc_base()
201 mhi_cntrl->ev_ctx_host_pa <<= 32; in mhi_ep_mmio_get_erc_base()
221 struct mhi_ep_cntrl *mhi_cntrl = ring->mhi_cntrl; in mhi_ep_mmio_get_db() local
256 mhi_cntrl->chdb_offset = mhi_ep_mmio_read(mhi_cntrl, EP_CHDBOFF); in mhi_ep_mmio_init()
257 mhi_cntrl->erdb_offset = mhi_ep_mmio_read(mhi_cntrl, EP_ERDBOFF); in mhi_ep_mmio_init()
[all …]
H A Dmain.c652 ret = mhi_cntrl->alloc_map(mhi_cntrl, mhi_cntrl->ch_ctx_host_pa, in mhi_ep_cache_host_cfg()
665 ret = mhi_cntrl->alloc_map(mhi_cntrl, mhi_cntrl->ev_ctx_host_pa, in mhi_ep_cache_host_cfg()
698 mhi_cntrl->unmap_free(mhi_cntrl, mhi_cntrl->cmd_ctx_host_pa, mhi_cntrl->cmd_ctx_cache_phys, in mhi_ep_cache_host_cfg()
702 mhi_cntrl->unmap_free(mhi_cntrl, mhi_cntrl->ev_ctx_host_pa, mhi_cntrl->ev_ctx_cache_phys, in mhi_ep_cache_host_cfg()
706 mhi_cntrl->unmap_free(mhi_cntrl, mhi_cntrl->ch_ctx_host_pa, mhi_cntrl->ch_ctx_cache_phys, in mhi_ep_cache_host_cfg()
720 mhi_cntrl->unmap_free(mhi_cntrl, mhi_cntrl->cmd_ctx_host_pa, mhi_cntrl->cmd_ctx_cache_phys, in mhi_ep_free_host_cfg()
723 mhi_cntrl->unmap_free(mhi_cntrl, mhi_cntrl->ev_ctx_host_pa, mhi_cntrl->ev_ctx_cache_phys, in mhi_ep_free_host_cfg()
726 mhi_cntrl->unmap_free(mhi_cntrl, mhi_cntrl->ch_ctx_host_pa, mhi_cntrl->ch_ctx_cache_phys, in mhi_ep_free_host_cfg()
1309 mhi_dev->mhi_cntrl = mhi_cntrl; in mhi_ep_alloc_device()
1377 mhi_cntrl = mhi_dev->mhi_cntrl; in mhi_ep_destroy_device()
[all …]
H A Dsm.c34 if (!mhi_ep_check_mhi_state(mhi_cntrl, mhi_cntrl->mhi_state, mhi_state)) { in mhi_ep_set_mhi_state()
48 mhi_cntrl->mhi_state = mhi_state; in mhi_ep_set_mhi_state()
66 mutex_lock(&mhi_cntrl->state_lock); in mhi_ep_set_m0_state()
68 old_state = mhi_cntrl->mhi_state; in mhi_ep_set_m0_state()
70 mhi_ep_resume_channels(mhi_cntrl); in mhi_ep_set_m0_state()
74 mhi_ep_handle_syserr(mhi_cntrl); in mhi_ep_set_m0_state()
105 mutex_lock(&mhi_cntrl->state_lock); in mhi_ep_set_m3_state()
109 mhi_ep_handle_syserr(mhi_cntrl); in mhi_ep_set_m3_state()
113 mhi_ep_suspend_channels(mhi_cntrl); in mhi_ep_set_m3_state()
134 mutex_lock(&mhi_cntrl->state_lock); in mhi_ep_set_ready_state()
[all …]
H A Dinternal.h125 struct mhi_ep_cntrl *mhi_cntrl; member
202 void mhi_ep_mmio_clear_reset(struct mhi_ep_cntrl *mhi_cntrl);
203 void mhi_ep_mmio_reset(struct mhi_ep_cntrl *mhi_cntrl);
206 void mhi_ep_mmio_init(struct mhi_ep_cntrl *mhi_cntrl);
207 void mhi_ep_mmio_update_ner(struct mhi_ep_cntrl *mhi_cntrl);
215 int mhi_ep_set_m0_state(struct mhi_ep_cntrl *mhi_cntrl);
216 int mhi_ep_set_m3_state(struct mhi_ep_cntrl *mhi_cntrl);
217 int mhi_ep_set_ready_state(struct mhi_ep_cntrl *mhi_cntrl);
218 void mhi_ep_handle_syserr(struct mhi_ep_cntrl *mhi_cntrl);
219 void mhi_ep_resume_channels(struct mhi_ep_cntrl *mhi_cntrl);
[all …]
H A 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()
51 ret = mhi_cntrl->read_sync(mhi_cntrl, &buf_info); in __mhi_ep_cache_ring()
59 ret = mhi_cntrl->read_sync(mhi_cntrl, &buf_info); in __mhi_ep_cache_ring()
68 ret = mhi_cntrl->read_sync(mhi_cntrl, &buf_info); in __mhi_ep_cache_ring()
108 struct mhi_ep_cntrl *mhi_cntrl = ring->mhi_cntrl; in mhi_ep_ring_add_element() local
109 struct device *dev = &mhi_cntrl->mhi_dev->dev; in mhi_ep_ring_add_element()
146 return mhi_cntrl->write_sync(mhi_cntrl, &buf_info); in mhi_ep_ring_add_element()
168 struct mhi_ep_cntrl *mhi_cntrl = ring->mhi_cntrl; in mhi_ep_raise_irq() local
170 mhi_cntrl->raise_irq(mhi_cntrl, ring->irq_vector); in mhi_ep_raise_irq()
[all …]
/linux-6.15/include/linux/
H A Dmhi.h425 void (*status_cb)(struct mhi_controller *mhi_cntrl,
429 void (*wake_toggle)(struct mhi_controller *mhi_cntrl);
430 int (*runtime_get)(struct mhi_controller *mhi_cntrl);
431 void (*runtime_put)(struct mhi_controller *mhi_cntrl);
432 int (*map_single)(struct mhi_controller *mhi_cntrl,
440 void (*reset)(struct mhi_controller *mhi_cntrl);
441 int (*edl_trigger)(struct mhi_controller *mhi_cntrl);
469 struct mhi_controller *mhi_cntrl; member
669 int mhi_pm_suspend(struct mhi_controller *mhi_cntrl);
675 int mhi_pm_resume(struct mhi_controller *mhi_cntrl);
[all …]
H A Dmhi_ep.h158 void (*raise_irq)(struct mhi_ep_cntrl *mhi_cntrl, u32 vector);
159 int (*alloc_map)(struct mhi_ep_cntrl *mhi_cntrl, u64 pci_addr, phys_addr_t *phys_ptr,
161 void (*unmap_free)(struct mhi_ep_cntrl *mhi_cntrl, u64 pci_addr, phys_addr_t phys,
163 int (*read_sync)(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_buf_info *buf_info);
164 int (*write_sync)(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_buf_info *buf_info);
165 int (*read_async)(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_buf_info *buf_info);
194 struct mhi_ep_cntrl *mhi_cntrl; member
264 int mhi_ep_register_controller(struct mhi_ep_cntrl *mhi_cntrl,
271 void mhi_ep_unregister_controller(struct mhi_ep_cntrl *mhi_cntrl);
279 int mhi_ep_power_up(struct mhi_ep_cntrl *mhi_cntrl);
[all …]
/linux-6.15/drivers/accel/qaic/
H A Dmhi_controller.c851 mhi_soc_reset(mhi_cntrl); in mhi_reset_and_async_power_up()
878 mhi_cntrl = devm_kzalloc(&pci_dev->dev, sizeof(*mhi_cntrl), GFP_KERNEL); in qaic_mhi_register_controller()
879 if (!mhi_cntrl) in qaic_mhi_register_controller()
889 mhi_cntrl->iova_start = 0; in qaic_mhi_register_controller()
896 mhi_cntrl->regs = mhi_bar; in qaic_mhi_register_controller()
897 mhi_cntrl->reg_len = SZ_4K; in qaic_mhi_register_controller()
898 mhi_cntrl->nr_irqs = 1; in qaic_mhi_register_controller()
899 mhi_cntrl->irq = devm_kmalloc(&pci_dev->dev, sizeof(*mhi_cntrl->irq), GFP_KERNEL); in qaic_mhi_register_controller()
901 if (!mhi_cntrl->irq) in qaic_mhi_register_controller()
904 mhi_cntrl->irq[0] = mhi_irq; in qaic_mhi_register_controller()
[all …]
H A Dmhi_controller.h12 void qaic_mhi_free_controller(struct mhi_controller *mhi_cntrl, bool link_up);
13 void qaic_mhi_start_reset(struct mhi_controller *mhi_cntrl);
14 void qaic_mhi_reset_done(struct mhi_controller *mhi_cntrl);
H A Dqaic_drv.c330 qdev = pci_get_drvdata(to_pci_dev(mhi_dev->mhi_cntrl->cntrl_dev)); in qaic_mhi_probe()
578 qdev->mhi_cntrl = qaic_mhi_register_controller(pdev, qdev->bar_mhi, mhi_irq, in qaic_pci_probe()
580 if (IS_ERR(qdev->mhi_cntrl)) { in qaic_pci_probe()
581 ret = PTR_ERR(qdev->mhi_cntrl); in qaic_pci_probe()
597 qaic_mhi_free_controller(qdev->mhi_cntrl, link_up); in qaic_pci_remove()
618 qaic_mhi_start_reset(qdev->mhi_cntrl); in qaic_pci_reset_prepare()
626 qaic_mhi_reset_done(qdev->mhi_cntrl); in qaic_pci_reset_done()
H A Dqaic_timesync.c176 struct qaic_device *qdev = pci_get_drvdata(to_pci_dev(mhi_dev->mhi_cntrl->cntrl_dev)); in qaic_timesync_probe()
326 struct qaic_device *qdev = pci_get_drvdata(to_pci_dev(mhi_dev->mhi_cntrl->cntrl_dev)); in qaic_boot_timesync_probe()
H A Dqaic.h127 struct mhi_controller *mhi_cntrl; member
/linux-6.15/drivers/pci/endpoint/functions/
H A Dpci-epf-mhi.c773 struct mhi_ep_cntrl *mhi_cntrl = &epf_mhi->mhi_cntrl; in pci_epf_mhi_epc_deinit() local
776 if (mhi_cntrl->mhi_dev) { in pci_epf_mhi_epc_deinit()
790 struct mhi_ep_cntrl *mhi_cntrl = &epf_mhi->mhi_cntrl; in pci_epf_mhi_link_up() local
804 mhi_cntrl->read_sync = mhi_cntrl->read_async = pci_epf_mhi_iatu_read; in pci_epf_mhi_link_up()
805 mhi_cntrl->write_sync = mhi_cntrl->write_async = pci_epf_mhi_iatu_write; in pci_epf_mhi_link_up()
829 struct mhi_ep_cntrl *mhi_cntrl = &epf_mhi->mhi_cntrl; in pci_epf_mhi_link_down() local
831 if (mhi_cntrl->mhi_dev) { in pci_epf_mhi_link_down()
845 struct mhi_ep_cntrl *mhi_cntrl = &epf_mhi->mhi_cntrl; in pci_epf_mhi_bus_master_enable() local
853 if (!mhi_cntrl->enabled && mhi_cntrl->mhi_dev) { in pci_epf_mhi_bus_master_enable()
905 struct mhi_ep_cntrl *mhi_cntrl = &epf_mhi->mhi_cntrl; in pci_epf_mhi_unbind() local
[all …]
/linux-6.15/drivers/net/wireless/ath/ath11k/
H A Dmhi.c233 static int ath11k_mhi_op_runtime_get(struct mhi_controller *mhi_cntrl) in ath11k_mhi_op_runtime_get() argument
238 static void ath11k_mhi_op_runtime_put(struct mhi_controller *mhi_cntrl) in ath11k_mhi_op_runtime_put() argument
268 static void ath11k_mhi_op_status_cb(struct mhi_controller *mhi_cntrl, in ath11k_mhi_op_status_cb() argument
271 struct ath11k_base *ab = dev_get_drvdata(mhi_cntrl->cntrl_dev); in ath11k_mhi_op_status_cb()
300 static int ath11k_mhi_op_read_reg(struct mhi_controller *mhi_cntrl, in ath11k_mhi_op_read_reg() argument
309 static void ath11k_mhi_op_write_reg(struct mhi_controller *mhi_cntrl, in ath11k_mhi_op_write_reg() argument
/linux-6.15/drivers/net/wireless/ath/ath12k/
H A Dmhi.c233 static int ath12k_mhi_op_runtime_get(struct mhi_controller *mhi_cntrl) in ath12k_mhi_op_runtime_get() argument
238 static void ath12k_mhi_op_runtime_put(struct mhi_controller *mhi_cntrl) in ath12k_mhi_op_runtime_put() argument
268 static void ath12k_mhi_op_status_cb(struct mhi_controller *mhi_cntrl, in ath12k_mhi_op_status_cb() argument
271 struct ath12k_base *ab = dev_get_drvdata(mhi_cntrl->cntrl_dev); in ath12k_mhi_op_status_cb()
298 static int ath12k_mhi_op_read_reg(struct mhi_controller *mhi_cntrl, in ath12k_mhi_op_read_reg() argument
307 static void ath12k_mhi_op_write_reg(struct mhi_controller *mhi_cntrl, in ath12k_mhi_op_write_reg() argument
/linux-6.15/net/qrtr/
H A Dmhi.c126 state = mhi_get_mhi_state(mhi_dev->mhi_cntrl); in qcom_mhi_qrtr_pm_suspend_late()
145 state = mhi_get_mhi_state(mhi_dev->mhi_cntrl); in qcom_mhi_qrtr_pm_resume_early()
/linux-6.15/drivers/net/wwan/
H A Dmhi_wwan_mbim.c608 struct mhi_controller *cntrl = mhi_dev->mhi_cntrl; in mhi_mbim_probe()
619 mbim->mru = mhi_dev->mhi_cntrl->mru ? mhi_dev->mhi_cntrl->mru : MHI_DEFAULT_MRU; in mhi_mbim_probe()
641 struct mhi_controller *cntrl = mhi_dev->mhi_cntrl; in mhi_mbim_remove()

12