Skip to contentSkip to conversation

dt-bindings: pinctrl: microchip,pic32mzda-pinctrl: Convert to DT schema

PATCH Applied Udaya Kiran Challa 3 participants 5 messages Jul 31 – Aug 14

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH v5 1/2 dt-bindings: pinctrl: microchip,pic32mzda-pinctrl: Convert to DT schema

Convert Microchip PIC32 Pin Controller devicetree binding from legacy text format to DT schema.

---
Changelog:
Changes since v4:
- Add reference to pincfg-node.yaml

Link to v4:https://lore.kernel.org/all/[email protected]/

Changes since v3:
- Drop "|" from description fields
- Remove '#address-cells' and '#size-cells' properties from the schema
- Consolidate repeated pin-node property definitions into a single $defs/pin-node entry
- Replace the two patternProperties blocks with additionalProperties using oneOf to allow either:
- container nodes holding nested pin configuration nodes, or
- direct pin configuration nodes.
- Update $ref to use the absolute schema path /schemas/pinctrl/pinmux-node.yaml#

Link to v3:https://lore.kernel.org/all/[email protected]/

Changes since v2:
- Add container node for grouped pin configuration sub-nodes
- Correct regex patterns of direct and nested child nodes
- Fix interrupts values in uart2 example

Link to v2:https://lore.kernel.org/all/[email protected]/

Changes since v1:
- Add interrupts and clocks to uart2 example to satisfy uart schema validation
- Corect regex patterns to accept standard DT node naming conventions
- Add function property to top-level pin configuration nodes
- Remove restrictive enum from function property to support all mux functions

Link to v1:https://lore.kernel.org/all/[email protected]/

---
 .../pinctrl/microchip,pic32-pinctrl.txt       |  60 ----------
 .../pinctrl/microchip,pic32mzda-pinctrl.yaml  | 109 ++++++++++++++++++
 2 files changed, 109 insertions(+), 60 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/microchip,pic32-pinctrl.txt
 create mode 100644 Documentation/devicetree/bindings/pinctrl/microchip,pic32mzda-pinctrl.yaml
Documentation/devicetree/bindings/pinctrl/microchip,pic32-pinctrl.txt deleted +0 -60
deleted file mode 100644
index 51efd2085113..000000000000
@@ -1,60 +0,0 @@
-* Microchip PIC32 Pin Controller
-
-Please refer to pinctrl-bindings.txt, ../gpio/gpio.txt, and
-../interrupt-controller/interrupts.txt for generic information regarding
-pin controller, GPIO, and interrupt bindings.
-
-PIC32 'pin configuration node' is a node of a group of pins which can be
-used for a specific device or function. This node represents configurations of
-pins, optional function, and optional mux related configuration.
-
-Required properties for pin controller node:
- - compatible: "microchip,pic32mada-pinctrl"
- - reg: Address range of the pinctrl registers.
- - clocks: Clock specifier (see clock bindings for details)
-
-Required properties for pin configuration sub-nodes:
- - pins: List of pins to which the configuration applies.
-
-Optional properties for pin configuration sub-nodes:
-----------------------------------------------------
- - function: Mux function for the specified pins.
- - bias-pull-up: Enable weak pull-up.
- - bias-pull-down: Enable weak pull-down.
- - input-enable: Set the pin as an input.
- - output-low: Set the pin as an output level low.
- - output-high: Set the pin as an output level high.
- - microchip,digital: Enable digital I/O.
- - microchip,analog: Enable analog I/O.
-
-Example:
-
-pic32_pinctrl: pinctrl@1f801400{
-	#address-cells = <1>;
-	#size-cells = <1>;
-	compatible = "microchip,pic32mzda-pinctrl";
-	reg = <0x1f801400 0x400>;
-	clocks = <&rootclk PB1CLK>;
-
-	pinctrl_uart2: pinctrl_uart2 {
-		uart2-tx {
-			pins = "G9";
-			function = "U2TX";
-			microchip,digital;
-			output-low;
-		};
-		uart2-rx {
-			pins = "B0";
-			function = "U2RX";
-			microchip,digital;
-			input-enable;
-		};
-	};
-};
-
-uart2: serial@1f822200 {
-	compatible = "microchip,pic32mzda-uart";
-	reg = <0x1f822200 0x50>;
-	pinctrl-names = "default";
-	pinctrl-0 = <&pinctrl_uart2>;
-};
Documentation/devicetree/bindings/pinctrl/microchip,pic32mzda-pinctrl.yaml new file +109 -0

109 lines not on this page · raw message

Signature · 1 line
2.34.1
maintainer Reviewed-by on v5 1/2
#1 lore raw
Quoted 38 lines · Udaya Kiran Challa

