On 14/04/2024 00:14, Andrea della Porta wrote: > Signed-off-by: Andrea della Porta <andrea.porta@xxxxxxxx> 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@xxxxxxxx> > + > +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