Home
last modified time | relevance | path

Searched +full:ipa +full:- +full:ap +full:- +full:to +full:- +full:modem (Results 1 – 19 of 19) sorted by relevance

/linux/drivers/net/ipa/
H A Dipa_qmi.c1 // SPDX-License-Identifier: GPL-2.0
3 /* Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2018-2024 Linaro Ltd.
11 #include "ipa.h"
17 * DOC: AP/Modem QMI Handshake
19 * The AP and modem perform a "handshake" at initialization time to ensure
20 * both sides know when everything is ready to begin operating. The AP
22 * using a service on the modem, and server to service modem requests (and
23 * to supply an indication message from the AP). Once the handshake is
24 * complete, the AP and modem may begin IPA operation. This occurs
[all …]
H A Dipa_table.c1 // SPDX-License-Identifier: GPL-2.0
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2018-2024 Linaro Ltd.
10 #include <linux/dma-mapping.h>
16 #include "ipa.h"
25 * DOC: IPA Filter and Route Tables
27 * The IPA has tables defined in its local (IPA-resident) memory that define
29 * endian 64-bit "slot" that holds the address of a rule definition. (The
35 * by all IPA hardware (IPA v4.2 doesn't support hashed tables).
38 * an object (such as a route or filter table) in IPA-resident memory must
[all …]
H A Dipa_smp2p.c1 // SPDX-License-Identifier: GPL-2.0
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2019-2024 Linaro Ltd.
16 #include "ipa.h"
21 * DOC: IPA SMP2P communication with the modem
23 * SMP2P is a primitive communication mechanism available between the AP and
24 * the modem. The IPA driver uses this for two purposes: to enable the modem
25 * to state that the GSI hardware is ready to use; and to communicate the
26 * state of IPA power in the event of a crash.
28 * GSI needs to have early initialization completed before it can be used.
[all …]
H A Dipa_qmi_msg.h1 /* SPDX-License-Identifier: GPL-2.0 */
4 * Copyright (C) 2018-2024 Linaro Ltd.
15 /* Request/response/indication QMI message ids used for IPA. Receiving
18 #define IPA_QMI_INDICATION_REGISTER 0x20 /* modem -> AP request */
19 #define IPA_QMI_INIT_DRIVER 0x21 /* AP -> modem request */
20 #define IPA_QMI_INIT_COMPLETE 0x22 /* AP -> modem indication */
21 #define IPA_QMI_DRIVER_INIT_COMPLETE 0x35 /* modem -> AP request */
26 * the message size to be provided.
28 #define IPA_QMI_INDICATION_REGISTER_REQ_SZ 20 /* -> server handle */
29 #define IPA_QMI_INDICATION_REGISTER_RSP_SZ 7 /* <- server handle */
[all …]
H A Dipa.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2018-2024 Linaro Ltd.
25 * struct ipa - IPA information
27 * @version: IPA hardware version
28 * @dev: IPA device pointer
29 * @completion: Used to signal pipeline clear transfer complete
33 * @power: IPA power information
37 * @modem_route_count: Number of modem entries in a routing table
39 * @interrupt: IPA Interrupt information
[all …]
H A Dipa_qmi.h1 /* SPDX-License-Identifier: GPL-2.0 */
4 * Copyright (C) 2018-2024 Linaro Ltd.
14 struct ipa;
17 * struct ipa_qmi - QMI state associated with an IPA
18 * @client_handle: Used to send an QMI requests to the modem
19 * @server_handle: Used to handle QMI requests from the modem
20 * @modem_sq: QMAP socket address for the modem QMI server
45 * ipa_qmi_setup() - Set up for QMI message exchange
46 * @ipa: IPA pointer
48 * This is called at the end of ipa_setup(), to prepare for the exchange
[all …]
H A Dipa_mem.c1 // SPDX-License-Identifier: GPL-2.0
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2019-2024 Linaro Ltd.
7 #include <linux/dma-mapping.h>
16 #include "ipa.h"
23 /* "Canary" value placed between memory regions to detect overflow */
26 /* SMEM host id representing the modem. */
29 const struct ipa_mem *ipa_mem_find(struct ipa *ipa, enum ipa_mem_id mem_id) in ipa_mem_find() argument
33 for (i = 0; i < ipa->mem_count; i++) { in ipa_mem_find()
34 const struct ipa_mem *mem = &ipa->mem[i]; in ipa_mem_find()
[all …]
H A Dipa_data.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2019-2024 Linaro Ltd.
16 * DOC: IPA/GSI Configuration Data
18 * Boot-time configuration data is used to define the configuration of the
19 * IPA and GSI resources to use for a given platform. This data is supplied
25 * Resources are data structures used internally by the IPA hardware. The
29 * Endpoint configuration data defines properties of both IPA endpoints and
31 * communication path between the IPA and a particular execution environment
32 * (EE), such as the AP or Modem. Each EE has a set of channels associated
[all …]
H A Dipa_table.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2019-2024 Linaro Ltd.
11 struct ipa;
14 * ipa_filtered_valid() - Validate a filter table endpoint bitmap
15 * @ipa: IPA pointer
16 * @filtered: Filter table endpoint bitmap to check
20 bool ipa_filtered_valid(struct ipa *ipa, u64 filtered);
23 * ipa_table_hash_support() - Return true if hashed tables are supported
24 * @ipa: IPA pointer
[all …]
H A Dipa_uc.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2019-2024 Linaro Ltd.
9 struct ipa;
12 * ipa_uc_interrupt_handler() - Handler for microcontroller IPA interrupts
13 * @ipa: IPA pointer
14 * @irq_id: IPA interrupt ID
16 void ipa_uc_interrupt_handler(struct ipa *ipa, enum ipa_irq_id irq_id);
19 * ipa_uc_config() - Configure the IPA microcontroller subsystem
20 * @ipa: IPA pointer
[all …]
H A Dipa_cmd.c1 // SPDX-License-Identifier: GPL-2.0
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2019-2024 Linaro Ltd.
10 #include <linux/dma-direction.h>
15 #include "ipa.h"
23 * DOC: IPA Immediate Commands
25 * The AP command TX endpoint is used to issue immediate commands to the IPA.
26 * An immediate command is generally used to request the IPA do something
27 * other than data transfer to another endpoint.
31 * has a well-defined format, having a payload of a known length. This
[all …]
H A Dgsi.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 /* Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2018-2024 Linaro Ltd.
37 * A channel ring consists of TRE entries filled by the AP and passed
38 * to the hardware for processing. For a channel ring, the ring index
39 * identifies the next unused entry to be filled by the AP. In this
40 * case the initial value is assumed by hardware to be 0.
43 * and passed to the AP. For event rings, the ring index identifies
44 * the next ring entry that is not known to have been filled by the
51 * but taken from a fixed-size pool. The number of elements required for
[all …]
H A Dipa_endpoint.c1 // SPDX-License-Identifier: GPL-2.0
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2019-2024 Linaro Ltd.
10 #include <linux/dma-direction.h>
16 #include "ipa.h"
30 #define IPA_REPLENISH_BATCH 16 /* Must be non-zero */
33 #define IPA_RX_BUFFER_OVERHEAD (PAGE_SIZE - SKB_MAX_ORDER(NET_SKB_PAD, 0))
35 /* Where to find the QMAP mux_id for a packet within modem-supplied metadata */
40 /** enum ipa_status_opcode - IPA status opcode field hardware values */
51 /** enum ipa_status_exception - IPA status exception field hardware values */
[all …]
H A Dgsi.c1 // SPDX-License-Identifier: GPL-2.0
3 /* Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2018-2024 Linaro Ltd.
26 * DOC: The IPA Generic Software Interface
28 * The generic software interface (GSI) is an integral component of the IPA,
29 * providing a well-defined communication layer between the AP subsystem
30 * and the IPA core. The modem uses the GSI layer as well.
32 * -------- ---------
34 * | AP +<---. .----+ Modem |
35 * | +--. | | .->+ |
[all …]
/linux/Documentation/ABI/testing/
H A Dsysfs-devices-platform-soc-ipa1 What: /sys/devices/platform/soc@X/XXXXXXX.ipa/
6 The /sys/devices/platform/soc@X/XXXXXXX.ipa/ directory
7 contains read-only attributes exposing information about
8 an IPA device. The X values could vary, but are typically
9 "soc@0/1e40000.ipa".
11 What: .../XXXXXXX.ipa/version
16 The .../XXXXXXX.ipa/version file contains the IPA hardware
17 version, as a period-separated set of two or three integers
20 What: .../XXXXXXX.ipa/feature/
25 The .../XXXXXXX.ipa/feature/ directory contains a set of
[all …]
/linux/arch/arm64/boot/dts/qcom/
H A Dsc7180-trogdor-lte-sku.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
9 label = "proximity-wifi-lte";
17 firmware-name = "qcom/sc7180-trogdor/modem/mba.mbn",
18 "qcom/sc7180-trogdor/modem/qdsp6sw.mbn";
21 &ipa {
24 * modem needs to cover certain init steps (GSI init), and
25 * the AP needs to wait for it.
27 qcom,gsi-loader = "modem";
H A Dsdm845.dtsi1 // SPDX-License-Identifier: GPL-2.0
8 #include <dt-bindings/clock/qcom,camcc-sdm845.h>
9 #include <dt-bindings/clock/qcom,dispcc-sdm845.h>
10 #include <dt-bindings/clock/qcom,gcc-sdm845.h>
11 #include <dt-bindings/clock/qcom,gpucc-sdm845.h>
12 #include <dt-bindings/clock/qcom,lpass-sdm845.h>
13 #include <dt-bindings/clock/qcom,rpmh.h>
14 #include <dt-bindings/clock/qcom,videocc-sdm845.h>
15 #include <dt-bindings/dma/qcom-gpi.h>
16 #include <dt-bindings/firmware/qcom,scm.h>
[all …]
H A Dqcm2290.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
8 #include <dt-bindings/clock/qcom,dispcc-qcm2290.h>
9 #include <dt-bindings/clock/qcom,gcc-qcm2290.h>
10 #include <dt-bindings/clock/qcom,qcm2290-gpucc.h>
11 #include <dt-bindings/clock/qcom,rpmcc.h>
12 #include <dt-bindings/dma/qcom-gpi.h>
13 #include <dt-bindings/firmware/qcom,scm.h>
14 #include <dt-bindings/gpio/gpio.h>
15 #include <dt-bindings/interrupt-controller/arm-gic.h>
16 #include <dt-bindings/interconnect/qcom,qcm2290.h>
[all …]
/linux/
H A DMAINTAINERS5 ---------------------------------------------------
7 M: *Mail* patches to: FullName <address@domain>
10 L: *Mailing list* that is relevant to this area
12 Supported: Someone is actually paid to look after this.
14 Odd Fixes: It has a maintainer but they don't have time to do
21 W: *Web-page* with status/info
23 B: URI for where to file *bugs*. A web-page with detailed bug
28 patches to the given subsystem. This is either an in-tree file,
29 or a URI. See Documentation/maintainer/maintainer-entry-profile.rst
46 N: [^a-z]tegra all files whose path contains tegra
[all …]