Revert "dt-bindings: pinctrl: bcm4708-pinmux: rework binding to use syscon"

This reverts commit 2ae80900f239484069569380e1fc4340fd6e0089.

My rework was unneeded & wrong. It replaced a clear & correct "reg"
property usage with a custom "offset" one.

Back then I didn't understand how to properly handle CRU block binding.
I heard / read about syscon and tried to use it in a totally invalid
way. That change also missed Rob's review (obviously).

Northstar's pin controller is a simple consistent hardware block that
can be cleanly mapped using a 0x24 long reg space.

Since the rework commit there wasn't any follow up modifying in-kernel
DTS files to use the new binding. Broadcom also isn't known to use that
bugged binding. There is close to zero chance this revert may actually
cause problems / regressions.

This commit is a simple revert. Example binding may (should) be updated
/ cleaned up but that can be handled separately.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211008205938.29925-1-zajec5@gmail.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by Rafał Miłecki and committed by Linus Walleij 0398adae 64570fbc

+19 -15
+6 -5
Documentation/devicetree/bindings/mfd/brcm,cru.yaml
··· 32 "#size-cells": 33 const: 1 34 35 - pinctrl: 36 - $ref: ../pinctrl/brcm,ns-pinmux.yaml 37 - 38 patternProperties: 39 '^clock-controller@[a-f0-9]+$': 40 $ref: ../clock/brcm,iproc-clocks.yaml 41 42 '^thermal@[a-f0-9]+$': 43 $ref: ../thermal/brcm,ns-thermal.yaml ··· 73 "iprocfast", "sata1", "sata2"; 74 }; 75 76 - pinctrl { 77 compatible = "brcm,bcm4708-pinmux"; 78 - offset = <0x1c0>; 79 }; 80 81 thermal@2c0 {
··· 32 "#size-cells": 33 const: 1 34 35 patternProperties: 36 '^clock-controller@[a-f0-9]+$': 37 $ref: ../clock/brcm,iproc-clocks.yaml 38 + 39 + '^pin-controller@[a-f0-9]+$': 40 + $ref: ../pinctrl/brcm,ns-pinmux.yaml 41 42 '^thermal@[a-f0-9]+$': 43 $ref: ../thermal/brcm,ns-thermal.yaml ··· 73 "iprocfast", "sata1", "sata2"; 74 }; 75 76 + pin-controller@1c0 { 77 compatible = "brcm,bcm4708-pinmux"; 78 + reg = <0x1c0 0x24>; 79 + reg-names = "cru_gpio_control"; 80 }; 81 82 thermal@2c0 {
+13 -10
Documentation/devicetree/bindings/pinctrl/brcm,ns-pinmux.yaml
··· 17 18 A list of pins varies across chipsets so few bindings are available. 19 20 - Node of the pinmux must be nested in the CRU (Central Resource Unit) "syscon" 21 - node. 22 - 23 properties: 24 compatible: 25 enum: ··· 24 - brcm,bcm4709-pinmux 25 - brcm,bcm53012-pinmux 26 27 - offset: 28 - description: offset of pin registers in the CRU block 29 maxItems: 1 30 - $ref: /schemas/types.yaml#/definitions/uint32-array 31 32 patternProperties: 33 '-pins$': ··· 70 uart1_grp ] 71 72 required: 73 - - offset 74 75 additionalProperties: false 76 77 examples: 78 - | 79 cru@1800c100 { 80 - compatible = "syscon", "simple-mfd"; 81 reg = <0x1800c100 0x1a4>; 82 83 - pinctrl { 84 compatible = "brcm,bcm4708-pinmux"; 85 - offset = <0xc0>; 86 87 spi-pins { 88 function = "spi";
··· 17 18 A list of pins varies across chipsets so few bindings are available. 19 20 properties: 21 compatible: 22 enum: ··· 27 - brcm,bcm4709-pinmux 28 - brcm,bcm53012-pinmux 29 30 + reg: 31 maxItems: 1 32 + 33 + reg-names: 34 + const: cru_gpio_control 35 36 patternProperties: 37 '-pins$': ··· 72 uart1_grp ] 73 74 required: 75 + - reg 76 + - reg-names 77 78 additionalProperties: false 79 80 examples: 81 - | 82 cru@1800c100 { 83 + compatible = "simple-bus"; 84 reg = <0x1800c100 0x1a4>; 85 + ranges; 86 + #address-cells = <1>; 87 + #size-cells = <1>; 88 89 + pin-controller@1c0 { 90 compatible = "brcm,bcm4708-pinmux"; 91 + reg = <0x1c0 0x24>; 92 + reg-names = "cru_gpio_control"; 93 94 spi-pins { 95 function = "spi";