Messages in this thread | | | Date | Tue, 17 Jan 2023 17:27:01 +0000 | From | Matthias Kaehlcke <> | Subject | Re: [PATCH v2 4/4] arm64: dts: qcom: sc7280: Add cpu and llcc BWMON (=> interconnect issue) |
| |
On Sun, Jan 15, 2023 at 04:13:40PM +0100, Krzysztof Kozlowski wrote: > On 13/01/2023 19:18, Matthias Kaehlcke wrote: > > Hi, > > > > On Fri, Sep 02, 2022 at 10:05:11AM +0530, Rajendra Nayak wrote: > >> Add cpu and llcc BWMON nodes and their corresponding > >> OPP tables for sc7280 SoC. > >> > >> Signed-off-by: Rajendra Nayak <quic_rjendra@quicinc.com> > >> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > > > I found that with a v6.1 kernel AOSS on sc7280 doesn't reach it's low > > power state during system. This can be observed on herobrine based > > boards on which the AP_SUSPEND signal should transition to 1 during > > system suspend. If it doesn't the Embedded Controller (EC) notices > > it and wakes the system up again. > > > > Bisection points to this patch, the issue only occurs when > > CONFIG_QCOM_ICC_BWMON is *not* set. One might think the patch shouldn't > > have any impact at all when the driver is not enabled, but it does. > > > > Debugging shows that the issue is interconnect related. A bare platform > > device is created for each bwmon devices, which results in the average > > and peak bandwidth of the interconnect link to be set 'initially' to > > INT_MAX. The driver is supposed to call icc_sync_state() during probe, > > This is for interconnect providers, not consumers.
Ah, thanks for the clarification.
Still, for the INT_MAX bandwidth setting remains in place unless the device is probed.
> > which would set the initially bandwidths to 0 and determine the actually > > needed bandwidth. But since the driver isn't probed the initial > > bandwidths stay at INT_MAX. > > > > This isn't actually an issue with this patch, but how the interconnect > > framework deals with devices that are registered on the bus, but aren't > > probed (yet). Not sure how this would be best fixed. Georgi, do you have > > any ideas? > > Why the device is not probed (yet)? If it is registered, it will come > soon during boot up.
Because CONFIG_QCOM_ICC_BWMON is not enabled for the board in question (see above). It could be enabled as a short term mitigtion, however we shouldn't require drivers to be enabled just because the DT has a corresponding node.
| |