Hi Maxime,
On 05/09/23 17:27, Maxime Ripard wrote:
On Tue, Sep 05, 2023 at 05:11:43PM +0530, Vignesh Raman wrote:
Also, that node actually has a label ("usb"), defined here:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/qcom/msm8916.dtsi#n2322
So you can end up with
&usb {
dr_mode = "host";
};
... which is the simplest and thus more robust one.
Should it be,
&{/soc@0/usb} {
dr_mode = "host";
};
No. The &{/...} syntax refers to a path. &... refers to a label. They
are not equivalent.
Sorry I was not clear before.
With,
&usb {
dr_mode = "host";
};
The target is <0xffffffff> and fdtoverlay fails to apply the dtbo.
With,
&{/soc@0/usb} {
dr_mode = "host";
};
The target-path is "/soc@0/usb" (usb: usb@78d9000)
/ {
fragment@0 {
target-path = "/soc@0/usb";
__overlay__ {
dr_mode = "host";
};
};
};
So will use &{/...} syntax in this case.
Regards,
Vignesh