Convert Microchip PIC32 Pin Controller devicetree binding from legacy text format to DT schema.

---
Changelog:
Changes since v4:
- Add reference to pincfg-node.yaml

Link to v4:https://lore.kernel.org/all/[email protected]/

Changes since v3:
- Drop "|" from description fields
- Remove '#address-cells' and '#size-cells' properties from the schema
- Consolidate repeated pin-node property definitions into a single $defs/pin-node entry
- Replace the two patternProperties blocks with additionalProperties using oneOf to allow either:
- container nodes holding nested pin configuration nodes, or
- direct pin configuration nodes.
- Update $ref to use the absolute schema path /schemas/pinctrl/pinmux-node.yaml#

Link to v3:https://lore.kernel.org/all/[email protected]/

Changes since v2:
- Add container node for grouped pin configuration sub-nodes
- Correct regex patterns of direct and nested child nodes
- Fix interrupts values in uart2 example

Link to v2:https://lore.kernel.org/all/[email protected]/

Changes since v1:
- Add interrupts and clocks to uart2 example to satisfy uart schema validation
- Corect regex patterns to accept standard DT node naming conventions
- Add function property to top-level pin configuration nodes
- Remove restrictive enum from function property to support all mux functions

Quoted 8 lines

Link to v1:https://lore.kernel.org/all/[email protected]/

---
 .../pinctrl/microchip,pic32-pinctrl.txt       |  60 ----------
 .../pinctrl/microchip,pic32mzda-pinctrl.yaml  | 109 ++++++++++++++++++
 2 files changed, 109 insertions(+), 60 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/microchip,pic32-pinctrl.txt
 create mode 100644 Documentation/devicetree/bindings/pinctrl/microchip,pic32mzda-pinctrl.yaml
author
#2 lore raw
Quoted 50 lines · Rob Herring (Arm)
Quoted 38 lines · Udaya Kiran Challa

Convert Microchip PIC32 Pin Controller devicetree binding from legacy text format to DT schema.

---
Changelog:
Changes since v4:
- Add reference to pincfg-node.yaml

Link to v4:https://lore.kernel.org/all/[email protected]/

Changes since v3:
- Drop "|" from description fields
- Remove '#address-cells' and '#size-cells' properties from the schema
- Consolidate repeated pin-node property definitions into a single $defs/pin-node entry
- Replace the two patternProperties blocks with additionalProperties using oneOf to allow either:
- container nodes holding nested pin configuration nodes, or
- direct pin configuration nodes.
- Update $ref to use the absolute schema path /schemas/pinctrl/pinmux-node.yaml#

Link to v3:https://lore.kernel.org/all/[email protected]/

Changes since v2:
- Add container node for grouped pin configuration sub-nodes
- Correct regex patterns of direct and nested child nodes
- Fix interrupts values in uart2 example

Link to v2:https://lore.kernel.org/all/[email protected]/

Changes since v1:
- Add interrupts and clocks to uart2 example to satisfy uart schema validation
- Corect regex patterns to accept standard DT node naming conventions
- Add function property to top-level pin configuration nodes
- Remove restrictive enum from function property to support all mux functions

Quoted 8 lines

Link to v1:https://lore.kernel.org/all/[email protected]/

---
 .../pinctrl/microchip,pic32-pinctrl.txt       |  60 ----------
 .../pinctrl/microchip,pic32mzda-pinctrl.yaml  | 109 ++++++++++++++++++
 2 files changed, 109 insertions(+), 60 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/microchip,pic32-pinctrl.txt
 create mode 100644 Documentation/devicetree/bindings/pinctrl/microchip,pic32mzda-pinctrl.yaml
Quoted 2 lines

Thank you, Rob. This patch has 2 parts(dt-binding & dtsi changes). Can you also please review dtsi changes?
https://lore.kernel.org/all/[email protected]/

Regards,
Udaya Kiran Challa

maintainer
#3 lore raw
Quoted 5 lines · Uday Kiran

On Tue, Aug 4, 2026 at 3:54 AM Rob Herring (Arm) <[email protected]> wrote:

Thank you, Rob. This patch has 2 parts(dt-binding & dtsi changes). Can you also please review dtsi changes?
https://lore.kernel.org/all/[email protected]/

The MIPS maintainer will deal with patch 2/2! The binding maintainers usually don't need to consider per-arch DTS(I) files.

Yours,
Linus Walleij

maintainer
#4 lore raw
In reply to Udaya Kiran Challa
Quoted 4 lines · Udaya Kiran Challa

Convert Microchip PIC32 Pin Controller devicetree binding from legacy text format to DT schema.

This patch (1/2) applied to the pin control tree.

I don't know where 2/2 went, it's not even on lore.

Resend as a separate patch if it's still to be considered or even exist.

Yours,
Linus Walleij