[PATCH 1/2] dt-bindings: Documentation for qcom,llcc
From: Channa <hidden>
Date: 2018-02-01 20:47:09
Also in:
linux-arm-msm, lkml
On 2018-02-01 02:48, Mark Rutland wrote:
On Thu, Jan 25, 2018 at 03:55:12PM -0800, Channagoud Kadabi wrote:quoted
Documentation for last level cache controller device tree bindings, client bindings usage examples. Signed-off-by: Channagoud Kadabi <redacted> --- .../devicetree/bindings/arm/msm/qcom,llcc.txt | 93 ++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,llcc.txt +Example: + + qcom,system-cache at 1300000 { + compatible = "qcom,llcc-core", "syscon", "simple-mfd"; + reg = <0x1300000 0x50000>; + reg-names = "llcc_base"; + + llcc: qcom,sdm845-llcc { + compatible = "qcom,sdm845-llcc"; + #cache-cells = <1>; + max-slices = <32>; + }; + + qcom,llcc-ecc { + compatible = "qcom,llcc-ecc"; + }; + + qcom,llcc-amon { + compatible = "qcom,llcc-amon"; + qcom,fg-cnt = <0x7>; + }; + + };The "qcom,llcc-ecc" and "qcom,llcc-amon" bindings doesn't seem to be used by the driver in patch 2, and it's not clear how they are intended to be used, so I think they should go from the binding for now.
Sure I can remove them for now and add them when the I push other drivers for review.
I don't think you need syscon and simple-mfd, and I think you can
I used syscon and simple-mfd because three drivers touch the same address space. Driver 1: system cache core: The purpose of the driver is to partition the system cache and program the settings such as priority, lines to probe while doing a look up in the system cache, low power related settings etc. The driver also provides API for clients to query the cache slice details, activate and deactivate them. Driver 2: ECC to detect single and double bit errors in LLCC memory. Implemented using EDAC framework. Driver 3: AMON: Activity Monitor to detect live lock ups in the HW block. Implemented as SOC driver similar to driver #1. Since the hardware block has multiple functional units the driver is implemented to use syscon/regmap interface.
simplify the binding to a single node like:
qcom,system-cache at 1300000 {
compatible = "qcom,sdm845-llcc";
reg = <0x1300000 0x50000>;
#cache-slice-cells = <1>;
max-slices = <32>;
}
If ECC and AMON are option features, we can always add boolean
properties for those later, e.g. "has-ecc".
Thanks,
Mark.-- -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project