net: ipa: combine source and destation resource types
The ipa_resource_src and ipa_resource_dst structures are identical in form, so just replace them with a single structure. Signed-off-by: Alex Elder <elder@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
d9d1cddf8b
Коммит
7336ce1a7a
|
@ -163,7 +163,7 @@ static const struct ipa_gsi_endpoint_data ipa_gsi_endpoint_data[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Source resource configuration data for the SC7180 SoC */
|
/* Source resource configuration data for the SC7180 SoC */
|
||||||
static const struct ipa_resource_src ipa_resource_src[] = {
|
static const struct ipa_resource ipa_resource_src[] = {
|
||||||
[IPA_RESOURCE_TYPE_SRC_PKT_CONTEXTS] = {
|
[IPA_RESOURCE_TYPE_SRC_PKT_CONTEXTS] = {
|
||||||
.limits[IPA_RSRC_GROUP_SRC_UL_DL] = {
|
.limits[IPA_RSRC_GROUP_SRC_UL_DL] = {
|
||||||
.min = 3, .max = 63,
|
.min = 3, .max = 63,
|
||||||
|
@ -192,7 +192,7 @@ static const struct ipa_resource_src ipa_resource_src[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Destination resource configuration data for the SC7180 SoC */
|
/* Destination resource configuration data for the SC7180 SoC */
|
||||||
static const struct ipa_resource_dst ipa_resource_dst[] = {
|
static const struct ipa_resource ipa_resource_dst[] = {
|
||||||
[IPA_RESOURCE_TYPE_DST_DATA_SECTORS] = {
|
[IPA_RESOURCE_TYPE_DST_DATA_SECTORS] = {
|
||||||
.limits[IPA_RSRC_GROUP_DST_UL_DL_DPL] = {
|
.limits[IPA_RSRC_GROUP_DST_UL_DL_DPL] = {
|
||||||
.min = 3, .max = 3,
|
.min = 3, .max = 3,
|
||||||
|
|
|
@ -181,7 +181,7 @@ static const struct ipa_gsi_endpoint_data ipa_gsi_endpoint_data[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Source resource configuration data for the SDM845 SoC */
|
/* Source resource configuration data for the SDM845 SoC */
|
||||||
static const struct ipa_resource_src ipa_resource_src[] = {
|
static const struct ipa_resource ipa_resource_src[] = {
|
||||||
[IPA_RESOURCE_TYPE_SRC_PKT_CONTEXTS] = {
|
[IPA_RESOURCE_TYPE_SRC_PKT_CONTEXTS] = {
|
||||||
.limits[IPA_RSRC_GROUP_SRC_LWA_DL] = {
|
.limits[IPA_RSRC_GROUP_SRC_LWA_DL] = {
|
||||||
.min = 1, .max = 255,
|
.min = 1, .max = 255,
|
||||||
|
@ -243,7 +243,7 @@ static const struct ipa_resource_src ipa_resource_src[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Destination resource configuration data for the SDM845 SoC */
|
/* Destination resource configuration data for the SDM845 SoC */
|
||||||
static const struct ipa_resource_dst ipa_resource_dst[] = {
|
static const struct ipa_resource ipa_resource_dst[] = {
|
||||||
[IPA_RESOURCE_TYPE_DST_DATA_SECTORS] = {
|
[IPA_RESOURCE_TYPE_DST_DATA_SECTORS] = {
|
||||||
.limits[IPA_RSRC_GROUP_DST_LWA_DL] = {
|
.limits[IPA_RSRC_GROUP_DST_LWA_DL] = {
|
||||||
.min = 4, .max = 4,
|
.min = 4, .max = 4,
|
||||||
|
|
|
@ -204,18 +204,10 @@ struct ipa_resource_limits {
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct ipa_resource_src - source endpoint group resource usage
|
* struct ipa_resource - resource group source or destination resource usage
|
||||||
* @limits: array of source resource limits, indexed by group
|
* @limits: array of resource limits, indexed by group
|
||||||
*/
|
*/
|
||||||
struct ipa_resource_src {
|
struct ipa_resource {
|
||||||
struct ipa_resource_limits limits[IPA_RESOURCE_GROUP_MAX];
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* struct ipa_resource_dst - destination endpoint group resource usage
|
|
||||||
* @limits: array of destination resource limits, indexed by group
|
|
||||||
*/
|
|
||||||
struct ipa_resource_dst {
|
|
||||||
struct ipa_resource_limits limits[IPA_RESOURCE_GROUP_MAX];
|
struct ipa_resource_limits limits[IPA_RESOURCE_GROUP_MAX];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -233,9 +225,9 @@ struct ipa_resource_dst {
|
||||||
*/
|
*/
|
||||||
struct ipa_resource_data {
|
struct ipa_resource_data {
|
||||||
u32 resource_src_count;
|
u32 resource_src_count;
|
||||||
const struct ipa_resource_src *resource_src;
|
const struct ipa_resource *resource_src;
|
||||||
u32 resource_dst_count;
|
u32 resource_dst_count;
|
||||||
const struct ipa_resource_dst *resource_dst;
|
const struct ipa_resource *resource_dst;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -87,7 +87,7 @@ static bool ipa_resource_limits_valid(struct ipa *ipa,
|
||||||
* for a resource group not supported by hardware.
|
* for a resource group not supported by hardware.
|
||||||
*/
|
*/
|
||||||
for (i = 0; i < data->resource_src_count; i++) {
|
for (i = 0; i < data->resource_src_count; i++) {
|
||||||
const struct ipa_resource_src *resource;
|
const struct ipa_resource *resource;
|
||||||
|
|
||||||
resource = &data->resource_src[i];
|
resource = &data->resource_src[i];
|
||||||
for (j = group_count; j < IPA_RESOURCE_GROUP_MAX; j++)
|
for (j = group_count; j < IPA_RESOURCE_GROUP_MAX; j++)
|
||||||
|
@ -100,7 +100,7 @@ static bool ipa_resource_limits_valid(struct ipa *ipa,
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
for (i = 0; i < data->resource_dst_count; i++) {
|
for (i = 0; i < data->resource_dst_count; i++) {
|
||||||
const struct ipa_resource_dst *resource;
|
const struct ipa_resource *resource;
|
||||||
|
|
||||||
resource = &data->resource_dst[i];
|
resource = &data->resource_dst[i];
|
||||||
for (j = group_count; j < IPA_RESOURCE_GROUP_MAX; j++)
|
for (j = group_count; j < IPA_RESOURCE_GROUP_MAX; j++)
|
||||||
|
@ -129,7 +129,7 @@ ipa_resource_config_common(struct ipa *ipa, u32 offset,
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ipa_resource_config_src(struct ipa *ipa, u32 resource_type,
|
static void ipa_resource_config_src(struct ipa *ipa, u32 resource_type,
|
||||||
const struct ipa_resource_src *resource)
|
const struct ipa_resource *resource)
|
||||||
{
|
{
|
||||||
u32 group_count = ipa_resource_group_src_count(ipa->version);
|
u32 group_count = ipa_resource_group_src_count(ipa->version);
|
||||||
const struct ipa_resource_limits *ylimits;
|
const struct ipa_resource_limits *ylimits;
|
||||||
|
@ -155,7 +155,7 @@ static void ipa_resource_config_src(struct ipa *ipa, u32 resource_type,
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ipa_resource_config_dst(struct ipa *ipa, u32 resource_type,
|
static void ipa_resource_config_dst(struct ipa *ipa, u32 resource_type,
|
||||||
const struct ipa_resource_dst *resource)
|
const struct ipa_resource *resource)
|
||||||
{
|
{
|
||||||
u32 group_count = ipa_resource_group_dst_count(ipa->version);
|
u32 group_count = ipa_resource_group_dst_count(ipa->version);
|
||||||
const struct ipa_resource_limits *ylimits;
|
const struct ipa_resource_limits *ylimits;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче