Skip to content

Commit

Permalink
net: ipa: use version in gsi_channel_init()
Browse files Browse the repository at this point in the history
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: Alex Elder <elder@linaro.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  • Loading branch information
Alex Elder authored and Jakub Kicinski committed Nov 5, 2020
1 parent 14dbf97 commit 56dfe8d
Showing 1 changed file with 6 additions and 7 deletions.
13 changes: 6 additions & 7 deletions drivers/net/ipa/gsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -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 */
Expand Down Expand Up @@ -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;

Expand Down Expand Up @@ -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;

Expand Down

0 comments on commit 56dfe8d

Please sign in to comment.