From: Aleksander Jan Bajkowski olek2@wp.pl
[ Upstream commit 2b9706ce84be9cb26be03e1ad2e43ec8bc3986be ]
This fixes the following warning: arch/mips/boot/dts/lantiq/danube_easy50712.dtb: stp@e100bb0 (lantiq,gpio-stp-xway): $nodename:0: 'stp@e100bb0' does not match '^gpio@[0-9a-f]+$' from schema $id: http://devicetree.org/schemas/gpio/gpio-stp-xway.yaml#
Signed-off-by: Aleksander Jan Bajkowski olek2@wp.pl Signed-off-by: Thomas Bogendoerfer tsbogend@alpha.franken.de Signed-off-by: Sasha Levin sashal@kernel.org ---
LLM Generated explanations, may be completely bogus:
YES
- What changed: The node name was renamed from `stp@e100bb0` to `gpio@e100bb0` under the `stp0` label in the EASY50712 DTS, aligning the node name with the binding while keeping all properties intact (arch/mips/boot/dts/lantiq/danube_easy50712.dts:99; compatible remains lantiq,gpio-stp-xway at arch/mips/boot/dts/lantiq/danube_easy50712.dts:101). - Binding compliance: The binding explicitly requires the nodename to match `^gpio@[0-9a-f]+$` (Documentation/devicetree/bindings/gpio/gpio- stp-xway.yaml:20), and its example shows `gpio@e100bb0` (Documentation/devicetree/bindings/gpio/gpio-stp-xway.yaml:84). This change removes the schema warning cited in the commit message. - Functional fix beyond a warning: On Lantiq/XWAY SoCs the PMU-based clock lookup for STP is registered against device-id `1e100bb0.gpio` (arch/mips/lantiq/xway/sysctrl.c:488). Platform device names for OF nodes are derived from the translated address and the node name (`of_device_make_bus_id`), yielding `1e100bb0.<node-name>` (drivers/of/device.c:284). With the old name, the device-id would be `1e100bb0.stp`, which does not match the PMU registration, causing `devm_clk_get_enabled(&pdev->dev, NULL)` to fail and the driver to abort probe (drivers/gpio/gpio-stp-xway.c:299). Renaming the node to `gpio@…` makes the dev_name `1e100bb0.gpio`, matching the PMU registration and allowing the driver to get and enable its clock. - Impact: Without this rename, the STP GPIO controller on this board is very likely non-functional due to clock lookup failure, not just “noisy” during `dtbs_check`. The change is a one-line DTS fix that restores driver probe on the EASY50712 reference board. - Risk assessment: - Scope: Single DTS node rename for one board; no code or architectural changes; no changes to `compatible`, `reg`, or gpio properties (arch/mips/boot/dts/lantiq/danube_easy50712.dts:99). - ABI considerations: While node path strings change, the phandle label `stp0` remains stable for intra-DT references. There are no in-tree references to the old path, and this is a reference board. The practical risk of breaking external overlays is low, and the fix enables the hardware to function. - Stable criteria fit: - Fixes a user-visible functional bug (driver failing to get its clock, thus failing probe). - Minimal, contained change in a non-critical subsystem (board DTS). - No new features or architectural churn. - Commit message targets a schema warning; however, code analysis shows it also resolves a real runtime issue due to `clkdev` dev_id mismatch.
Given the functional mismatch between the old node name-derived `dev_name` and the clock lookup key, this is an important, low-risk fix appropriate for stable backporting.
arch/mips/boot/dts/lantiq/danube_easy50712.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/mips/boot/dts/lantiq/danube_easy50712.dts b/arch/mips/boot/dts/lantiq/danube_easy50712.dts index ab70028dbefcf..c9f7886f57b8c 100644 --- a/arch/mips/boot/dts/lantiq/danube_easy50712.dts +++ b/arch/mips/boot/dts/lantiq/danube_easy50712.dts @@ -96,7 +96,7 @@ ethernet@e180000 { lantiq,tx-burst-length = <4>; };
- stp0: stp@e100bb0 { + stp0: gpio@e100bb0 { #gpio-cells = <2>; compatible = "lantiq,gpio-stp-xway"; gpio-controller;