| /linux-6.15/drivers/net/ipa/ |
| H A D | ipa_main.c | 111 int ipa_setup(struct ipa *ipa) in ipa_setup() argument 177 static void ipa_teardown(struct ipa *ipa) in ipa_teardown() argument 210 static void ipa_hardware_config_tx(struct ipa *ipa) in ipa_hardware_config_tx() argument 231 static void ipa_hardware_config_clkon(struct ipa *ipa) in ipa_hardware_config_clkon() argument 258 static void ipa_hardware_config_comp(struct ipa *ipa) in ipa_hardware_config_comp() argument 360 static void ipa_qtime_config(struct ipa *ipa) in ipa_qtime_config() argument 513 static void ipa_hardware_deconfig(struct ipa *ipa) in ipa_hardware_deconfig() argument 576 static void ipa_deconfig(struct ipa *ipa) in ipa_deconfig() argument 801 struct ipa *ipa; in ipa_probe() local 841 ipa = kzalloc(sizeof(*ipa), GFP_KERNEL); in ipa_probe() [all …]
|
| H A D | ipa_table.c | 162 bool ipa_table_hash_support(struct ipa *ipa) in ipa_table_hash_support() argument 167 bool ipa_filtered_valid(struct ipa *ipa, u64 filtered) in ipa_filtered_valid() argument 208 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_table_reset_add() local 329 void ipa_table_reset(struct ipa *ipa, bool modem) in ipa_table_reset() argument 349 int ipa_table_hash_flush(struct ipa *ipa) in ipa_table_hash_flush() argument 388 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_table_init_add() local 454 int ipa_table_setup(struct ipa *ipa) in ipa_table_setup() argument 497 struct ipa *ipa = endpoint->ipa; in ipa_filter_tuple_zero() local 595 void ipa_table_config(struct ipa *ipa) in ipa_table_config() argument 715 int ipa_table_init(struct ipa *ipa) in ipa_table_init() argument [all …]
|
| H A D | ipa_mem.c | 47 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_mem_zero_region_add() local 75 int ipa_mem_setup(struct ipa *ipa) in ipa_mem_setup() argument 291 static bool ipa_mem_size_valid(struct ipa *ipa) in ipa_mem_size_valid() argument 318 int ipa_mem_config(struct ipa *ipa) in ipa_mem_config() argument 372 canary = ipa->mem_virt + ipa->mem_offset + ipa->mem[i].offset; in ipa_mem_config() 394 void ipa_mem_deconfig(struct ipa *ipa) in ipa_mem_deconfig() argument 398 dma_free_coherent(dev, ipa->zero_size, ipa->zero_virt, ipa->zero_addr); in ipa_mem_deconfig() 414 int ipa_mem_zero_modem(struct ipa *ipa) in ipa_mem_zero_modem() argument 485 static void ipa_imem_exit(struct ipa *ipa) in ipa_imem_exit() argument 593 static void ipa_smem_exit(struct ipa *ipa) in ipa_smem_exit() argument [all …]
|
| H A D | ipa_interrupt.c | 43 struct ipa *ipa; member 52 struct ipa *ipa = interrupt->ipa; in ipa_interrupt_suspend_clear_all() local 76 struct ipa *ipa = interrupt->ipa; in ipa_interrupt_process() local 113 struct ipa *ipa = interrupt->ipa; in ipa_isr_thread() local 158 static void ipa_interrupt_enabled_update(struct ipa *ipa) in ipa_interrupt_enabled_update() argument 181 void ipa_interrupt_irq_disable(struct ipa *ipa) in ipa_interrupt_irq_disable() argument 186 void ipa_interrupt_irq_enable(struct ipa *ipa) in ipa_interrupt_irq_enable() argument 195 struct ipa *ipa = interrupt->ipa; in ipa_interrupt_suspend_control() local 250 int ipa_interrupt_config(struct ipa *ipa) in ipa_interrupt_config() argument 258 interrupt->ipa = ipa; in ipa_interrupt_config() [all …]
|
| H A D | ipa_uc.c | 120 static struct ipa_uc_mem_area *ipa_uc_shared(struct ipa *ipa) in ipa_uc_shared() argument 129 static void ipa_uc_event_handler(struct ipa *ipa) in ipa_uc_event_handler() argument 143 static void ipa_uc_response_hdlr(struct ipa *ipa) in ipa_uc_response_hdlr() argument 175 void ipa_uc_interrupt_handler(struct ipa *ipa, enum ipa_irq_id irq_id) in ipa_uc_interrupt_handler() argument 185 void ipa_uc_config(struct ipa *ipa) in ipa_uc_config() argument 194 void ipa_uc_deconfig(struct ipa *ipa) in ipa_uc_deconfig() argument 200 if (ipa->uc_loaded) in ipa_uc_deconfig() 203 if (!ipa->uc_powered) in ipa_uc_deconfig() 211 void ipa_uc_power(struct ipa *ipa) in ipa_uc_power() argument 253 void ipa_uc_panic_notifier(struct ipa *ipa) in ipa_uc_panic_notifier() argument [all …]
|
| H A D | ipa_endpoint.c | 452 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_init_ctrl() local 497 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_aggr_active() local 514 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_force_close() local 535 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_suspend_aggr() local 649 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_init_cfg() local 686 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_init_nat() local 788 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_init_hdr() local 833 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_init_hdr_ext() local 884 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_init_hdr_metadata_mask() local 904 struct ipa *ipa = endpoint->ipa; in ipa_endpoint_init_mode() local [all …]
|
| H A D | ipa_modem.c | 45 struct ipa *ipa; member 55 struct ipa *ipa = priv->ipa; in ipa_open() local 91 struct ipa *ipa = priv->ipa; in ipa_stop() local 128 struct ipa *ipa = priv->ipa; in ipa_start_xmit() local 301 int ipa_modem_start(struct ipa *ipa) in ipa_modem_start() argument 325 priv->ipa = ipa; in ipa_modem_start() 354 int ipa_modem_stop(struct ipa *ipa) in ipa_modem_stop() argument 442 struct ipa *ipa = container_of(nb, struct ipa, nb); in ipa_modem_notify() local 476 int ipa_modem_config(struct ipa *ipa) in ipa_modem_config() argument 491 void ipa_modem_deconfig(struct ipa *ipa) in ipa_modem_deconfig() argument [all …]
|
| H A D | ipa_cmd.c | 181 size = route ? ipa->route_count : ipa->filter_count + 1; in ipa_cmd_table_init_valid() 366 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_cmd_table_init_add() local 404 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_cmd_hdr_init_local_add() local 433 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_cmd_register_write_add() local 490 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_cmd_ip_packet_init_add() local 515 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_cmd_dma_shared_mem_add() local 555 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_cmd_ip_tag_status_add() local 573 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_cmd_transfer_add() local 588 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_cmd_pipeline_clear_add() local 617 void ipa_cmd_pipeline_clear_wait(struct ipa *ipa) in ipa_cmd_pipeline_clear_wait() argument [all …]
|
| H A D | ipa_endpoint.h | 19 struct ipa; 153 struct ipa *ipa; member 186 void ipa_endpoint_suspend(struct ipa *ipa); 187 void ipa_endpoint_resume(struct ipa *ipa); 189 void ipa_endpoint_setup(struct ipa *ipa); 190 void ipa_endpoint_teardown(struct ipa *ipa); 192 int ipa_endpoint_config(struct ipa *ipa); 193 void ipa_endpoint_deconfig(struct ipa *ipa); 196 void ipa_endpoint_default_route_clear(struct ipa *ipa); 198 int ipa_endpoint_init(struct ipa *ipa, u32 count, [all …]
|
| H A D | ipa_qmi.c | 82 struct ipa *ipa = container_of(ipa_qmi, struct ipa, qmi); in ipa_server_init_complete() local 124 struct ipa *ipa; in ipa_qmi_ready() local 144 ipa = container_of(ipa_qmi, struct ipa, qmi); in ipa_qmi_ready() 182 struct ipa *ipa; in ipa_server_indication_register() local 186 ipa = container_of(ipa_qmi, struct ipa, qmi); in ipa_server_indication_register() 211 struct ipa *ipa; in ipa_server_driver_init_complete() local 215 ipa = container_of(ipa_qmi, struct ipa, qmi); in ipa_server_driver_init_complete() 282 struct ipa *ipa = container_of(ipa_qmi, struct ipa, qmi); in init_modem_driver_req() local 409 struct ipa *ipa; in ipa_client_init_driver_work() local 468 int ipa_qmi_setup(struct ipa *ipa) in ipa_qmi_setup() argument [all …]
|
| H A D | ipa_table.h | 11 struct ipa; 20 bool ipa_filtered_valid(struct ipa *ipa, u64 filtered); 26 bool ipa_table_hash_support(struct ipa *ipa); 33 void ipa_table_reset(struct ipa *ipa, bool modem); 39 int ipa_table_hash_flush(struct ipa *ipa); 47 int ipa_table_setup(struct ipa *ipa); 55 void ipa_table_config(struct ipa *ipa); 61 int ipa_table_init(struct ipa *ipa); 67 void ipa_table_exit(struct ipa *ipa); 74 bool ipa_table_mem_valid(struct ipa *ipa, bool filter);
|
| H A D | ipa_resource.c | 28 static bool ipa_resource_limits_valid(struct ipa *ipa, in ipa_resource_limits_valid() argument 71 ipa_resource_config_common(struct ipa *ipa, u32 resource_type, in ipa_resource_config_common() argument 88 static void ipa_resource_config_src(struct ipa *ipa, u32 resource_type, in ipa_resource_config_src() argument 98 reg = ipa_reg(ipa, SRC_RSRC_GRP_01_RSRC_TYPE); in ipa_resource_config_src() 105 reg = ipa_reg(ipa, SRC_RSRC_GRP_23_RSRC_TYPE); in ipa_resource_config_src() 112 reg = ipa_reg(ipa, SRC_RSRC_GRP_45_RSRC_TYPE); in ipa_resource_config_src() 125 static void ipa_resource_config_dst(struct ipa *ipa, u32 resource_type, in ipa_resource_config_dst() argument 163 int ipa_resource_config(struct ipa *ipa, const struct ipa_resource_data *data) in ipa_resource_config() argument 167 if (!ipa_resource_limits_valid(ipa, data)) in ipa_resource_config() 171 ipa_resource_config_src(ipa, i, data); in ipa_resource_config() [all …]
|
| H A D | ipa_power.c | 95 static int ipa_power_enable(struct ipa *ipa) in ipa_power_enable() argument 115 static void ipa_power_disable(struct ipa *ipa) in ipa_power_disable() argument 126 struct ipa *ipa = dev_get_drvdata(dev); in ipa_runtime_suspend() local 134 ipa_power_disable(ipa); in ipa_runtime_suspend() 141 struct ipa *ipa = dev_get_drvdata(dev); in ipa_runtime_resume() local 150 gsi_resume(&ipa->gsi); in ipa_runtime_resume() 159 struct ipa *ipa = dev_get_drvdata(dev); in ipa_suspend() local 177 struct ipa *ipa = dev_get_drvdata(dev); in ipa_resume() local 192 u32 ipa_core_clock_rate(struct ipa *ipa) in ipa_core_clock_rate() argument 194 return ipa->power ? (u32)clk_get_rate(ipa->power->core) : 0; in ipa_core_clock_rate() [all …]
|
| H A D | ipa_smp2p.c | 61 struct ipa *ipa; member 153 struct ipa *ipa = smp2p->ipa; in ipa_smp2p_modem_setup_ready_isr() local 162 dev = ipa->dev; in ipa_smp2p_modem_setup_ready_isr() 209 static void ipa_smp2p_power_release(struct ipa *ipa) in ipa_smp2p_power_release() argument 251 smp2p->ipa = ipa; in ipa_smp2p_init() 263 ipa->smp2p = smp2p; in ipa_smp2p_init() 291 ipa->smp2p = NULL; in ipa_smp2p_init() 298 void ipa_smp2p_exit(struct ipa *ipa) in ipa_smp2p_exit() argument 308 ipa->smp2p = NULL; in ipa_smp2p_exit() 313 void ipa_smp2p_irq_disable_setup(struct ipa *ipa) in ipa_smp2p_irq_disable_setup() argument [all …]
|
| H A D | ipa_gsi.c | 18 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_gsi_trans_complete() local 20 ipa_endpoint_trans_complete(ipa->channel_map[trans->channel_id], trans); in ipa_gsi_trans_complete() 25 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_gsi_trans_release() local 27 ipa_endpoint_trans_release(ipa->channel_map[trans->channel_id], trans); in ipa_gsi_trans_release() 33 struct ipa *ipa = container_of(gsi, struct ipa, gsi); in ipa_gsi_channel_tx_queued() local 36 endpoint = ipa->channel_map[channel_id]; in ipa_gsi_channel_tx_queued() 44 struct ipa *ipa = container_of(gsi, struct ipa, gsi); in ipa_gsi_channel_tx_completed() local 47 endpoint = ipa->channel_map[channel_id]; in ipa_gsi_channel_tx_completed()
|
| H A D | ipa_mem.h | 13 struct ipa; 98 const struct ipa_mem *ipa_mem_find(struct ipa *ipa, enum ipa_mem_id mem_id); 100 int ipa_mem_config(struct ipa *ipa); 101 void ipa_mem_deconfig(struct ipa *ipa); 103 int ipa_mem_setup(struct ipa *ipa); /* No ipa_mem_teardown() needed */ 105 int ipa_mem_zero_modem(struct ipa *ipa); 107 int ipa_mem_init(struct ipa *ipa, struct platform_device *pdev, 109 void ipa_mem_exit(struct ipa *ipa);
|
| H A D | ipa_sysfs.c | 13 static const char *ipa_version_string(struct ipa *ipa) in ipa_version_string() argument 15 switch (ipa->version) { in ipa_version_string() 48 struct ipa *ipa = dev_get_drvdata(dev); in version_show() local 50 return sysfs_emit(buf, "%s\n", ipa_version_string(ipa)); in version_show() 64 static const char *ipa_offload_string(struct ipa *ipa) in ipa_offload_string() argument 72 struct ipa *ipa = dev_get_drvdata(dev); in rx_offload_show() local 74 return sysfs_emit(buf, "%s\n", ipa_offload_string(ipa)); in rx_offload_show() 82 struct ipa *ipa = dev_get_drvdata(dev); in tx_offload_show() local 84 return sysfs_emit(buf, "%s\n", ipa_offload_string(ipa)); in tx_offload_show() 103 struct ipa *ipa = dev_get_drvdata(kobj_to_dev(kobj)); in ipa_endpoint_id_is_visible() local [all …]
|
| H A D | ipa_interrupt.h | 13 struct ipa; 55 void ipa_interrupt_enable(struct ipa *ipa, enum ipa_irq_id ipa_irq); 62 void ipa_interrupt_disable(struct ipa *ipa, enum ipa_irq_id ipa_irq); 70 void ipa_interrupt_irq_enable(struct ipa *ipa); 78 void ipa_interrupt_irq_disable(struct ipa *ipa); 86 int ipa_interrupt_config(struct ipa *ipa); 92 void ipa_interrupt_deconfig(struct ipa *ipa);
|
| H A D | ipa_uc.h | 9 struct ipa; 16 void ipa_uc_interrupt_handler(struct ipa *ipa, enum ipa_irq_id irq_id); 22 void ipa_uc_config(struct ipa *ipa); 28 void ipa_uc_deconfig(struct ipa *ipa); 42 void ipa_uc_power(struct ipa *ipa); 51 void ipa_uc_panic_notifier(struct ipa *ipa);
|
| H A D | ipa_reg.c | 14 static bool ipa_reg_id_valid(struct ipa *ipa, enum ipa_reg_id reg_id) in ipa_reg_id_valid() argument 16 enum ipa_version version = ipa->version; in ipa_reg_id_valid() 102 const struct reg *ipa_reg(struct ipa *ipa, enum ipa_reg_id reg_id) in ipa_reg() argument 107 return reg(ipa->regs, reg_id); in ipa_reg() 136 int ipa_reg_init(struct ipa *ipa, struct platform_device *pdev) in ipa_reg_init() argument 142 regs = ipa_regs(ipa->version); in ipa_reg_init() 156 ipa->reg_virt = ioremap(res->start, resource_size(res)); in ipa_reg_init() 157 if (!ipa->reg_virt) { in ipa_reg_init() 161 ipa->regs = regs; in ipa_reg_init() 166 void ipa_reg_exit(struct ipa *ipa) in ipa_reg_exit() argument [all …]
|
| H A D | ipa_smp2p.h | 13 struct ipa; 23 int ipa_smp2p_init(struct ipa *ipa, struct platform_device *pdev, 30 void ipa_smp2p_exit(struct ipa *ipa); 38 void ipa_smp2p_irq_disable_setup(struct ipa *ipa); 48 void ipa_smp2p_notify_reset(struct ipa *ipa);
|
| H A D | ipa_modem.h | 12 struct ipa; 14 int ipa_modem_start(struct ipa *ipa); 15 int ipa_modem_stop(struct ipa *ipa); 22 int ipa_modem_config(struct ipa *ipa); 23 void ipa_modem_deconfig(struct ipa *ipa);
|
| H A D | ipa_cmd.h | 13 struct ipa; 53 bool ipa_cmd_table_init_valid(struct ipa *ipa, const struct ipa_mem *mem, 141 void ipa_cmd_pipeline_clear_wait(struct ipa *ipa); 151 struct gsi_trans *ipa_cmd_trans_alloc(struct ipa *ipa, u32 tre_count); 161 int ipa_cmd_init(struct ipa *ipa);
|
| /linux-6.15/Documentation/ABI/testing/ |
| H A D | sysfs-devices-platform-soc-ipa | 1 What: /sys/devices/platform/soc@X/XXXXXXX.ipa/ 9 "soc@0/1e40000.ipa". 11 What: .../XXXXXXX.ipa/version 20 What: .../XXXXXXX.ipa/feature/ 29 What: .../XXXXXXX.ipa/feature/rx_offload 39 What: .../XXXXXXX.ipa/feature/tx_offload 49 What: .../XXXXXXX.ipa/endpoint_id/ 60 What: .../XXXXXXX.ipa/endpoint_id/modem_rx 69 What: .../XXXXXXX.ipa/endpoint_id/modem_tx 92 What: .../XXXXXXX.ipa/modem/ [all …]
|
| /linux-6.15/Documentation/devicetree/bindings/net/ |
| H A D | qcom,ipa.yaml | 49 - qcom,sc7180-ipa 50 - qcom,sc7280-ipa 51 - qcom,sdm845-ipa 52 - qcom,sdx55-ipa 53 - qcom,sdx65-ipa 54 - qcom,sm6350-ipa 55 - qcom,sm8350-ipa 70 - const: ipa-reg 71 - const: ipa-shared 93 - const: ipa [all …]
|