On Thu, 14 Mar 2024 at 14:47, Sumit Garg <sumit.garg@xxxxxxxxxx> wrote: > > On Thu, 14 Mar 2024 at 14:00, Krzysztof Kozlowski > <krzysztof.kozlowski@xxxxxxxxxx> wrote: > > > > >>> + > > >>> + compatible = "gpio-leds"; > > >>> + #address-cells = <1>; > > >>> + #size-cells = <0>; > > >> > > >> That's not a bus. > > >> > > >> It does not look like you tested the DTS against bindings. Please run > > >> `make dtbs_check W=1` (see > > >> Documentation/devicetree/bindings/writing-schema.rst or > > >> https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/ > > >> for instructions). > > > > > > I assumed earlier that W=1 is sufficient for DT schema checks but it > > > > W=1 as in make? No, it is not. It's flag changing the build process. > > dtbs_check is separate target. > > > > > looks like those are two different entities. However, I added these > > > address and size cells properties only to get rid of warnings reported > > > by W=1, see below: > > > > > > $ make qcom/apq8016-schneider-hmibsc.dtb W=1 > > > DTC arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dtb > > > arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts:96.9-103.5: > > > Warning (unit_address_vs_reg): /leds/led@5: node has a unit name, but > > > no reg or ranges property > > > arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts:105.9-112.5: > > > Warning (unit_address_vs_reg): /leds/led@6: node has a unit name, but > > > no reg or ranges property > > > > Wait, so you saw the warnings and ignored them? > > Sorry but you are ignoring what I am trying to say. > > > These are legitimate > > warnings, although they don't give you full answer. > > > > > <snip> > > > > > > So it looks like W=1 is reporting false warnings and we should rather > > > > Warnings were true. > > > > That's was my initial impression too and I fixed them via following diff: > > diff --git a/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts > b/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts > index 8f9cacf8de89..a366d3aff3c5 100644 > --- a/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts > +++ b/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts > @@ -92,8 +92,11 @@ leds { > pinctrl-0 = <&pm8916_mpps_leds>; > > compatible = "gpio-leds"; > + #address-cells = <1>; > + #size-cells = <0>; > > led@5 { > + reg = <5>; > label = "apq8016-hmibsc:green:wlan"; > function = LED_FUNCTION_WLAN; > color = <LED_COLOR_ID_YELLOW>; > @@ -103,6 +106,7 @@ led@5 { > }; > > led@6 { > + reg = <6>; > label = "apq8016-hmibsc:yellow:bt"; > function = LED_FUNCTION_BLUETOOTH; > color = <LED_COLOR_ID_BLUE>; > > But it then broke dtbs_check. See following breakage afterwards: $ make qcom/apq8016-schneider-hmibsc.dtb dtbs_check <snip> /home/sumit/build/upstream/linux/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dtb: leds: led@5: Unevaluated properties are not allowed ('reg' was unexpected) from schema $id: http://devicetree.org/schemas/leds/leds-gpio.yaml# /home/sumit/build/upstream/linux/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dtb: leds: led@6: Unevaluated properties are not allowed ('reg' was unexpected) from schema $id: http://devicetree.org/schemas/leds/leds-gpio.yaml# /home/sumit/build/upstream/linux/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dtb: leds: '#address-cells', '#size-cells' do not match any of the regexes: '(^led-[0-9a-f]$|led)', 'pinctrl-[0-9]+' <snip> > Are you aware of any other saner way to > fix those warnings properly? > -Sumit