Message ID | 2d1272cad92ad618297a6683e9264e31b8f2df73.1713036964.git.andrea.porta@suse.com |
---|---|
State | New |
Headers | show |
Series | Add support for BCM2712 SD card controller | expand |
On Sun, 14 Apr 2024 00:14:23 +0200, Andrea della Porta wrote: > Signed-off-by: Andrea della Porta <andrea.porta@suse.com> > --- > .../pinctrl/brcm,bcm2712-pinctrl.yaml | 99 +++++++++++++++++++ > 1 file changed, 99 insertions(+) > create mode 100644 Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:46:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:47:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:48:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:49:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:50:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:51:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:52:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:53:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:54:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:55:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:56:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:57:18: [warning] wrong indentation: expected 18 but found 17 (indentation) ./Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml:58:18: [warning] wrong indentation: expected 18 but found 17 (indentation) dtschema/dtc warnings/errors: doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/2d1272cad92ad618297a6683e9264e31b8f2df73.1713036964.git.andrea.porta@suse.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
On 14/04/2024 00:14, Andrea della Porta wrote: > Signed-off-by: Andrea della Porta <andrea.porta@suse.com> Missing commit msg. We can't take empty commits. You have entire commit msg to describe the hardware, why not doing this? Plus, this wasn't even tested... > --- > .../pinctrl/brcm,bcm2712-pinctrl.yaml | 99 +++++++++++++++++++ > 1 file changed, 99 insertions(+) > create mode 100644 Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml > > diff --git a/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml > new file mode 100644 > index 000000000000..2908dfe99f3e > --- /dev/null > +++ b/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml > @@ -0,0 +1,99 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/pinctrl/brcm,bcm2712-pinctrl.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Broadcom BCM2712 pin controller > + > +maintainers: > + - Andrea della Porta <andrea.porta@suse.com> > + > +description: > + Bindings for Broadcom's BCM2712 memory-mapped pin controller. Drop "Bindings for" and describe hardware. Bindings do not have to tell they are bindings, it's obvious. They cannot be anything else. > + > +properties: > + compatible: > + enum: > + - brcm,bcm2712-pinctrl > + - brcm,bcm2712-aon-pinctrl > + - brcm,bcm2712c0-pinctrl > + - brcm,bcm2712c0-aon-pinctrl > + - brcm,bcm2712d0-pinctrl > + - brcm,bcm2712d0-aon-pinctrl > + > + reg: > + items: > + - description: pin control registers > + > +allOf: > + - $ref: pinctrl.yaml# > + > +required: > + - compatible > + - reg > + > +additionalProperties: > + anyOf: > + - type: object > + allOf: > + - $ref: pincfg-node.yaml# > + - $ref: pinmux-node.yaml# > + > + properties: > + function: > + enum: [ gpio, alt1, alt2, alt3, alt4, alt5, alt6, alt7, alt8, > + aon_cpu_standbyb, aon_fp_4sec_resetb, aon_gpclk, aon_pwm, > + arm_jtag, aud_fs_clk0, avs_pmu_bsc, bsc_m0, bsc_m1, bsc_m2, > + bsc_m3, clk_observe, ctl_hdmi_5v, enet0, enet0_mii, > + enet0_rgmii, ext_sc_clk, fl0, fl1, gpclk0, gpclk1, gpclk2, > + hdmi_tx0_auto_i2c, hdmi_tx0_bsc, hdmi_tx1_auto_i2c, > + hdmi_tx1_bsc, i2s_in, i2s_out, ir_in, mtsif, mtsif_alt, > + mtsif_alt1, pdm, pkt, pm_led_out, sc0, sd0, sd2, sd_card_a, > + sd_card_b, sd_card_c, sd_card_d, sd_card_e, sd_card_f, > + sd_card_g, spdif_out, spi_m, spi_s, sr_edm_sense, te0, te1, > + tsio, uart0, uart1, uart2, usb_pwr, usb_vbus, uui, vc_i2c0, > + vc_i2c3, vc_i2c4, vc_i2c5, vc_i2csl, vc_pcm, vc_pwm0, > + vc_pwm1, vc_spi0, vc_spi3, vc_spi4, vc_spi5, vc_uart0, > + vc_uart2, vc_uart3, vc_uart4 ] > + > + pins: > + items: > + pattern: "^((aon_)?s?gpio[0-6]?[0-9])|(emmc_(clk|cmd|dat[0-7]|ds))$" > + > + bias-disable: true > + bias-pull-down: true > + bias-pull-up: true > + additionalProperties: false > + > + - type: object > + additionalProperties: > + $ref: "#/additionalProperties/anyOf/0" > + > +examples: > + - | > + pinctrl: pinctrl@7d504100 { > + compatible = "brcm,bcm2712-pinctrl"; > + reg = <0x7d504100 0x30>; > + > + uarta_24_pins: uarta_24_pins { Underscores are not allowed. Please observe the rules of DTS coding style (see docs). > + pin_rts { > + function = "uart0"; > + pins = "gpio24"; > + bias-disable; > + }; > + > + pin_cts { > + function = "uart0"; > + pins = "gpio25"; > + bias-pull-up; > + }; > + }; > + > + spi10_gpio2: spi10_gpio2 { > + function = "vc_spi0"; > + pins = "gpio2", "gpio3", "gpio4"; Messed indentation. Keep 4 space. > + bias-disable; > + }; > + }; > +... Best regards, Krzysztof
On 4/13/2024 3:14 PM, Andrea della Porta wrote: > Signed-off-by: Andrea della Porta <andrea.porta@suse.com> > --- > .../pinctrl/brcm,bcm2712-pinctrl.yaml | 99 +++++++++++++++++++ > 1 file changed, 99 insertions(+) > create mode 100644 Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml > > diff --git a/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml > new file mode 100644 > index 000000000000..2908dfe99f3e > --- /dev/null > +++ b/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml > @@ -0,0 +1,99 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/pinctrl/brcm,bcm2712-pinctrl.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Broadcom BCM2712 pin controller This is not strictly speaking BCM2712 specific, the pin controller you describe is a Broadcom STB product line pin controller. Please describe it as such as and make BCM2712 a specific instance of the chip using that pin controller, see more comments on patch #4.
On Sun, Apr 14, 2024 at 5:45 PM Florian Fainelli <florian.fainelli@broadcom.com> wrote: > On 4/13/2024 3:14 PM, Andrea della Porta wrote: > > Signed-off-by: Andrea della Porta <andrea.porta@suse.com> > > +++ b/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml (...) > > +$id: http://devicetree.org/schemas/pinctrl/brcm,bcm2712-pinctrl.yaml# (...) > > +title: Broadcom BCM2712 pin controller > > This is not strictly speaking BCM2712 specific, the pin controller you > describe is a Broadcom STB product line pin controller. > > Please describe it as such as and make BCM2712 a specific instance of > the chip using that pin controller, see more comments on patch #4. So also the name of the bindings namespace should not be this one controller IMO but the name of the family, bcm-stb-pinctrl.yaml or so. Yours, Linus Walleij
diff --git a/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml new file mode 100644 index 000000000000..2908dfe99f3e --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml @@ -0,0 +1,99 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/pinctrl/brcm,bcm2712-pinctrl.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Broadcom BCM2712 pin controller + +maintainers: + - Andrea della Porta <andrea.porta@suse.com> + +description: + Bindings for Broadcom's BCM2712 memory-mapped pin controller. + +properties: + compatible: + enum: + - brcm,bcm2712-pinctrl + - brcm,bcm2712-aon-pinctrl + - brcm,bcm2712c0-pinctrl + - brcm,bcm2712c0-aon-pinctrl + - brcm,bcm2712d0-pinctrl + - brcm,bcm2712d0-aon-pinctrl + + reg: + items: + - description: pin control registers + +allOf: + - $ref: pinctrl.yaml# + +required: + - compatible + - reg + +additionalProperties: + anyOf: + - type: object + allOf: + - $ref: pincfg-node.yaml# + - $ref: pinmux-node.yaml# + + properties: + function: + enum: [ gpio, alt1, alt2, alt3, alt4, alt5, alt6, alt7, alt8, + aon_cpu_standbyb, aon_fp_4sec_resetb, aon_gpclk, aon_pwm, + arm_jtag, aud_fs_clk0, avs_pmu_bsc, bsc_m0, bsc_m1, bsc_m2, + bsc_m3, clk_observe, ctl_hdmi_5v, enet0, enet0_mii, + enet0_rgmii, ext_sc_clk, fl0, fl1, gpclk0, gpclk1, gpclk2, + hdmi_tx0_auto_i2c, hdmi_tx0_bsc, hdmi_tx1_auto_i2c, + hdmi_tx1_bsc, i2s_in, i2s_out, ir_in, mtsif, mtsif_alt, + mtsif_alt1, pdm, pkt, pm_led_out, sc0, sd0, sd2, sd_card_a, + sd_card_b, sd_card_c, sd_card_d, sd_card_e, sd_card_f, + sd_card_g, spdif_out, spi_m, spi_s, sr_edm_sense, te0, te1, + tsio, uart0, uart1, uart2, usb_pwr, usb_vbus, uui, vc_i2c0, + vc_i2c3, vc_i2c4, vc_i2c5, vc_i2csl, vc_pcm, vc_pwm0, + vc_pwm1, vc_spi0, vc_spi3, vc_spi4, vc_spi5, vc_uart0, + vc_uart2, vc_uart3, vc_uart4 ] + + pins: + items: + pattern: "^((aon_)?s?gpio[0-6]?[0-9])|(emmc_(clk|cmd|dat[0-7]|ds))$" + + bias-disable: true + bias-pull-down: true + bias-pull-up: true + additionalProperties: false + + - type: object + additionalProperties: + $ref: "#/additionalProperties/anyOf/0" + +examples: + - | + pinctrl: pinctrl@7d504100 { + compatible = "brcm,bcm2712-pinctrl"; + reg = <0x7d504100 0x30>; + + uarta_24_pins: uarta_24_pins { + pin_rts { + function = "uart0"; + pins = "gpio24"; + bias-disable; + }; + + pin_cts { + function = "uart0"; + pins = "gpio25"; + bias-pull-up; + }; + }; + + spi10_gpio2: spi10_gpio2 { + function = "vc_spi0"; + pins = "gpio2", "gpio3", "gpio4"; + bias-disable; + }; + }; +...
Signed-off-by: Andrea della Porta <andrea.porta@suse.com> --- .../pinctrl/brcm,bcm2712-pinctrl.yaml | 99 +++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 Documentation/devicetree/bindings/pinctrl/brcm,bcm2712-pinctrl.yaml