Commit d08b0f8f authored by Shane Parslow's avatar Shane Parslow Committed by David S. Miller
Browse files

net: wwan: iosm: add rpc interface for xmm modems

Add a new iosm wwan port that connects to the modem rpc interface. This
interface provides a configuration channel, and in the case of the 7360, is
the only way to configure the modem (as it does not support mbim).

The new interface is compatible with existing software, such as
open_xdatachannel.py from the xmm7360-pci project [1].

[1] https://github.com/xmm7360/xmm7360-pci



Signed-off-by: default avatarShane Parslow <shaneparslow808@gmail.com>
Reviewed-by: default avatarLoic Poulain <loic.poulain@linaro.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3349e4a4
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ static struct ipc_chnl_cfg modem_cfg[] = {
	/* RPC - 0 */
	{ IPC_MEM_CTRL_CHL_ID_1, IPC_MEM_PIPE_2, IPC_MEM_PIPE_3,
	  IPC_MEM_MAX_TDS_RPC, IPC_MEM_MAX_TDS_RPC,
	  IPC_MEM_MAX_DL_RPC_BUF_SIZE, WWAN_PORT_UNKNOWN },
	  IPC_MEM_MAX_DL_RPC_BUF_SIZE, WWAN_PORT_XMMRPC },
	/* IAT0 */
	{ IPC_MEM_CTRL_CHL_ID_2, IPC_MEM_PIPE_4, IPC_MEM_PIPE_5,
	  IPC_MEM_MAX_TDS_AT, IPC_MEM_MAX_TDS_AT, IPC_MEM_MAX_DL_AT_BUF_SIZE,
+4 −0
Original line number Diff line number Diff line
@@ -319,6 +319,10 @@ static const struct {
		.name = "FIREHOSE",
		.devsuf = "firehose",
	},
	[WWAN_PORT_XMMRPC] = {
		.name = "XMMRPC",
		.devsuf = "xmmrpc",
	},
};

static ssize_t type_show(struct device *dev, struct device_attribute *attr,
+2 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@
 * @WWAN_PORT_QMI: Qcom modem/MSM interface for modem control
 * @WWAN_PORT_QCDM: Qcom Modem diagnostic interface
 * @WWAN_PORT_FIREHOSE: XML based command protocol
 * @WWAN_PORT_XMMRPC: Control protocol for Intel XMM modems
 *
 * @WWAN_PORT_MAX: Highest supported port types
 * @WWAN_PORT_UNKNOWN: Special value to indicate an unknown port type
@@ -26,6 +27,7 @@ enum wwan_port_type {
	WWAN_PORT_QMI,
	WWAN_PORT_QCDM,
	WWAN_PORT_FIREHOSE,
	WWAN_PORT_XMMRPC,

	/* Add new port types above this line */