* [PATCH v4 00/15] Add support for Microchip LAN969x
@ 2025-12-29 18:37 Robert Marko
2025-12-29 18:37 ` [PATCH v4 01/15] dt-bindings: usb: Add Microchip LAN969x support Robert Marko
` (17 more replies)
0 siblings, 18 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko
This series adds support for the Microchip LAN969x switch SoC family.
Series is a bit long since after discussions in previous versions, it was
recommended[1][2] to add SoC specific compatibles for device nodes so it
includes the required bindings updates.
[1] https://lore.kernel.org/all/20251203-splendor-cubbyhole-eda2d6982b46@spud/
[2] https://lore.kernel.org/all/173412c8-c2fb-4c38-8de7-5b1c2eebdbf9@microchip.com/
[3] https://lore.kernel.org/all/20251203-duly-leotard-86b83bd840c6@spud/
[4] https://lore.kernel.org/all/756ead5d-8c9b-480d-8ae5-71667575ab7c@kernel.org/
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Changes in v4:
* Pick Acked-by from Andi for I2C bindings
* Move clock indexes from dt-bindings into a DTS header as suggested by
Krzysztof[4]
Changes in v3:
* Pick Acked-by from Conor
* Drop HWMON binding as it was picked into hwmon already
* Document EV23X71A into AT91 binding
* Drop SparX-5 and AT91 bindings merge
* Apply remark from Conor on DMA binding regarding merging cases
Changes in v2:
* Change LAN969x wildcards to LAN9691 in patches
* Split SoC DTSI and evaluation board patches
* Add the suggested binding changes required for SoC specific compatibles
* Merge SparX-5 and AT91 bindings as suggested[3]
Robert Marko (15):
dt-bindings: usb: Add Microchip LAN969x support
dt-bindings: mfd: atmel,sama5d2-flexcom: add microchip,lan9691-flexcom
dt-bindings: serial: atmel,at91-usart: add microchip,lan9691-usart
dt-bindings: spi: at91: add microchip,lan9691-spi
dt-bindings: i2c: atmel,at91sam: add microchip,lan9691-i2c
dt-bindings: rng: atmel,at91-trng: add microchip,lan9691-trng
dt-bindings: crypto: atmel,at91sam9g46-aes: add microchip,lan9691-aes
dt-bindings: crypto: atmel,at91sam9g46-sha: add microchip,lan9691-sha
dt-bindings: dma: atmel: add microchip,lan9691-dma
dt-bindings: net: mscc-miim: add microchip,lan9691-miim
dt-bindings: pinctrl: pinctrl-microchip-sgpio: add LAN969x
arm64: dts: microchip: add LAN969x clock header file
arm64: dts: microchip: add LAN969x support
dt-bindings: arm: AT91: document EV23X71A board
arm64: dts: microchip: add EV23X71A board
.../devicetree/bindings/arm/atmel-at91.yaml | 6 +
.../crypto/atmel,at91sam9g46-aes.yaml | 1 +
.../crypto/atmel,at91sam9g46-sha.yaml | 1 +
.../bindings/dma/atmel,sama5d4-dma.yaml | 4 +-
.../bindings/i2c/atmel,at91sam-i2c.yaml | 1 +
.../bindings/mfd/atmel,sama5d2-flexcom.yaml | 1 +
.../devicetree/bindings/net/mscc,miim.yaml | 11 +-
.../pinctrl/microchip,sparx5-sgpio.yaml | 20 +-
.../bindings/rng/atmel,at91-trng.yaml | 1 +
.../bindings/serial/atmel,at91-usart.yaml | 1 +
.../bindings/spi/atmel,at91rm9200-spi.yaml | 1 +
.../bindings/usb/microchip,lan9691-dwc3.yaml | 66 ++
arch/arm64/boot/dts/microchip/Makefile | 1 +
arch/arm64/boot/dts/microchip/clk-lan9691.h | 24 +
arch/arm64/boot/dts/microchip/lan9691.dtsi | 488 +++++++++++
.../boot/dts/microchip/lan9696-ev23x71a.dts | 757 ++++++++++++++++++
16 files changed, 1375 insertions(+), 9 deletions(-)
create mode 100644 Documentation/devicetree/bindings/usb/microchip,lan9691-dwc3.yaml
create mode 100644 arch/arm64/boot/dts/microchip/clk-lan9691.h
create mode 100644 arch/arm64/boot/dts/microchip/lan9691.dtsi
create mode 100644 arch/arm64/boot/dts/microchip/lan9696-ev23x71a.dts
--
2.52.0
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH v4 01/15] dt-bindings: usb: Add Microchip LAN969x support
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-30 18:06 ` Rob Herring (Arm)
2025-12-29 18:37 ` [PATCH v4 02/15] dt-bindings: mfd: atmel,sama5d2-flexcom: add microchip,lan9691-flexcom Robert Marko
` (16 subsequent siblings)
17 siblings, 1 reply; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko
Microchip LAN969x has DWC3 compatible controller, though limited to 2.0(HS)
speed, so document it.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
Changes in v2:
* Fix example indentation
.../bindings/usb/microchip,lan9691-dwc3.yaml | 66 +++++++++++++++++++
1 file changed, 66 insertions(+)
create mode 100644 Documentation/devicetree/bindings/usb/microchip,lan9691-dwc3.yaml
diff --git a/Documentation/devicetree/bindings/usb/microchip,lan9691-dwc3.yaml b/Documentation/devicetree/bindings/usb/microchip,lan9691-dwc3.yaml
new file mode 100644
index 000000000000..08113eac74b8
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/microchip,lan9691-dwc3.yaml
@@ -0,0 +1,66 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/microchip,lan9691-dwc3.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Microchip LAN969x SuperSpeed DWC3 USB SoC controller
+
+maintainers:
+ - Robert Marko <robert.marko@sartura.hr>
+
+select:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - microchip,lan9691-dwc3
+ required:
+ - compatible
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - microchip,lan9691-dwc3
+ - const: snps,dwc3
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ clocks:
+ items:
+ - description: Gated USB DRD clock
+ - description: Controller reference clock
+
+ clock-names:
+ items:
+ - const: bus_early
+ - const: ref
+
+unevaluatedProperties: false
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+ - clock-names
+
+allOf:
+ - $ref: snps,dwc3.yaml#
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+ usb@300000 {
+ compatible = "microchip,lan9691-dwc3", "snps,dwc3";
+ reg = <0x300000 0x80000>;
+ interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clks 12>, <&clks 11>;
+ clock-names = "bus_early", "ref";
+ };
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 02/15] dt-bindings: mfd: atmel,sama5d2-flexcom: add microchip,lan9691-flexcom
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
2025-12-29 18:37 ` [PATCH v4 01/15] dt-bindings: usb: Add Microchip LAN969x support Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 03/15] dt-bindings: serial: atmel,at91-usart: add microchip,lan9691-usart Robert Marko
` (15 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Add binding documentation for Microchip LAN969x.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
Changes in v3:
* Pick Acked-by from Conor
Documentation/devicetree/bindings/mfd/atmel,sama5d2-flexcom.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/mfd/atmel,sama5d2-flexcom.yaml b/Documentation/devicetree/bindings/mfd/atmel,sama5d2-flexcom.yaml
index c7d6cf96796c..5e5dec2f6564 100644
--- a/Documentation/devicetree/bindings/mfd/atmel,sama5d2-flexcom.yaml
+++ b/Documentation/devicetree/bindings/mfd/atmel,sama5d2-flexcom.yaml
@@ -20,6 +20,7 @@ properties:
- const: atmel,sama5d2-flexcom
- items:
- enum:
+ - microchip,lan9691-flexcom
- microchip,sam9x7-flexcom
- microchip,sama7d65-flexcom
- microchip,sama7g5-flexcom
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 03/15] dt-bindings: serial: atmel,at91-usart: add microchip,lan9691-usart
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
2025-12-29 18:37 ` [PATCH v4 01/15] dt-bindings: usb: Add Microchip LAN969x support Robert Marko
2025-12-29 18:37 ` [PATCH v4 02/15] dt-bindings: mfd: atmel,sama5d2-flexcom: add microchip,lan9691-flexcom Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 04/15] dt-bindings: spi: at91: add microchip,lan9691-spi Robert Marko
` (14 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Document Microchip LAN969x USART compatible.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
Changes in v3:
* Pick Acked-by from Conor
Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml b/Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml
index 087a8926f8b4..375cd50bc5cc 100644
--- a/Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml
+++ b/Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml
@@ -24,6 +24,7 @@ properties:
- const: atmel,at91sam9260-usart
- items:
- enum:
+ - microchip,lan9691-usart
- microchip,sam9x60-usart
- microchip,sam9x7-usart
- microchip,sama7d65-usart
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 04/15] dt-bindings: spi: at91: add microchip,lan9691-spi
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (2 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 03/15] dt-bindings: serial: atmel,at91-usart: add microchip,lan9691-usart Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2026-01-05 12:46 ` Mark Brown
2025-12-29 18:37 ` [PATCH v4 05/15] dt-bindings: i2c: atmel,at91sam: add microchip,lan9691-i2c Robert Marko
` (13 subsequent siblings)
17 siblings, 1 reply; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Document Microchip LAN969x SPI compatible.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
Changes in v3:
* Pick Acked-by from Conor
Documentation/devicetree/bindings/spi/atmel,at91rm9200-spi.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/spi/atmel,at91rm9200-spi.yaml b/Documentation/devicetree/bindings/spi/atmel,at91rm9200-spi.yaml
index 11885d0cc209..a8539b68a2f3 100644
--- a/Documentation/devicetree/bindings/spi/atmel,at91rm9200-spi.yaml
+++ b/Documentation/devicetree/bindings/spi/atmel,at91rm9200-spi.yaml
@@ -19,6 +19,7 @@ properties:
- const: atmel,at91rm9200-spi
- items:
- enum:
+ - microchip,lan9691-spi
- microchip,sam9x60-spi
- microchip,sam9x7-spi
- microchip,sama7d65-spi
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 05/15] dt-bindings: i2c: atmel,at91sam: add microchip,lan9691-i2c
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (3 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 04/15] dt-bindings: spi: at91: add microchip,lan9691-spi Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 06/15] dt-bindings: rng: atmel,at91-trng: add microchip,lan9691-trng Robert Marko
` (12 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Document Microchip LAN969x I2C compatible.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Acked-by: Andi Shyti <andi.shyti@kernel.org>
---
Changes in v4:
* Pick Acked-by from Andi
Changes in v3:
* Pick Acked-by from Conor
Documentation/devicetree/bindings/i2c/atmel,at91sam-i2c.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/i2c/atmel,at91sam-i2c.yaml b/Documentation/devicetree/bindings/i2c/atmel,at91sam-i2c.yaml
index e61cdb5b16ef..c83674c3183b 100644
--- a/Documentation/devicetree/bindings/i2c/atmel,at91sam-i2c.yaml
+++ b/Documentation/devicetree/bindings/i2c/atmel,at91sam-i2c.yaml
@@ -26,6 +26,7 @@ properties:
- microchip,sam9x60-i2c
- items:
- enum:
+ - microchip,lan9691-i2c
- microchip,sama7d65-i2c
- microchip,sama7g5-i2c
- microchip,sam9x7-i2c
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 06/15] dt-bindings: rng: atmel,at91-trng: add microchip,lan9691-trng
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (4 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 05/15] dt-bindings: i2c: atmel,at91sam: add microchip,lan9691-i2c Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 07/15] dt-bindings: crypto: atmel,at91sam9g46-aes: add microchip,lan9691-aes Robert Marko
` (11 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Document Microchip LAN9696X TRNG compatible.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
Changes in v3:
* Pick Acked-by from Conor
Documentation/devicetree/bindings/rng/atmel,at91-trng.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/rng/atmel,at91-trng.yaml b/Documentation/devicetree/bindings/rng/atmel,at91-trng.yaml
index f78614100ea8..3628251b8c51 100644
--- a/Documentation/devicetree/bindings/rng/atmel,at91-trng.yaml
+++ b/Documentation/devicetree/bindings/rng/atmel,at91-trng.yaml
@@ -19,6 +19,7 @@ properties:
- microchip,sam9x60-trng
- items:
- enum:
+ - microchip,lan9691-trng
- microchip,sama7g5-trng
- const: atmel,at91sam9g45-trng
- items:
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 07/15] dt-bindings: crypto: atmel,at91sam9g46-aes: add microchip,lan9691-aes
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (5 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 06/15] dt-bindings: rng: atmel,at91-trng: add microchip,lan9691-trng Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 08/15] dt-bindings: crypto: atmel,at91sam9g46-sha: add microchip,lan9691-sha Robert Marko
` (10 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Document Microchip LAN969x AES compatible.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
Changes in v3:
* Pick Acked-by from Conor
.../devicetree/bindings/crypto/atmel,at91sam9g46-aes.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-aes.yaml b/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-aes.yaml
index 19010f90198a..f3b6af6baf15 100644
--- a/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-aes.yaml
+++ b/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-aes.yaml
@@ -16,6 +16,7 @@ properties:
- const: atmel,at91sam9g46-aes
- items:
- enum:
+ - microchip,lan9691-aes
- microchip,sam9x7-aes
- microchip,sama7d65-aes
- const: atmel,at91sam9g46-aes
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 08/15] dt-bindings: crypto: atmel,at91sam9g46-sha: add microchip,lan9691-sha
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (6 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 07/15] dt-bindings: crypto: atmel,at91sam9g46-aes: add microchip,lan9691-aes Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 09/15] dt-bindings: dma: atmel: add microchip,lan9691-dma Robert Marko
` (9 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Document Microchip LAN969x SHA compatible.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
Changes in v3:
* Pick Acked-by from Conor
.../devicetree/bindings/crypto/atmel,at91sam9g46-sha.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-sha.yaml b/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-sha.yaml
index 39e076b275b3..16704ff0dd7f 100644
--- a/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-sha.yaml
+++ b/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-sha.yaml
@@ -16,6 +16,7 @@ properties:
- const: atmel,at91sam9g46-sha
- items:
- enum:
+ - microchip,lan9691-sha
- microchip,sam9x7-sha
- microchip,sama7d65-sha
- const: atmel,at91sam9g46-sha
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 09/15] dt-bindings: dma: atmel: add microchip,lan9691-dma
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (7 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 08/15] dt-bindings: crypto: atmel,at91sam9g46-sha: add microchip,lan9691-sha Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-30 18:06 ` Rob Herring (Arm)
2025-12-29 18:37 ` [PATCH v4 10/15] dt-bindings: net: mscc-miim: add microchip,lan9691-miim Robert Marko
` (8 subsequent siblings)
17 siblings, 1 reply; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko
Document Microchip LAN969x DMA compatible which is compatible to SAMA7G5.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
Changes in v3:
* Merged with microchip,sama7d65-dma since that also falls back to
microchip,sama7g5-dma
Documentation/devicetree/bindings/dma/atmel,sama5d4-dma.yaml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/dma/atmel,sama5d4-dma.yaml b/Documentation/devicetree/bindings/dma/atmel,sama5d4-dma.yaml
index 73fc13b902b3..197efb19b07a 100644
--- a/Documentation/devicetree/bindings/dma/atmel,sama5d4-dma.yaml
+++ b/Documentation/devicetree/bindings/dma/atmel,sama5d4-dma.yaml
@@ -33,7 +33,9 @@ properties:
- microchip,sam9x7-dma
- const: atmel,sama5d4-dma
- items:
- - const: microchip,sama7d65-dma
+ - enum:
+ - microchip,lan9691-dma
+ - microchip,sama7d65-dma
- const: microchip,sama7g5-dma
"#dma-cells":
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 10/15] dt-bindings: net: mscc-miim: add microchip,lan9691-miim
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (8 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 09/15] dt-bindings: dma: atmel: add microchip,lan9691-dma Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 11/15] dt-bindings: pinctrl: pinctrl-microchip-sgpio: add LAN969x Robert Marko
` (7 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Document Microchip LAN969x MIIM compatible.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
Changes in v3:
* Pick Acked-by from Conor
Documentation/devicetree/bindings/net/mscc,miim.yaml | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/Documentation/devicetree/bindings/net/mscc,miim.yaml b/Documentation/devicetree/bindings/net/mscc,miim.yaml
index 792f26b06b06..2207b33aee76 100644
--- a/Documentation/devicetree/bindings/net/mscc,miim.yaml
+++ b/Documentation/devicetree/bindings/net/mscc,miim.yaml
@@ -14,9 +14,14 @@ allOf:
properties:
compatible:
- enum:
- - mscc,ocelot-miim
- - microchip,lan966x-miim
+ oneOf:
+ - enum:
+ - mscc,ocelot-miim
+ - microchip,lan966x-miim
+ - items:
+ - enum:
+ - microchip,lan9691-miim
+ - const: mscc,ocelot-miim
"#address-cells":
const: 1
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 11/15] dt-bindings: pinctrl: pinctrl-microchip-sgpio: add LAN969x
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (9 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 10/15] dt-bindings: net: mscc-miim: add microchip,lan9691-miim Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 12/15] arm64: dts: microchip: add LAN969x clock header file Robert Marko
` (6 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko, Conor Dooley
Document LAN969x compatibles for SGPIO.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
Changes in v3:
* Pick Acked-by from Conor
.../pinctrl/microchip,sparx5-sgpio.yaml | 20 ++++++++++++++-----
1 file changed, 15 insertions(+), 5 deletions(-)
diff --git a/Documentation/devicetree/bindings/pinctrl/microchip,sparx5-sgpio.yaml b/Documentation/devicetree/bindings/pinctrl/microchip,sparx5-sgpio.yaml
index fa47732d7cef..9fbbafcdc063 100644
--- a/Documentation/devicetree/bindings/pinctrl/microchip,sparx5-sgpio.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/microchip,sparx5-sgpio.yaml
@@ -21,10 +21,15 @@ properties:
pattern: '^gpio@[0-9a-f]+$'
compatible:
- enum:
- - microchip,sparx5-sgpio
- - mscc,ocelot-sgpio
- - mscc,luton-sgpio
+ oneOf:
+ - enum:
+ - microchip,sparx5-sgpio
+ - mscc,ocelot-sgpio
+ - mscc,luton-sgpio
+ - items:
+ - enum:
+ - microchip,lan9691-sgpio
+ - const: microchip,sparx5-sgpio
'#address-cells':
const: 1
@@ -80,7 +85,12 @@ patternProperties:
type: object
properties:
compatible:
- const: microchip,sparx5-sgpio-bank
+ oneOf:
+ - items:
+ - enum:
+ - microchip,lan9691-sgpio-bank
+ - const: microchip,sparx5-sgpio-bank
+ - const: microchip,sparx5-sgpio-bank
reg:
description: |
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 12/15] arm64: dts: microchip: add LAN969x clock header file
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (10 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 11/15] dt-bindings: pinctrl: pinctrl-microchip-sgpio: add LAN969x Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 13/15] arm64: dts: microchip: add LAN969x support Robert Marko
` (5 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko
LAN969x uses hardware clock indexes, so document theses in a header to make
them humanly readable.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
Changes in v4:
* Move clock indexes from dt-bindings to a DTS header
Changes in v2:
* Rename file to microchip,lan9691.h
arch/arm64/boot/dts/microchip/clk-lan9691.h | 24 +++++++++++++++++++++
1 file changed, 24 insertions(+)
create mode 100644 arch/arm64/boot/dts/microchip/clk-lan9691.h
diff --git a/arch/arm64/boot/dts/microchip/clk-lan9691.h b/arch/arm64/boot/dts/microchip/clk-lan9691.h
new file mode 100644
index 000000000000..f0006a603747
--- /dev/null
+++ b/arch/arm64/boot/dts/microchip/clk-lan9691.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
+
+#ifndef _DTS_CLK_LAN9691_H
+#define _DTS_CLK_LAN9691_H
+
+#define GCK_ID_QSPI0 0
+#define GCK_ID_QSPI2 1
+#define GCK_ID_SDMMC0 2
+#define GCK_ID_SDMMC1 3
+#define GCK_ID_MCAN0 4
+#define GCK_ID_MCAN1 5
+#define GCK_ID_FLEXCOM0 6
+#define GCK_ID_FLEXCOM1 7
+#define GCK_ID_FLEXCOM2 8
+#define GCK_ID_FLEXCOM3 9
+#define GCK_ID_TIMER 10
+#define GCK_ID_USB_REFCLK 11
+
+/* Gate clocks */
+#define GCK_GATE_USB_DRD 12
+#define GCK_GATE_MCRAMC 13
+#define GCK_GATE_HMATRIX 14
+
+#endif
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 13/15] arm64: dts: microchip: add LAN969x support
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (11 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 12/15] arm64: dts: microchip: add LAN969x clock header file Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-29 18:37 ` [PATCH v4 14/15] dt-bindings: arm: AT91: document EV23X71A board Robert Marko
` (4 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko
Add support for Microchip LAN969x switch SoC series by adding the SoC DTSI.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
Changes in v4:
* Adapt to clock indexes now being in a DTS header only
Changes in v2:
* Rename to lan9691
* Split SoC DTSI and evaluation board commits
* Use SoC specific compatibles for devices
* Alphanumerically sort remaining nodes
* Apply DTS coding style
arch/arm64/boot/dts/microchip/lan9691.dtsi | 488 +++++++++++++++++++++
1 file changed, 488 insertions(+)
create mode 100644 arch/arm64/boot/dts/microchip/lan9691.dtsi
diff --git a/arch/arm64/boot/dts/microchip/lan9691.dtsi b/arch/arm64/boot/dts/microchip/lan9691.dtsi
new file mode 100644
index 000000000000..235e56bebbdb
--- /dev/null
+++ b/arch/arm64/boot/dts/microchip/lan9691.dtsi
@@ -0,0 +1,488 @@
+// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
+/*
+ * Copyright (c) 2025 Microchip Technology Inc. and its subsidiaries.
+ */
+
+#include <dt-bindings/dma/at91.h>
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/mfd/at91-usart.h>
+#include <dt-bindings/mfd/atmel-flexcom.h>
+
+#include "clk-lan9691.h"
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ model = "Microchip LAN969x";
+ compatible = "microchip,lan9691";
+ interrupt-parent = <&gic>;
+
+ clocks {
+ fx100_clk: fx100-clk {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <320000000>;
+ };
+
+ cpu_clk: cpu-clk {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <1000000000>;
+ };
+
+ ddr_clk: ddr-clk {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <600000000>;
+ };
+
+ fabric_clk: fabric-clk {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <250000000>;
+ };
+ };
+
+ cpus {
+ #address-cells = <2>;
+ #size-cells = <0>;
+
+ cpu0: cpu@0 {
+ compatible = "arm,cortex-a53";
+ device_type = "cpu";
+ reg = <0x0 0x0>;
+ next-level-cache = <&l2_0>;
+ };
+
+ l2_0: l2-cache {
+ compatible = "cache";
+ cache-level = <2>;
+ cache-unified;
+ };
+ };
+
+ psci {
+ compatible = "arm,psci-1.0";
+ method = "smc";
+ };
+
+ pmu {
+ compatible = "arm,cortex-a53-pmu";
+ interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ timer {
+ compatible = "arm,armv8-timer";
+ interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, /* Secure Phys IRQ */
+ <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, /* Non-secure Phys IRQ */
+ <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, /* Virt IRQ */
+ <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; /* Hyp IRQ */
+ };
+
+ axi: axi {
+ compatible = "simple-bus";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+
+ usb: usb@300000 {
+ compatible = "microchip,lan9691-dwc3", "snps,dwc3";
+ reg = <0x300000 0x80000>;
+ interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clks GCK_GATE_USB_DRD>,
+ <&clks GCK_ID_USB_REFCLK>;
+ clock-names = "bus_early", "ref";
+ assigned-clocks = <&clks GCK_ID_USB_REFCLK>;
+ assigned-clock-rates = <60000000>;
+ maximum-speed = "high-speed";
+ dr_mode = "host";
+ status = "disabled";
+ };
+
+ flx0: flexcom@e0040000 {
+ compatible = "microchip,lan9691-flexcom", "atmel,sama5d2-flexcom";
+ reg = <0xe0040000 0x100>;
+ ranges = <0x0 0xe0040000 0x800>;
+ clocks = <&clks GCK_ID_FLEXCOM0>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ status = "disabled";
+
+ usart0: serial@200 {
+ compatible = "microchip,lan9691-usart", "atmel,at91sam9260-usart";
+ reg = <0x200 0x200>;
+ interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(3)>,
+ <&dma AT91_XDMAC_DT_PERID(2)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "usart";
+ atmel,fifo-size = <32>;
+ atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
+ status = "disabled";
+ };
+
+ spi0: spi@400 {
+ compatible = "microchip,lan9691-spi", "atmel,at91rm9200-spi";
+ reg = <0x400 0x200>;
+ interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(3)>,
+ <&dma AT91_XDMAC_DT_PERID(2)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "spi_clk";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ atmel,fifo-size = <32>;
+ status = "disabled";
+ };
+
+ i2c0: i2c@600 {
+ compatible = "microchip,lan9691-i2c", "microchip,sam9x60-i2c";
+ reg = <0x600 0x200>;
+ interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(3)>,
+ <&dma AT91_XDMAC_DT_PERID(2)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+ };
+ };
+
+ flx1: flexcom@e0044000 {
+ compatible = "microchip,lan9691-flexcom", "atmel,sama5d2-flexcom";
+ reg = <0xe0044000 0x100>;
+ ranges = <0x0 0xe0044000 0x800>;
+ clocks = <&clks GCK_ID_FLEXCOM1>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ status = "disabled";
+
+ usart1: serial@200 {
+ compatible = "microchip,lan9691-usart", "atmel,at91sam9260-usart";
+ reg = <0x200 0x200>;
+ interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(3)>,
+ <&dma AT91_XDMAC_DT_PERID(2)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "usart";
+ atmel,fifo-size = <32>;
+ atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
+ status = "disabled";
+ };
+
+ spi1: spi@400 {
+ compatible = "microchip,lan9691-spi", "atmel,at91rm9200-spi";
+ reg = <0x400 0x200>;
+ interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(3)>,
+ <&dma AT91_XDMAC_DT_PERID(2)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "spi_clk";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ atmel,fifo-size = <32>;
+ status = "disabled";
+ };
+
+ i2c1: i2c@600 {
+ compatible = "microchip,lan9691-i2c", "microchip,sam9x60-i2c";
+ reg = <0x600 0x200>;
+ interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(3)>,
+ <&dma AT91_XDMAC_DT_PERID(2)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+ };
+ };
+
+ trng: rng@e0048000 {
+ compatible = "microchip,lan9691-trng", "atmel,at91sam9g45-trng";
+ reg = <0xe0048000 0x100>;
+ clocks = <&fabric_clk>;
+ status = "disabled";
+ };
+
+ aes: crypto@e004c000 {
+ compatible = "microchip,lan9691-aes", "atmel,at91sam9g46-aes";
+ reg = <0xe004c000 0x100>;
+ interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(12)>,
+ <&dma AT91_XDMAC_DT_PERID(13)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "aes_clk";
+ status = "disabled";
+ };
+
+ flx2: flexcom@e0060000 {
+ compatible = "microchip,lan9691-flexcom", "atmel,sama5d2-flexcom";
+ reg = <0xe0060000 0x100>;
+ ranges = <0x0 0xe0060000 0x800>;
+ clocks = <&clks GCK_ID_FLEXCOM2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ status = "disabled";
+
+ usart2: serial@200 {
+ compatible = "microchip,lan9691-usart", "atmel,at91sam9260-usart";
+ reg = <0x200 0x200>;
+ interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(7)>,
+ <&dma AT91_XDMAC_DT_PERID(6)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "usart";
+ atmel,fifo-size = <32>;
+ atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
+ status = "disabled";
+ };
+
+ spi2: spi@400 {
+ compatible = "microchip,lan9691-spi", "atmel,at91rm9200-spi";
+ reg = <0x400 0x200>;
+ interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(7)>,
+ <&dma AT91_XDMAC_DT_PERID(6)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "spi_clk";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ atmel,fifo-size = <32>;
+ status = "disabled";
+ };
+
+ i2c2: i2c@600 {
+ compatible = "microchip,lan9691-i2c", "microchip,sam9x60-i2c";
+ reg = <0x600 0x200>;
+ interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(7)>,
+ <&dma AT91_XDMAC_DT_PERID(6)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+ };
+ };
+
+ flx3: flexcom@e0064000 {
+ compatible = "microchip,lan9691-flexcom", "atmel,sama5d2-flexcom";
+ reg = <0xe0064000 0x100>;
+ ranges = <0x0 0xe0064000 0x800>;
+ clocks = <&clks GCK_ID_FLEXCOM3>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ status = "disabled";
+
+ usart3: serial@200 {
+ compatible = "microchip,lan9691-usart", "atmel,at91sam9260-usart";
+ reg = <0x200 0x200>;
+ interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(9)>,
+ <&dma AT91_XDMAC_DT_PERID(8)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "usart";
+ atmel,fifo-size = <32>;
+ atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
+ status = "disabled";
+ };
+
+ spi3: spi@400 {
+ compatible = "microchip,lan9691-spi", "atmel,at91rm9200-spi";
+ reg = <0x400 0x200>;
+ interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(9)>,
+ <&dma AT91_XDMAC_DT_PERID(8)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ clock-names = "spi_clk";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ atmel,fifo-size = <32>;
+ status = "disabled";
+ };
+
+ i2c3: i2c@600 {
+ compatible = "microchip,lan9691-i2c", "microchip,sam9x60-i2c";
+ reg = <0x600 0x200>;
+ interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(9)>,
+ <&dma AT91_XDMAC_DT_PERID(8)>;
+ dma-names = "tx", "rx";
+ clocks = <&fabric_clk>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+ };
+ };
+
+ dma: dma-controller@e0068000 {
+ compatible = "microchip,lan9691-dma", "microchip,sama7g5-dma";
+ reg = <0xe0068000 0x1000>;
+ interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
+ dma-channels = <16>;
+ #dma-cells = <1>;
+ clocks = <&fabric_clk>;
+ clock-names = "dma_clk";
+ };
+
+ sha: crypto@e006c000 {
+ compatible = "microchip,lan9691-sha", "atmel,at91sam9g46-sha";
+ reg = <0xe006c000 0xec>;
+ interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
+ dmas = <&dma AT91_XDMAC_DT_PERID(14)>;
+ dma-names = "tx";
+ clocks = <&fabric_clk>;
+ clock-names = "sha_clk";
+ status = "disabled";
+ };
+
+ timer: timer@e008c000 {
+ compatible = "snps,dw-apb-timer";
+ reg = <0xe008c000 0x400>;
+ clocks = <&fabric_clk>;
+ clock-names = "timer";
+ interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ watchdog: watchdog@e0090000 {
+ compatible = "snps,dw-wdt";
+ reg = <0xe0090000 0x1000>;
+ interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&fabric_clk>;
+ };
+
+ cpu_ctrl: syscon@e00c0000 {
+ compatible = "microchip,lan966x-cpu-syscon", "syscon";
+ reg = <0xe00c0000 0x350>;
+ };
+
+ switch: switch@e00c0000 {
+ compatible = "microchip,lan9691-switch";
+ reg = <0xe00c0000 0x0010000>,
+ <0xe2010000 0x1410000>;
+ reg-names = "cpu", "devices";
+ interrupt-names = "xtr", "fdma", "ptp";
+ interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
+ resets = <&reset 0>;
+ reset-names = "switch";
+ status = "disabled";
+ };
+
+ clks: clock-controller@e00c00b4 {
+ compatible = "microchip,lan9691-gck";
+ reg = <0xe00c00b4 0x30>, <0xe00c0308 0x4>;
+ #clock-cells = <1>;
+ clocks = <&cpu_clk>, <&ddr_clk>, <&fx100_clk>;
+ clock-names = "cpu", "ddr", "sys";
+ };
+
+ reset: reset-controller@e201000c {
+ compatible = "microchip,lan9691-switch-reset",
+ "microchip,lan966x-switch-reset";
+ reg = <0xe201000c 0x4>;
+ reg-names = "gcb";
+ #reset-cells = <1>;
+ cpu-syscon = <&cpu_ctrl>;
+ };
+
+ gpio: pinctrl@e20100d4 {
+ compatible = "microchip,lan9691-pinctrl";
+ reg = <0xe20100d4 0xd4>,
+ <0xe2010370 0xa8>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-ranges = <&gpio 0 0 66>;
+ interrupt-controller;
+ interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
+ #interrupt-cells = <2>;
+ };
+
+ mdio0: mdio@e20101a8 {
+ compatible = "microchip,lan9691-miim", "mscc,ocelot-miim";
+ reg = <0xe20101a8 0x24>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&fx100_clk>;
+ status = "disabled";
+ };
+
+ mdio1: mdio@e20101cc {
+ compatible = "microchip,lan9691-miim", "mscc,ocelot-miim";
+ reg = <0xe20101cc 0x24>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ clocks = <&fx100_clk>;
+ status = "disabled";
+ };
+
+ sgpio: gpio@e2010230 {
+ compatible = "microchip,lan9691-sgpio", "microchip,sparx5-sgpio";
+ reg = <0xe2010230 0x118>;
+ clocks = <&fx100_clk>;
+ resets = <&reset 0>;
+ reset-names = "switch";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+
+ sgpio_in: gpio@0 {
+ compatible = "microchip,lan9691-sgpio-bank",
+ "microchip,sparx5-sgpio-bank";
+ reg = <0>;
+ gpio-controller;
+ #gpio-cells = <3>;
+ interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-controller;
+ #interrupt-cells = <3>;
+ };
+
+ sgpio_out: gpio@1 {
+ compatible = "microchip,lan9691-sgpio-bank",
+ "microchip,sparx5-sgpio-bank";
+ reg = <1>;
+ gpio-controller;
+ #gpio-cells = <3>;
+ };
+ };
+
+ tmon: hwmon@e2020100 {
+ compatible = "microchip,lan9691-temp", "microchip,sparx5-temp";
+ reg = <0xe2020100 0xc>;
+ clocks = <&fx100_clk>;
+ #thermal-sensor-cells = <0>;
+ };
+
+ serdes: serdes@e3410000 {
+ compatible = "microchip,lan9691-serdes";
+ reg = <0xe3410000 0x150000>;
+ #phy-cells = <1>;
+ clocks = <&fabric_clk>;
+ };
+
+ gic: interrupt-controller@e8c11000 {
+ compatible = "arm,gic-400";
+ reg = <0xe8c11000 0x1000>, /* Distributor GICD_ */
+ <0xe8c12000 0x2000>, /* CPU interface GICC_ */
+ <0xe8c14000 0x2000>, /* Virt interface control */
+ <0xe8c16000 0x2000>; /* Virt CPU interface */
+ #interrupt-cells = <3>;
+ interrupt-controller;
+ interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+ };
+ };
+};
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 14/15] dt-bindings: arm: AT91: document EV23X71A board
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (12 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 13/15] arm64: dts: microchip: add LAN969x support Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2025-12-30 17:47 ` Conor Dooley
2025-12-29 18:37 ` [PATCH v4 15/15] arm64: dts: microchip: add " Robert Marko
` (3 subsequent siblings)
17 siblings, 1 reply; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko
Microchip EV23X71A board is an LAN9696 based evaluation board.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
Documentation/devicetree/bindings/arm/atmel-at91.yaml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/atmel-at91.yaml b/Documentation/devicetree/bindings/arm/atmel-at91.yaml
index 3a34b7a2e8d4..b0065e2f3713 100644
--- a/Documentation/devicetree/bindings/arm/atmel-at91.yaml
+++ b/Documentation/devicetree/bindings/arm/atmel-at91.yaml
@@ -241,6 +241,12 @@ properties:
- const: microchip,lan9668
- const: microchip,lan966
+ - description: Microchip LAN9696 EV23X71A Evaluation Board
+ items:
+ - const: microchip,ev23x71a
+ - const: microchip,lan9696
+ - const: microchip,lan9691
+
- description: Kontron KSwitch D10 MMT series
items:
- enum:
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 15/15] arm64: dts: microchip: add EV23X71A board
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (13 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 14/15] dt-bindings: arm: AT91: document EV23X71A board Robert Marko
@ 2025-12-29 18:37 ` Robert Marko
2026-01-01 17:41 ` (subset) [PATCH v4 00/15] Add support for Microchip LAN969x Vinod Koul
` (2 subsequent siblings)
17 siblings, 0 replies; 23+ messages in thread
From: Robert Marko @ 2025-12-29 18:37 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb
Cc: luka.perkov, Robert Marko
Microchip EV23X71A is an LAN9696 based evaluation board.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
Changes in v2:
* Split from SoC DTSI commit
* Apply DTS coding style
* Enclose array in i2c-mux
* Alphanumericaly sort nodes
* Change management port mode to RGMII-ID
arch/arm64/boot/dts/microchip/Makefile | 1 +
.../boot/dts/microchip/lan9696-ev23x71a.dts | 757 ++++++++++++++++++
2 files changed, 758 insertions(+)
create mode 100644 arch/arm64/boot/dts/microchip/lan9696-ev23x71a.dts
diff --git a/arch/arm64/boot/dts/microchip/Makefile b/arch/arm64/boot/dts/microchip/Makefile
index c6e0313eea0f..09d16fc1ce9a 100644
--- a/arch/arm64/boot/dts/microchip/Makefile
+++ b/arch/arm64/boot/dts/microchip/Makefile
@@ -1,4 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
+dtb-$(CONFIG_ARCH_LAN969X) += lan9696-ev23x71a.dtb
dtb-$(CONFIG_ARCH_SPARX5) += sparx5_pcb125.dtb
dtb-$(CONFIG_ARCH_SPARX5) += sparx5_pcb134.dtb sparx5_pcb134_emmc.dtb
dtb-$(CONFIG_ARCH_SPARX5) += sparx5_pcb135.dtb sparx5_pcb135_emmc.dtb
diff --git a/arch/arm64/boot/dts/microchip/lan9696-ev23x71a.dts b/arch/arm64/boot/dts/microchip/lan9696-ev23x71a.dts
new file mode 100644
index 000000000000..435df455b078
--- /dev/null
+++ b/arch/arm64/boot/dts/microchip/lan9696-ev23x71a.dts
@@ -0,0 +1,757 @@
+// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
+/*
+ * Copyright (c) 2025 Microchip Technology Inc. and its subsidiaries.
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/leds/common.h>
+#include "lan9691.dtsi"
+
+/ {
+ model = "Microchip EV23X71A";
+ compatible = "microchip,ev23x71a", "microchip,lan9696", "microchip,lan9691";
+
+ aliases {
+ serial0 = &usart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ gpio-restart {
+ compatible = "gpio-restart";
+ gpios = <&gpio 60 GPIO_ACTIVE_LOW>;
+ open-source;
+ priority = <200>;
+ };
+
+ i2c-mux {
+ compatible = "i2c-mux-gpio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ i2c-parent = <&i2c3>;
+ idle-state = <0x8>;
+ mux-gpios = <&sgpio_out 0 1 GPIO_ACTIVE_HIGH>,
+ <&sgpio_out 0 2 GPIO_ACTIVE_HIGH>,
+ <&sgpio_out 0 3 GPIO_ACTIVE_HIGH>;
+ settle-time-us = <100>;
+
+ i2c_sfp0: i2c@0 {
+ reg = <0x0>;
+ };
+
+ i2c_sfp1: i2c@1 {
+ reg = <0x1>;
+ };
+
+ i2c_sfp2: i2c@2 {
+ reg = <0x2>;
+ };
+
+ i2c_sfp3: i2c@3 {
+ reg = <0x3>;
+ };
+
+ i2c_poe: i2c@7 {
+ reg = <0x7>;
+ };
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-status {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_STATUS;
+ gpios = <&gpio 61 GPIO_ACTIVE_LOW>;
+ };
+
+ led-sfp1-green {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_LAN;
+ function-enumerator = <0>;
+ gpios = <&sgpio_out 6 0 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+
+ led-sfp1-yellow {
+ color = <LED_COLOR_ID_YELLOW>;
+ function = LED_FUNCTION_LAN;
+ function-enumerator = <0>;
+ gpios = <&sgpio_out 6 1 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+
+ led-sfp2-green {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_LAN;
+ function-enumerator = <1>;
+ gpios = <&sgpio_out 7 0 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+
+ led-sfp2-yellow {
+ color = <LED_COLOR_ID_YELLOW>;
+ function = LED_FUNCTION_LAN;
+ function-enumerator = <1>;
+ gpios = <&sgpio_out 7 1 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+
+ led-sfp3-green {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_LAN;
+ function-enumerator = <2>;
+ gpios = <&sgpio_out 8 0 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+
+ led-sfp3-yellow {
+ color = <LED_COLOR_ID_YELLOW>;
+ function = LED_FUNCTION_LAN;
+ function-enumerator = <2>;
+ gpios = <&sgpio_out 8 1 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+
+ led-sfp4-green {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_LAN;
+ function-enumerator = <3>;
+ gpios = <&sgpio_out 9 0 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+
+ led-sfp4-yellow {
+ color = <LED_COLOR_ID_YELLOW>;
+ function = LED_FUNCTION_LAN;
+ function-enumerator = <3>;
+ gpios = <&sgpio_out 9 1 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+ };
+
+ mux-controller {
+ compatible = "gpio-mux";
+ #mux-control-cells = <0>;
+ mux-gpios = <&sgpio_out 1 2 GPIO_ACTIVE_LOW>,
+ <&sgpio_out 1 3 GPIO_ACTIVE_LOW>;
+ };
+
+ sfp0: sfp0 {
+ compatible = "sff,sfp";
+ i2c-bus = <&i2c_sfp0>;
+ tx-disable-gpios = <&sgpio_out 6 2 GPIO_ACTIVE_HIGH>;
+ los-gpios = <&sgpio_in 6 0 GPIO_ACTIVE_HIGH>;
+ mod-def0-gpios = <&sgpio_in 6 1 GPIO_ACTIVE_LOW>;
+ tx-fault-gpios = <&sgpio_in 6 2 GPIO_ACTIVE_HIGH>;
+ };
+
+ sfp1: sfp1 {
+ compatible = "sff,sfp";
+ i2c-bus = <&i2c_sfp1>;
+ tx-disable-gpios = <&sgpio_out 7 2 GPIO_ACTIVE_HIGH>;
+ los-gpios = <&sgpio_in 7 0 GPIO_ACTIVE_HIGH>;
+ mod-def0-gpios = <&sgpio_in 7 1 GPIO_ACTIVE_LOW>;
+ tx-fault-gpios = <&sgpio_in 7 2 GPIO_ACTIVE_HIGH>;
+ };
+
+ sfp2: sfp2 {
+ compatible = "sff,sfp";
+ i2c-bus = <&i2c_sfp2>;
+ tx-disable-gpios = <&sgpio_out 8 2 GPIO_ACTIVE_HIGH>;
+ los-gpios = <&sgpio_in 8 0 GPIO_ACTIVE_HIGH>;
+ mod-def0-gpios = <&sgpio_in 8 1 GPIO_ACTIVE_LOW>;
+ tx-fault-gpios = <&sgpio_in 8 2 GPIO_ACTIVE_HIGH>;
+ };
+
+ sfp3: sfp3 {
+ compatible = "sff,sfp";
+ i2c-bus = <&i2c_sfp3>;
+ tx-disable-gpios = <&sgpio_out 9 2 GPIO_ACTIVE_HIGH>;
+ los-gpios = <&sgpio_in 9 0 GPIO_ACTIVE_HIGH>;
+ mod-def0-gpios = <&sgpio_in 9 1 GPIO_ACTIVE_LOW>;
+ tx-fault-gpios = <&sgpio_in 9 2 GPIO_ACTIVE_HIGH>;
+ };
+};
+
+&gpio {
+ emmc_sd_pins: emmc-sd-pins {
+ /* eMMC_SD - CMD, CLK, D0, D1, D2, D3, D4, D5, D6, D7, RSTN */
+ pins = "GPIO_14", "GPIO_15", "GPIO_16", "GPIO_17",
+ "GPIO_18", "GPIO_19", "GPIO_20", "GPIO_21",
+ "GPIO_22", "GPIO_23", "GPIO_24";
+ function = "emmc_sd";
+ };
+
+ fan_pins: fan-pins {
+ pins = "GPIO_25", "GPIO_26";
+ function = "fan";
+ };
+
+ fc0_pins: fc0-pins {
+ pins = "GPIO_3", "GPIO_4";
+ function = "fc";
+ };
+
+ fc2_pins: fc2-pins {
+ pins = "GPIO_64", "GPIO_65", "GPIO_66";
+ function = "fc";
+ };
+
+ fc3_pins: fc3-pins {
+ pins = "GPIO_55", "GPIO_56";
+ function = "fc";
+ };
+
+ mdio_pins: mdio-pins {
+ pins = "GPIO_9", "GPIO_10";
+ function = "miim";
+ };
+
+ mdio_irq_pins: mdio-irq-pins {
+ pins = "GPIO_11";
+ function = "miim_irq";
+ };
+
+ sgpio_pins: sgpio-pins {
+ /* SCK, D0, D1, LD */
+ pins = "GPIO_5", "GPIO_6", "GPIO_7", "GPIO_8";
+ function = "sgpio_a";
+ };
+
+ usb_ulpi_pins: usb-ulpi-pins {
+ pins = "GPIO_30", "GPIO_31", "GPIO_32", "GPIO_33",
+ "GPIO_34", "GPIO_35", "GPIO_36", "GPIO_37",
+ "GPIO_38", "GPIO_39", "GPIO_40", "GPIO_41";
+ function = "usb_ulpi";
+ };
+
+ usb_rst_pins: usb-rst-pins {
+ pins = "GPIO_12";
+ function = "usb2phy_rst";
+ };
+
+ usb_over_pins: usb-over-pins {
+ pins = "GPIO_13";
+ function = "usb_over_detect";
+ };
+
+ usb_power_pins: usb-power-pins {
+ pins = "GPIO_1";
+ function = "usb_power";
+ };
+
+ ptp_out_pins: ptp-out-pins {
+ pins = "GPIO_58";
+ function = "ptpsync_4";
+ };
+
+ ptp_ext_pins: ptp-ext-pins {
+ pins = "GPIO_59";
+ function = "ptpsync_5";
+ };
+};
+
+&flx0 {
+ atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
+ status = "okay";
+};
+
+&flx2 {
+ atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>;
+ status = "okay";
+};
+
+&flx3 {
+ atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
+ status = "okay";
+};
+
+&i2c3 {
+ pinctrl-0 = <&fc3_pins>;
+ pinctrl-names = "default";
+ i2c-analog-filter;
+ i2c-digital-filter;
+ i2c-digital-filter-width-ns = <35>;
+ i2c-sda-hold-time-ns = <1500>;
+ status = "okay";
+};
+
+&mdio0 {
+ pinctrl-0 = <&mdio_pins>, <&mdio_irq_pins>;
+ pinctrl-names = "default";
+ reset-gpios = <&gpio 62 GPIO_ACTIVE_LOW>;
+ status = "okay";
+
+ phy3: phy@3 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <3>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy4: phy@4 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <4>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy5: phy@5 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <5>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy6: phy@6 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <6>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy7: phy@7 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <7>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy8: phy@8 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <8>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy9: phy@9 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <9>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy10: phy@10 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <10>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy11: phy@11 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <11>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy12: phy@12 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <12>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy13: phy@13 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <13>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy14: phy@14 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <14>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy15: phy@15 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <15>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy16: phy@16 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <16>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy17: phy@17 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <17>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy18: phy@18 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <18>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy19: phy@19 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <19>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy20: phy@20 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <20>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy21: phy@21 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <21>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy22: phy@22 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <22>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy23: phy@23 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <23>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy24: phy@24 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <24>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy25: phy@25 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <25>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy26: phy@26 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <26>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+
+ phy27: phy@27 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <27>;
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+ interrupt-parent = <&gpio>;
+ };
+};
+
+&serdes {
+ status = "okay";
+};
+
+&sgpio {
+ pinctrl-0 = <&sgpio_pins>;
+ pinctrl-names = "default";
+ microchip,sgpio-port-ranges = <0 1>, <6 9>;
+ status = "okay";
+
+ gpio@0 {
+ ngpios = <128>;
+ };
+ gpio@1 {
+ ngpios = <128>;
+ };
+};
+
+&spi2 {
+ pinctrl-0 = <&fc2_pins>;
+ pinctrl-names = "default";
+ cs-gpios = <&gpio 63 GPIO_ACTIVE_LOW>;
+ status = "okay";
+};
+
+&switch {
+ pinctrl-0 = <&ptp_out_pins>, <&ptp_ext_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+
+ ethernet-ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port0: port@0 {
+ reg = <0>;
+ phy-handle = <&phy4>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 0>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port1: port@1 {
+ reg = <1>;
+ phy-handle = <&phy5>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 0>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port2: port@2 {
+ reg = <2>;
+ phy-handle = <&phy6>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 0>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port3: port@3 {
+ reg = <3>;
+ phy-handle = <&phy7>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 0>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port4: port@4 {
+ reg = <4>;
+ phy-handle = <&phy8>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 1>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port5: port@5 {
+ reg = <5>;
+ phy-handle = <&phy9>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 1>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port6: port@6 {
+ reg = <6>;
+ phy-handle = <&phy10>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 1>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port7: port@7 {
+ reg = <7>;
+ phy-handle = <&phy11>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 1>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port8: port@8 {
+ reg = <8>;
+ phy-handle = <&phy12>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 2>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port9: port@9 {
+ reg = <9>;
+ phy-handle = <&phy13>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 2>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port10: port@10 {
+ reg = <10>;
+ phy-handle = <&phy14>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 2>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port11: port@11 {
+ reg = <11>;
+ phy-handle = <&phy15>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 2>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port12: port@12 {
+ reg = <12>;
+ phy-handle = <&phy16>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 3>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port13: port@13 {
+ reg = <13>;
+ phy-handle = <&phy17>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 3>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port14: port@14 {
+ reg = <14>;
+ phy-handle = <&phy18>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 3>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port15: port@15 {
+ reg = <15>;
+ phy-handle = <&phy19>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 3>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port16: port@16 {
+ reg = <16>;
+ phy-handle = <&phy20>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 4>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port17: port@17 {
+ reg = <17>;
+ phy-handle = <&phy21>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 4>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port18: port@18 {
+ reg = <18>;
+ phy-handle = <&phy22>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 4>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port19: port@19 {
+ reg = <19>;
+ phy-handle = <&phy23>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 4>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port20: port@20 {
+ reg = <20>;
+ phy-handle = <&phy24>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 5>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port21: port@21 {
+ reg = <21>;
+ phy-handle = <&phy25>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 5>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port22: port@22 {
+ reg = <22>;
+ phy-handle = <&phy26>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 5>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port23: port@23 {
+ reg = <23>;
+ phy-handle = <&phy27>;
+ phy-mode = "qsgmii";
+ phys = <&serdes 5>;
+ microchip,bandwidth = <1000>;
+ };
+
+ port24: port@24 {
+ reg = <24>;
+ phys = <&serdes 6>;
+ phy-mode = "10gbase-r";
+ sfp = <&sfp0>;
+ managed = "in-band-status";
+ microchip,bandwidth = <10000>;
+ microchip,sd-sgpio = <24>;
+ };
+
+ port25: port@25 {
+ reg = <25>;
+ phys = <&serdes 7>;
+ phy-mode = "10gbase-r";
+ sfp = <&sfp1>;
+ managed = "in-band-status";
+ microchip,bandwidth = <10000>;
+ microchip,sd-sgpio = <28>;
+ };
+
+ port26: port@26 {
+ reg = <26>;
+ phys = <&serdes 8>;
+ phy-mode = "10gbase-r";
+ sfp = <&sfp2>;
+ managed = "in-band-status";
+ microchip,bandwidth = <10000>;
+ microchip,sd-sgpio = <32>;
+ };
+
+ port27: port@27 {
+ reg = <27>;
+ phys = <&serdes 9>;
+ phy-mode = "10gbase-r";
+ sfp = <&sfp3>;
+ managed = "in-band-status";
+ microchip,bandwidth = <10000>;
+ microchip,sd-sgpio = <36>;
+ };
+
+ port29: port@29 {
+ reg = <29>;
+ phys = <&serdes 11>;
+ phy-handle = <&phy3>;
+ phy-mode = "rgmii-id";
+ microchip,bandwidth = <1000>;
+ };
+ };
+};
+
+&tmon {
+ pinctrl-0 = <&fan_pins>;
+ pinctrl-names = "default";
+};
+
+&usart0 {
+ pinctrl-0 = <&fc0_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&usb {
+ pinctrl-0 = <&usb_ulpi_pins>, <&usb_rst_pins>, <&usb_over_pins>, <&usb_power_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+};
--
2.52.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH v4 14/15] dt-bindings: arm: AT91: document EV23X71A board
2025-12-29 18:37 ` [PATCH v4 14/15] dt-bindings: arm: AT91: document EV23X71A board Robert Marko
@ 2025-12-30 17:47 ` Conor Dooley
0 siblings, 0 replies; 23+ messages in thread
From: Conor Dooley @ 2025-12-30 17:47 UTC (permalink / raw)
To: Robert Marko
Cc: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb, luka.perkov
[-- Attachment #1: Type: text/plain, Size: 52 bytes --]
Acked-by: Conor Dooley <conor.dooley@microchip.com>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 01/15] dt-bindings: usb: Add Microchip LAN969x support
2025-12-29 18:37 ` [PATCH v4 01/15] dt-bindings: usb: Add Microchip LAN969x support Robert Marko
@ 2025-12-30 18:06 ` Rob Herring (Arm)
0 siblings, 0 replies; 23+ messages in thread
From: Rob Herring (Arm) @ 2025-12-30 18:06 UTC (permalink / raw)
To: Robert Marko
Cc: herbert, Steen.Hegelund, devicetree, linux-arm-kernel, netdev,
linux-serial, linux-spi, linux-usb, claudiu.beznea, conor+dt,
nicolas.ferre, kuba, linux-i2c, lee, linux-crypto, jirislaby,
andrew+netdev, dmaengine, andi.shyti, linux-gpio, pabeni, gregkh,
davem, luka.perkov, vkoul, UNGLinuxDriver, radu_nicolae.pirea,
daniel.machon, richard.genoud, alexandre.belloni, krzk+dt,
lars.povlsen, linux-kernel, broonie, linusw, edumazet, olivia
On Mon, 29 Dec 2025 19:37:42 +0100, Robert Marko wrote:
> Microchip LAN969x has DWC3 compatible controller, though limited to 2.0(HS)
> speed, so document it.
>
> Signed-off-by: Robert Marko <robert.marko@sartura.hr>
> ---
> Changes in v2:
> * Fix example indentation
>
> .../bindings/usb/microchip,lan9691-dwc3.yaml | 66 +++++++++++++++++++
> 1 file changed, 66 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/usb/microchip,lan9691-dwc3.yaml
>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 09/15] dt-bindings: dma: atmel: add microchip,lan9691-dma
2025-12-29 18:37 ` [PATCH v4 09/15] dt-bindings: dma: atmel: add microchip,lan9691-dma Robert Marko
@ 2025-12-30 18:06 ` Rob Herring (Arm)
0 siblings, 0 replies; 23+ messages in thread
From: Rob Herring (Arm) @ 2025-12-30 18:06 UTC (permalink / raw)
To: Robert Marko
Cc: daniel.machon, radu_nicolae.pirea, linux-i2c, linux-crypto,
jirislaby, conor+dt, alexandre.belloni, andi.shyti, olivia,
linux-spi, devicetree, linux-arm-kernel, linux-kernel, gregkh,
dmaengine, andrew+netdev, krzk+dt, nicolas.ferre, linusw,
lars.povlsen, pabeni, richard.genoud, davem, netdev, linux-usb,
claudiu.beznea, linux-gpio, Steen.Hegelund, broonie, luka.perkov,
edumazet, herbert, lee, kuba, vkoul, UNGLinuxDriver, linux-serial
On Mon, 29 Dec 2025 19:37:50 +0100, Robert Marko wrote:
> Document Microchip LAN969x DMA compatible which is compatible to SAMA7G5.
>
> Signed-off-by: Robert Marko <robert.marko@sartura.hr>
> ---
> Changes in v3:
> * Merged with microchip,sama7d65-dma since that also falls back to
> microchip,sama7g5-dma
>
> Documentation/devicetree/bindings/dma/atmel,sama5d4-dma.yaml | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: (subset) [PATCH v4 00/15] Add support for Microchip LAN969x
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (14 preceding siblings ...)
2025-12-29 18:37 ` [PATCH v4 15/15] arm64: dts: microchip: add " Robert Marko
@ 2026-01-01 17:41 ` Vinod Koul
2026-01-04 18:52 ` patchwork-bot+netdevbpf
2026-01-06 12:21 ` (subset) " Mark Brown
17 siblings, 0 replies; 23+ messages in thread
From: Vinod Koul @ 2026-01-01 17:41 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, andi.shyti, lee, andrew+netdev,
edumazet, kuba, pabeni, linusw, Steen.Hegelund, daniel.machon,
UNGLinuxDriver, olivia, radu_nicolae.pirea, richard.genoud,
gregkh, jirislaby, broonie, lars.povlsen, devicetree,
linux-arm-kernel, linux-kernel, linux-crypto, dmaengine,
linux-i2c, netdev, linux-gpio, linux-spi, linux-serial, linux-usb,
Robert Marko
Cc: luka.perkov
On Mon, 29 Dec 2025 19:37:41 +0100, Robert Marko wrote:
> This series adds support for the Microchip LAN969x switch SoC family.
>
> Series is a bit long since after discussions in previous versions, it was
> recommended[1][2] to add SoC specific compatibles for device nodes so it
> includes the required bindings updates.
>
> [1] https://lore.kernel.org/all/20251203-splendor-cubbyhole-eda2d6982b46@spud/
> [2] https://lore.kernel.org/all/173412c8-c2fb-4c38-8de7-5b1c2eebdbf9@microchip.com/
> [3] https://lore.kernel.org/all/20251203-duly-leotard-86b83bd840c6@spud/
> [4] https://lore.kernel.org/all/756ead5d-8c9b-480d-8ae5-71667575ab7c@kernel.org/
>
> [...]
Applied, thanks!
[09/15] dt-bindings: dma: atmel: add microchip,lan9691-dma
commit: c47422f4d0a26b25ff59709921eaaf8f916eec7d
Best regards,
--
~Vinod
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 00/15] Add support for Microchip LAN969x
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (15 preceding siblings ...)
2026-01-01 17:41 ` (subset) [PATCH v4 00/15] Add support for Microchip LAN969x Vinod Koul
@ 2026-01-04 18:52 ` patchwork-bot+netdevbpf
2026-01-06 12:21 ` (subset) " Mark Brown
17 siblings, 0 replies; 23+ messages in thread
From: patchwork-bot+netdevbpf @ 2026-01-04 18:52 UTC (permalink / raw)
To: Robert Marko
Cc: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, broonie, lars.povlsen,
devicetree, linux-arm-kernel, linux-kernel, linux-crypto,
dmaengine, linux-i2c, netdev, linux-gpio, linux-spi, linux-serial,
linux-usb, luka.perkov
Hello:
This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Mon, 29 Dec 2025 19:37:41 +0100 you wrote:
> This series adds support for the Microchip LAN969x switch SoC family.
>
> Series is a bit long since after discussions in previous versions, it was
> recommended[1][2] to add SoC specific compatibles for device nodes so it
> includes the required bindings updates.
>
> [1] https://lore.kernel.org/all/20251203-splendor-cubbyhole-eda2d6982b46@spud/
> [2] https://lore.kernel.org/all/173412c8-c2fb-4c38-8de7-5b1c2eebdbf9@microchip.com/
> [3] https://lore.kernel.org/all/20251203-duly-leotard-86b83bd840c6@spud/
> [4] https://lore.kernel.org/all/756ead5d-8c9b-480d-8ae5-71667575ab7c@kernel.org/
>
> [...]
Here is the summary with links:
- [v4,01/15] dt-bindings: usb: Add Microchip LAN969x support
(no matching commit)
- [v4,02/15] dt-bindings: mfd: atmel,sama5d2-flexcom: add microchip,lan9691-flexcom
(no matching commit)
- [v4,03/15] dt-bindings: serial: atmel,at91-usart: add microchip,lan9691-usart
(no matching commit)
- [v4,04/15] dt-bindings: spi: at91: add microchip,lan9691-spi
(no matching commit)
- [v4,05/15] dt-bindings: i2c: atmel,at91sam: add microchip,lan9691-i2c
(no matching commit)
- [v4,06/15] dt-bindings: rng: atmel,at91-trng: add microchip,lan9691-trng
(no matching commit)
- [v4,07/15] dt-bindings: crypto: atmel,at91sam9g46-aes: add microchip,lan9691-aes
(no matching commit)
- [v4,08/15] dt-bindings: crypto: atmel,at91sam9g46-sha: add microchip,lan9691-sha
(no matching commit)
- [v4,09/15] dt-bindings: dma: atmel: add microchip,lan9691-dma
(no matching commit)
- [v4,10/15] dt-bindings: net: mscc-miim: add microchip,lan9691-miim
https://git.kernel.org/netdev/net-next/c/c303e8b86d9d
- [v4,11/15] dt-bindings: pinctrl: pinctrl-microchip-sgpio: add LAN969x
(no matching commit)
- [v4,12/15] arm64: dts: microchip: add LAN969x clock header file
(no matching commit)
- [v4,13/15] arm64: dts: microchip: add LAN969x support
(no matching commit)
- [v4,14/15] dt-bindings: arm: AT91: document EV23X71A board
(no matching commit)
- [v4,15/15] arm64: dts: microchip: add EV23X71A board
(no matching commit)
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 04/15] dt-bindings: spi: at91: add microchip,lan9691-spi
2025-12-29 18:37 ` [PATCH v4 04/15] dt-bindings: spi: at91: add microchip,lan9691-spi Robert Marko
@ 2026-01-05 12:46 ` Mark Brown
0 siblings, 0 replies; 23+ messages in thread
From: Mark Brown @ 2026-01-05 12:46 UTC (permalink / raw)
To: Robert Marko
Cc: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, lars.povlsen, devicetree,
linux-arm-kernel, linux-kernel, linux-crypto, dmaengine,
linux-i2c, netdev, linux-gpio, linux-spi, linux-serial, linux-usb,
luka.perkov, Conor Dooley
[-- Attachment #1: Type: text/plain, Size: 439 bytes --]
On Mon, Dec 29, 2025 at 07:37:45PM +0100, Robert Marko wrote:
> Document Microchip LAN969x SPI compatible.
Please submit patches using subject lines reflecting the style for the
subsystem, this makes it easier for people to identify relevant patches.
Look at what existing commits in the area you're changing are doing and
make sure your subject lines visually resemble what they're doing.
There's no need to resubmit to fix this alone.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: (subset) [PATCH v4 00/15] Add support for Microchip LAN969x
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
` (16 preceding siblings ...)
2026-01-04 18:52 ` patchwork-bot+netdevbpf
@ 2026-01-06 12:21 ` Mark Brown
17 siblings, 0 replies; 23+ messages in thread
From: Mark Brown @ 2026-01-06 12:21 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, nicolas.ferre, alexandre.belloni,
claudiu.beznea, herbert, davem, vkoul, andi.shyti, lee,
andrew+netdev, edumazet, kuba, pabeni, linusw, Steen.Hegelund,
daniel.machon, UNGLinuxDriver, olivia, radu_nicolae.pirea,
richard.genoud, gregkh, jirislaby, lars.povlsen, devicetree,
linux-arm-kernel, linux-kernel, linux-crypto, dmaengine,
linux-i2c, netdev, linux-gpio, linux-spi, linux-serial, linux-usb,
Robert Marko
Cc: luka.perkov
On Mon, 29 Dec 2025 19:37:41 +0100, Robert Marko wrote:
> This series adds support for the Microchip LAN969x switch SoC family.
>
> Series is a bit long since after discussions in previous versions, it was
> recommended[1][2] to add SoC specific compatibles for device nodes so it
> includes the required bindings updates.
>
> [1] https://lore.kernel.org/all/20251203-splendor-cubbyhole-eda2d6982b46@spud/
> [2] https://lore.kernel.org/all/173412c8-c2fb-4c38-8de7-5b1c2eebdbf9@microchip.com/
> [3] https://lore.kernel.org/all/20251203-duly-leotard-86b83bd840c6@spud/
> [4] https://lore.kernel.org/all/756ead5d-8c9b-480d-8ae5-71667575ab7c@kernel.org/
>
> [...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next
Thanks!
[04/15] dt-bindings: spi: at91: add microchip,lan9691-spi
commit: 96d337436fe0921177a6090aeb5bb214753654fc
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2026-01-06 12:21 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-29 18:37 [PATCH v4 00/15] Add support for Microchip LAN969x Robert Marko
2025-12-29 18:37 ` [PATCH v4 01/15] dt-bindings: usb: Add Microchip LAN969x support Robert Marko
2025-12-30 18:06 ` Rob Herring (Arm)
2025-12-29 18:37 ` [PATCH v4 02/15] dt-bindings: mfd: atmel,sama5d2-flexcom: add microchip,lan9691-flexcom Robert Marko
2025-12-29 18:37 ` [PATCH v4 03/15] dt-bindings: serial: atmel,at91-usart: add microchip,lan9691-usart Robert Marko
2025-12-29 18:37 ` [PATCH v4 04/15] dt-bindings: spi: at91: add microchip,lan9691-spi Robert Marko
2026-01-05 12:46 ` Mark Brown
2025-12-29 18:37 ` [PATCH v4 05/15] dt-bindings: i2c: atmel,at91sam: add microchip,lan9691-i2c Robert Marko
2025-12-29 18:37 ` [PATCH v4 06/15] dt-bindings: rng: atmel,at91-trng: add microchip,lan9691-trng Robert Marko
2025-12-29 18:37 ` [PATCH v4 07/15] dt-bindings: crypto: atmel,at91sam9g46-aes: add microchip,lan9691-aes Robert Marko
2025-12-29 18:37 ` [PATCH v4 08/15] dt-bindings: crypto: atmel,at91sam9g46-sha: add microchip,lan9691-sha Robert Marko
2025-12-29 18:37 ` [PATCH v4 09/15] dt-bindings: dma: atmel: add microchip,lan9691-dma Robert Marko
2025-12-30 18:06 ` Rob Herring (Arm)
2025-12-29 18:37 ` [PATCH v4 10/15] dt-bindings: net: mscc-miim: add microchip,lan9691-miim Robert Marko
2025-12-29 18:37 ` [PATCH v4 11/15] dt-bindings: pinctrl: pinctrl-microchip-sgpio: add LAN969x Robert Marko
2025-12-29 18:37 ` [PATCH v4 12/15] arm64: dts: microchip: add LAN969x clock header file Robert Marko
2025-12-29 18:37 ` [PATCH v4 13/15] arm64: dts: microchip: add LAN969x support Robert Marko
2025-12-29 18:37 ` [PATCH v4 14/15] dt-bindings: arm: AT91: document EV23X71A board Robert Marko
2025-12-30 17:47 ` Conor Dooley
2025-12-29 18:37 ` [PATCH v4 15/15] arm64: dts: microchip: add " Robert Marko
2026-01-01 17:41 ` (subset) [PATCH v4 00/15] Add support for Microchip LAN969x Vinod Koul
2026-01-04 18:52 ` patchwork-bot+netdevbpf
2026-01-06 12:21 ` (subset) " Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).