Some resource limits on IPA v3.1 and v3.5.1 have their max values set to 255, this causes a few splats in ipa_reg_encode and prevents it from booting. The limits are all 6 bits wide so adjust the max values to 63. Fixes: 1c418c4a929c ("net: ipa: define resource group/type IPA register fields") Signed-off-by: Caleb Connolly <caleb.connolly@xxxxxxxxxx> --- drivers/net/ipa/data/ipa_data-v3.1.c | 62 +++++++++++++------------- drivers/net/ipa/data/ipa_data-v3.5.1.c | 4 +- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/drivers/net/ipa/data/ipa_data-v3.1.c b/drivers/net/ipa/data/ipa_data-v3.1.c index e0d71f609272..7ff093f982ad 100644 --- a/drivers/net/ipa/data/ipa_data-v3.1.c +++ b/drivers/net/ipa/data/ipa_data-v3.1.c @@ -187,53 +187,53 @@ static const struct ipa_gsi_endpoint_data ipa_gsi_endpoint_data[] = { static const struct ipa_resource ipa_resource_src[] = { [IPA_RESOURCE_TYPE_SRC_PKT_CONTEXTS] = { .limits[IPA_RSRC_GROUP_SRC_UL] = { - .min = 3, .max = 255, + .min = 3, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DL] = { - .min = 3, .max = 255, + .min = 3, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DIAG] = { - .min = 1, .max = 255, + .min = 1, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DMA] = { - .min = 1, .max = 255, + .min = 1, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_UC_RX_Q] = { - .min = 2, .max = 255, + .min = 2, .max = 63, }, }, [IPA_RESOURCE_TYPE_SRC_HDR_SECTORS] = { .limits[IPA_RSRC_GROUP_SRC_UL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DIAG] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DMA] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_UC_RX_Q] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, }, [IPA_RESOURCE_TYPE_SRC_HDRI1_BUFFER] = { .limits[IPA_RSRC_GROUP_SRC_UL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DIAG] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DMA] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_UC_RX_Q] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, }, [IPA_RESOURCE_TYPE_SRC_DESCRIPTOR_LISTS] = { @@ -272,36 +272,36 @@ static const struct ipa_resource ipa_resource_src[] = { }, [IPA_RESOURCE_TYPE_SRC_HDRI2_BUFFERS] = { .limits[IPA_RSRC_GROUP_SRC_UL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DIAG] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DMA] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_UC_RX_Q] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, }, [IPA_RESOURCE_TYPE_SRC_HPS_DMARS] = { .limits[IPA_RSRC_GROUP_SRC_UL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DIAG] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_DMA] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_UC_RX_Q] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, }, [IPA_RESOURCE_TYPE_SRC_ACK_ENTRIES] = { @@ -345,22 +345,22 @@ static const struct ipa_resource ipa_resource_dst[] = { }, [IPA_RESOURCE_TYPE_DST_DATA_SECTOR_LISTS] = { .limits[IPA_RSRC_GROUP_DST_UL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_DST_DL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_DST_DIAG_DPL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_DST_DMA] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_DST_Q6ZIP_GENERAL] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, .limits[IPA_RSRC_GROUP_DST_Q6ZIP_ENGINE] = { - .min = 0, .max = 255, + .min = 0, .max = 63, }, }, [IPA_RESOURCE_TYPE_DST_DPS_DMARS] = { diff --git a/drivers/net/ipa/data/ipa_data-v3.5.1.c b/drivers/net/ipa/data/ipa_data-v3.5.1.c index 383ef1890065..42f2c88a92d4 100644 --- a/drivers/net/ipa/data/ipa_data-v3.5.1.c +++ b/drivers/net/ipa/data/ipa_data-v3.5.1.c @@ -179,10 +179,10 @@ static const struct ipa_gsi_endpoint_data ipa_gsi_endpoint_data[] = { static const struct ipa_resource ipa_resource_src[] = { [IPA_RESOURCE_TYPE_SRC_PKT_CONTEXTS] = { .limits[IPA_RSRC_GROUP_SRC_LWA_DL] = { - .min = 1, .max = 255, + .min = 1, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_UL_DL] = { - .min = 1, .max = 255, + .min = 1, .max = 63, }, .limits[IPA_RSRC_GROUP_SRC_UC_RX_Q] = { .min = 1, .max = 63, -- 2.38.1