提交 56dfe8de 编写于 作者: A Alex Elder 提交者: Jakub Kicinski

net: ipa: use version in gsi_channel_init()

A quirk of IPA v4.2 requires the AP to allocate the GSI channels
that are owned by the modem.

Rather than pass a flag argument to gsi_channel_init(), use the
IPA version directly in that function to determine whether modem
channels need to be allocated.
Signed-off-by: NAlex Elder <elder@linaro.org>
Signed-off-by: NJakub Kicinski <kuba@kernel.org>
上级 14dbf977
......@@ -1894,12 +1894,15 @@ static void gsi_channel_exit_one(struct gsi_channel *channel)
/* Init function for channels */
static int gsi_channel_init(struct gsi *gsi, u32 count,
const struct ipa_gsi_endpoint_data *data,
bool modem_alloc)
const struct ipa_gsi_endpoint_data *data)
{
bool modem_alloc;
int ret = 0;
u32 i;
/* IPA v4.2 requires the AP to allocate channels for the modem */
modem_alloc = gsi->version == IPA_VERSION_4_2;
gsi_evt_ring_init(gsi);
/* The endpoint data array is indexed by endpoint name */
......@@ -1961,14 +1964,10 @@ int gsi_init(struct gsi *gsi, struct platform_device *pdev,
struct resource *res;
resource_size_t size;
unsigned int irq;
bool modem_alloc;
int ret;
gsi_validate_build();
/* IPA v4.2 requires the AP to allocate channels for the modem */
modem_alloc = version == IPA_VERSION_4_2;
gsi->dev = dev;
gsi->version = version;
......@@ -2014,7 +2013,7 @@ int gsi_init(struct gsi *gsi, struct platform_device *pdev,
goto err_free_irq;
}
ret = gsi_channel_init(gsi, count, data, modem_alloc);
ret = gsi_channel_init(gsi, count, data);
if (ret)
goto err_iounmap;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册