interconnect fixes for v6.7-rc

This contains fixes for reported issues. One fix is in framework code to
 explicitly treat returned NULL nodes as error when the device-tree data
 is translated into endpoint nodes.
 The other two fixes are in driver code. One is expected to improve the
 power consumption on the sm8250 platforms and the other one is fixing a
 bandwidth calculation formula that was introduced during this cycle.
 
 - interconnect: Treat xlate() returning NULL node as an error
 - interconnect: qcom: sm8250: Enable sync_state
 - interconnect: qcom: icc-rpm: Fix peak rate calculation
 
 Signed-off-by: Georgi Djakov <djakov@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABAgAGBQJlc7OMAAoJEIDQzArG2BZjy4YP/0cW8iuzPwWOZBHqsEQ8a3jm
 2HsS5g7cfsI3iUAJPVMDELJN6v3LAQt2zwO0r0ZDaghN6f5DZPOkEq/Di8LnYolX
 TZcrKztrrKpHJC1Z65NtNWJMCQxbpuYbS0WwlxZlxJ6+sanhkq/P+Q1Fix/5gFFI
 sSmP9/6Pi6HuJz6U6tKJrvqpDwt/GbGZ2pgs+oHx2XVA5ixMmq6Df2QuXH4SSdoO
 A4DrRHyG9qSLcfr5N03rFYrp4blmLiM3oGdG4keFrLXtwJSCc9Z0CznVHAXa1wNC
 /tVuCv0Nc6D7bwsTHQpduV8PDqN2g+H2gL1C0MRtFOGQPdQ7Jt/mLk2Jzdz7yTm2
 DGVyUm1oI0afyZ07vH2o13fRtuCb7hxYhfQI955LLM8pzz9oXOfdcJvB85M7qswj
 4A1mX1BRQKnN1fULZ0XybgMaAZb4zifp8fIhjMW/Cv/l8kWXVVdlZxP0OqgvWIY5
 TFZdVSewkrS78ZyPYHB6Wdpa62riTNf43cTX0F4J9zYE6LH5+d2zLprcazc1k8sy
 rjkJEQroK6csJ47ufDsmfrtZpeIQAx2zVijsFaMAz7qIPh29VdZndiCLORhvjfqB
 PRNDYivzYH920LF5fGpbjszzwmlx/5M8vrlrz3Z+B95dI6P85FlHHFmvc+VMpTF/
 D8srfPb4il5R61Jm/hR6
 =XH0j
 -----END PGP SIGNATURE-----

Merge tag 'icc-6.7-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/djakov/icc into char-misc-linus

Georgi writes:

interconnect fixes for v6.7-rc

This contains fixes for reported issues. One fix is in framework code to
explicitly treat returned NULL nodes as error when the device-tree data
is translated into endpoint nodes.
The other two fixes are in driver code. One is expected to improve the
power consumption on the sm8250 platforms and the other one is fixing a
bandwidth calculation formula that was introduced during this cycle.

- interconnect: Treat xlate() returning NULL node as an error
- interconnect: qcom: sm8250: Enable sync_state
- interconnect: qcom: icc-rpm: Fix peak rate calculation

Signed-off-by: Georgi Djakov <djakov@kernel.org>

* tag 'icc-6.7-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/djakov/icc:
  interconnect: qcom: icc-rpm: Fix peak rate calculation
  interconnect: qcom: sm8250: Enable sync_state
  interconnect: Treat xlate() returning NULL node as an error
This commit is contained in:
Greg Kroah-Hartman 2023-12-12 09:42:11 +01:00
commit e1b2fa6185
3 changed files with 5 additions and 1 deletions

View File

@ -395,6 +395,9 @@ struct icc_node_data *of_icc_get_from_provider(struct of_phandle_args *spec)
}
mutex_unlock(&icc_lock);
if (!node)
return ERR_PTR(-EINVAL);
if (IS_ERR(node))
return ERR_CAST(node);

View File

@ -307,7 +307,7 @@ static u64 qcom_icc_calc_rate(struct qcom_icc_provider *qp, struct qcom_icc_node
if (qn->ib_coeff) {
agg_peak_rate = qn->max_peak[ctx] * 100;
agg_peak_rate = div_u64(qn->max_peak[ctx], qn->ib_coeff);
agg_peak_rate = div_u64(agg_peak_rate, qn->ib_coeff);
} else {
agg_peak_rate = qn->max_peak[ctx];
}

View File

@ -1995,6 +1995,7 @@ static struct platform_driver qnoc_driver = {
.driver = {
.name = "qnoc-sm8250",
.of_match_table = qnoc_of_match,
.sync_state = icc_sync_state,
},
};
module_platform_driver(qnoc_driver);