On Tue, Mar 28, 2023 at 09:23:04AM +0200, Krzysztof Kozlowski wrote: > On 27/03/2023 18:14, Sumit Gupta wrote: > > For Tegra234, add the "nvidia,bpmp" property within the Memory > > Controller (MC) node to reference BPMP node. This is needed in > > the MC driver to pass the client info to the BPMP-FW when memory > > interconnect support is available. > > > > Signed-off-by: Sumit Gupta > > --- > > .../bindings/memory-controllers/nvidia,tegra186-mc.yaml | 7 +++++++ > > 1 file changed, 7 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra186-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra186-mc.yaml > > index 935d63d181d9..398d27bb2373 100644 > > --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra186-mc.yaml > > +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra186-mc.yaml > > @@ -58,6 +58,10 @@ properties: > > "#interconnect-cells": > > const: 1 > > > > + nvidia,bpmp: > > + $ref: /schemas/types.yaml#/definitions/phandle > > + description: phandle of the node representing the BPMP > > Why do you need this multiple times? Both in parent and all external-mc > children? We've had nvidia,bpmp in the external memory controller node since basically the beginning because we've always needed it there. For newer chips we now also need it for the memory controller. Ideally I think we would only have this in the MC and have the EMC driver reference it via the EMC's parent (i.e. MC), but that would break backwards-compatibility. Reaching into the EMC's DT node from the MC was another option that we discussed internally, but it didn't look right given how this is also needed by the MC. One thing we could potentially do is deprecate the nvidia,bpmp phandle in the EMC and only keep it as a fallback in the drivers in case the parent MC doesn't find it's own in the DT. Thierry