* [PATCH 01/17] dt-bindings: can: mpfs: add PIC64GX CAN compatibility
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
@ 2024-07-25 12:15 ` pierre-henry.moussay
2024-08-05 15:17 ` Marc Kleine-Budde
2024-07-25 12:15 ` [PATCH 02/17] dt-bindings: usb: add PIC64GX compatibility to mpfs-musb driver pierre-henry.moussay
` (15 subsequent siblings)
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:15 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Marc Kleine-Budde, Vincent Mailhol,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Rob Herring, Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, linux-can, netdev, devicetree,
linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX CAN is compatible with the MPFS CAN driver, so we just update
bindings
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../devicetree/bindings/net/can/microchip,mpfs-can.yaml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml b/Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml
index 01e4d4a54df6..1219c5cb601f 100644
--- a/Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml
+++ b/Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml
@@ -15,7 +15,11 @@ allOf:
properties:
compatible:
- const: microchip,mpfs-can
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-can
+ - const: microchip,mpfs-can
+ - const: microchip,mpfs-can
reg:
maxItems: 1
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 02/17] dt-bindings: usb: add PIC64GX compatibility to mpfs-musb driver
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
2024-07-25 12:15 ` [PATCH 01/17] dt-bindings: can: mpfs: add PIC64GX CAN compatibility pierre-henry.moussay
@ 2024-07-25 12:15 ` pierre-henry.moussay
2024-07-25 12:15 ` [PATCH 03/17] dt-bindings: mbox: add PIC64GX mailbox compatibility to MPFS mailbox pierre-henry.moussay
` (14 subsequent siblings)
16 siblings, 0 replies; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:15 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Greg Kroah-Hartman, Rob Herring,
Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, linux-usb, devicetree,
linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX musb is compatible with mpfs-musb driver, just update compatibility
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../devicetree/bindings/usb/microchip,mpfs-musb.yaml | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/usb/microchip,mpfs-musb.yaml b/Documentation/devicetree/bindings/usb/microchip,mpfs-musb.yaml
index c5e9ce2e7bc2..c8785a6c893e 100644
--- a/Documentation/devicetree/bindings/usb/microchip,mpfs-musb.yaml
+++ b/Documentation/devicetree/bindings/usb/microchip,mpfs-musb.yaml
@@ -14,8 +14,11 @@ maintainers:
properties:
compatible:
- enum:
- - microchip,mpfs-musb
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-musb
+ - const: microchip,mpfs-musb
+ - const: microchip,mpfs-musb
dr_mode: true
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 03/17] dt-bindings: mbox: add PIC64GX mailbox compatibility to MPFS mailbox
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
2024-07-25 12:15 ` [PATCH 01/17] dt-bindings: can: mpfs: add PIC64GX CAN compatibility pierre-henry.moussay
2024-07-25 12:15 ` [PATCH 02/17] dt-bindings: usb: add PIC64GX compatibility to mpfs-musb driver pierre-henry.moussay
@ 2024-07-25 12:15 ` pierre-henry.moussay
2024-07-25 14:16 ` Conor Dooley
2024-07-25 12:15 ` [PATCH 04/17] dt-bindings: spi: add PIC64GX SPI/QSPI compatibility to MPFS SPI/QSPI bindings pierre-henry.moussay
` (13 subsequent siblings)
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:15 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Jassi Brar, Rob Herring,
Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, linux-kernel, devicetree
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX mailbox is compatible with MPFS mailbox driver
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml b/Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml
index 404477910f02..9e45112e185a 100644
--- a/Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml
+++ b/Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml
@@ -11,7 +11,11 @@ maintainers:
properties:
compatible:
- const: microchip,mpfs-mailbox
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-mailbox
+ - const: microchip,mpfs-mailbox
+ - const: microchip,mpfs-mailbox
reg:
oneOf:
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 04/17] dt-bindings: spi: add PIC64GX SPI/QSPI compatibility to MPFS SPI/QSPI bindings
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (2 preceding siblings ...)
2024-07-25 12:15 ` [PATCH 03/17] dt-bindings: mbox: add PIC64GX mailbox compatibility to MPFS mailbox pierre-henry.moussay
@ 2024-07-25 12:15 ` pierre-henry.moussay
2024-07-25 12:15 ` [PATCH 05/17] dt-bindings: gpio: mpfs-gpio: Add PIC64GX GPIO compatibility pierre-henry.moussay
` (12 subsequent siblings)
16 siblings, 0 replies; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:15 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Mark Brown, Rob Herring,
Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, linux-spi, devicetree,
linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX SPI/QSPI are compatible with MPFS SPI/QSPI driver, we just use
fallback mechanism
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../devicetree/bindings/spi/microchip,mpfs-spi.yaml | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/spi/microchip,mpfs-spi.yaml b/Documentation/devicetree/bindings/spi/microchip,mpfs-spi.yaml
index 74a817cc7d94..4c9a7f1ade50 100644
--- a/Documentation/devicetree/bindings/spi/microchip,mpfs-spi.yaml
+++ b/Documentation/devicetree/bindings/spi/microchip,mpfs-spi.yaml
@@ -20,9 +20,14 @@ properties:
compatible:
oneOf:
- items:
- - const: microchip,mpfs-qspi
+ - enum:
+ - microchip,mpfs-qspi
+ - microchip,pic64gx-qspi
- const: microchip,coreqspi-rtl-v2
- const: microchip,coreqspi-rtl-v2 # FPGA QSPI
+ - items:
+ - const: microchip,pic64gx-spi
+ - const: microchip,mpfs-spi
- const: microchip,mpfs-spi
reg:
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 05/17] dt-bindings: gpio: mpfs-gpio: Add PIC64GX GPIO compatibility
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (3 preceding siblings ...)
2024-07-25 12:15 ` [PATCH 04/17] dt-bindings: spi: add PIC64GX SPI/QSPI compatibility to MPFS SPI/QSPI bindings pierre-henry.moussay
@ 2024-07-25 12:15 ` pierre-henry.moussay
2024-07-25 14:25 ` Conor Dooley
2024-07-25 12:15 ` [PATCH 06/17] dt-bindings: riscv: sifive-l2: add a PIC64GX compatible pierre-henry.moussay
` (11 subsequent siblings)
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:15 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Linus Walleij, Bartosz Golaszewski,
Rob Herring, Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, linux-gpio, devicetree,
linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX GPIO is compatible with mpfs-gpio driver
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../bindings/gpio/microchip,mpfs-gpio.yaml | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
diff --git a/Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml b/Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml
index d61569b3f15b..fdce88374a91 100644
--- a/Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml
+++ b/Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml
@@ -11,10 +11,14 @@ maintainers:
properties:
compatible:
- items:
- - enum:
- - microchip,mpfs-gpio
- - microchip,coregpio-rtl-v3
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-gpio
+ - const: microchip,mpfs-gpio
+ - items:
+ - enum:
+ - microchip,mpfs-gpio
+ - microchip,coregpio-rtl-v3
reg:
maxItems: 1
@@ -69,7 +73,9 @@ allOf:
properties:
compatible:
contains:
- const: microchip,mpfs-gpio
+ enum:
+ - microchip,mpfs-gpio
+ - microchip,pic64gx-gpio
then:
required:
- interrupts
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 06/17] dt-bindings: riscv: sifive-l2: add a PIC64GX compatible
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (4 preceding siblings ...)
2024-07-25 12:15 ` [PATCH 05/17] dt-bindings: gpio: mpfs-gpio: Add PIC64GX GPIO compatibility pierre-henry.moussay
@ 2024-07-25 12:15 ` pierre-henry.moussay
2024-07-25 14:11 ` Conor Dooley
2024-07-25 12:15 ` [PATCH 07/17] dt-bindings: clock: mpfs-ccc: Add PIC64GX compatibility pierre-henry.moussay
` (10 subsequent siblings)
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:15 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Samuel Holland, Palmer Dabbelt, Albert Ou
Cc: Pierre-Henry Moussay, devicetree, linux-riscv, linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
The PIC64GX use an IP similar to MPFS one, therefore add compatibility with
MPFS as fallback
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
Documentation/devicetree/bindings/cache/sifive,ccache0.yaml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml b/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
index 7e8cebe21584..9d064feb2ab1 100644
--- a/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
+++ b/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
@@ -47,6 +47,11 @@ properties:
- const: microchip,mpfs-ccache
- const: sifive,fu540-c000-ccache
- const: cache
+ - items:
+ - const: microchip,pic64gx-ccache
+ - const: microchip,mpfs-ccache
+ - const: sifive,fu540-c000-ccache
+ - const: cache
cache-block-size:
const: 64
@@ -93,6 +98,7 @@ allOf:
- starfive,jh7100-ccache
- starfive,jh7110-ccache
- microchip,mpfs-ccache
+ - microchip,pic64gx-ccache
then:
properties:
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 07/17] dt-bindings: clock: mpfs-ccc: Add PIC64GX compatibility
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (5 preceding siblings ...)
2024-07-25 12:15 ` [PATCH 06/17] dt-bindings: riscv: sifive-l2: add a PIC64GX compatible pierre-henry.moussay
@ 2024-07-25 12:15 ` pierre-henry.moussay
2024-07-25 14:19 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 08/17] dt-bindings: clock: mpfs-clkcfg: " pierre-henry.moussay
` (9 subsequent siblings)
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:15 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, linux-clk, devicetree,
linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX SoC has clock compatibles with the MPFS IP
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../devicetree/bindings/clock/microchip,mpfs-ccc.yaml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/clock/microchip,mpfs-ccc.yaml b/Documentation/devicetree/bindings/clock/microchip,mpfs-ccc.yaml
index f1770360798f..9a6b50527c42 100644
--- a/Documentation/devicetree/bindings/clock/microchip,mpfs-ccc.yaml
+++ b/Documentation/devicetree/bindings/clock/microchip,mpfs-ccc.yaml
@@ -17,7 +17,11 @@ description: |
properties:
compatible:
- const: microchip,mpfs-ccc
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-ccc
+ - const: microchip,mpfs-ccc
+ - const: microchip,mpfs-ccc
reg:
items:
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 08/17] dt-bindings: clock: mpfs-clkcfg: Add PIC64GX compatibility
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (6 preceding siblings ...)
2024-07-25 12:15 ` [PATCH 07/17] dt-bindings: clock: mpfs-ccc: Add PIC64GX compatibility pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 14:22 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 09/17] dt-bindings: dma: sifive pdma: Add PIC64GX to compatibles pierre-henry.moussay
` (8 subsequent siblings)
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, linux-clk, devicetree,
linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX has a clock controller compatible whith mpfs-clkcfg
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml b/Documentation/devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml
index e4e1c31267d2..ca889f5df87a 100644
--- a/Documentation/devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml
+++ b/Documentation/devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml
@@ -19,7 +19,11 @@ description: |
properties:
compatible:
- const: microchip,mpfs-clkcfg
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-clkcfg
+ - const: microchip,mpfs-clkcfg
+ - const: microchip,mpfs-clkcfg
reg:
items:
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 09/17] dt-bindings: dma: sifive pdma: Add PIC64GX to compatibles
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (7 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 08/17] dt-bindings: clock: mpfs-clkcfg: " pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 10/17] dt-bindings: i2c: microchip: corei2c: Add PIC64GX as compatible with driver pierre-henry.moussay
` (7 subsequent siblings)
16 siblings, 0 replies; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Vinod Koul, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Paul Walmsley, Samuel Holland, Green Wan, Palmer Debbelt
Cc: Pierre-Henry Moussay, dmaengine, devicetree, linux-riscv,
linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX is compatible as out of order DMA capable, just like the MPFS
version, therefore we add it with microchip,mpfs-pdma as a fallback
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../bindings/dma/sifive,fu540-c000-pdma.yaml | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml b/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
index 3b22183a1a37..609e38901434 100644
--- a/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
+++ b/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
@@ -27,11 +27,16 @@ allOf:
properties:
compatible:
- items:
- - enum:
- - microchip,mpfs-pdma
- - sifive,fu540-c000-pdma
- - const: sifive,pdma0
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-pdma
+ - const: microchip,mpfs-pdma
+ - const: sifive,pdma0
+ - items:
+ - enum:
+ - microchip,mpfs-pdma
+ - sifive,fu540-c000-pdma
+ - const: sifive,pdma0
description:
Should be "sifive,<chip>-pdma" and "sifive,pdma<version>".
Supported compatible strings are -
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 10/17] dt-bindings: i2c: microchip: corei2c: Add PIC64GX as compatible with driver
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (8 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 09/17] dt-bindings: dma: sifive pdma: Add PIC64GX to compatibles pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 14:24 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 11/17] dt-bindings: mmc: cdns: document Microchip PIC64GX MMC/SDHCI controller pierre-henry.moussay
` (6 subsequent siblings)
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Andi Shyti, Rob Herring,
Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, linux-i2c, devicetree,
linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX i2c is compatible with the MPFS driver
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml b/Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml
index afa3db726229..4ba8a27eb8e5 100644
--- a/Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml
+++ b/Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml
@@ -18,6 +18,10 @@ properties:
- items:
- const: microchip,mpfs-i2c # Microchip PolarFire SoC compatible SoCs
- const: microchip,corei2c-rtl-v7 # Microchip Fabric based i2c IP core
+ - items:
+ - const: microchip,pic64gx-i2c
+ - const: microchip,mpfs-i2c # Microchip PolarFire SoC compatible SoCs
+ - const: microchip,corei2c-rtl-v7 # Microchip Fabric based i2c IP core
- const: microchip,corei2c-rtl-v7 # Microchip Fabric based i2c IP core
reg:
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 11/17] dt-bindings: mmc: cdns: document Microchip PIC64GX MMC/SDHCI controller
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (9 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 10/17] dt-bindings: i2c: microchip: corei2c: Add PIC64GX as compatible with driver pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 12/17] dt-bindings: net: cdns,macb: Add PIC64GX compatibility pierre-henry.moussay
` (5 subsequent siblings)
16 siblings, 0 replies; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Ulf Hansson, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Masahiro Yamada
Cc: Pierre-Henry Moussay, linux-mmc, devicetree, linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX is compatible with cdns,sd4hc without any additional feature
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml b/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml
index 6c40611405a0..ee3a838f7f06 100644
--- a/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml
+++ b/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml
@@ -15,6 +15,7 @@ properties:
- enum:
- amd,pensando-elba-sd4hc
- microchip,mpfs-sd4hc
+ - microchip,pic64gx-sd4hc
- socionext,uniphier-sd4hc
- const: cdns,sd4hc
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 12/17] dt-bindings: net: cdns,macb: Add PIC64GX compatibility
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (10 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 11/17] dt-bindings: mmc: cdns: document Microchip PIC64GX MMC/SDHCI controller pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 13/17] dt-bindings: rtc: mfps-rtc: " pierre-henry.moussay
` (4 subsequent siblings)
16 siblings, 0 replies; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Nicolas Ferre,
Claudiu Beznea
Cc: Pierre-Henry Moussay, netdev, devicetree, linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX uses cdns,macb IP, without additional vendor features
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
Documentation/devicetree/bindings/net/cdns,macb.yaml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/net/cdns,macb.yaml b/Documentation/devicetree/bindings/net/cdns,macb.yaml
index 2c71e2cf3a2f..1463353df241 100644
--- a/Documentation/devicetree/bindings/net/cdns,macb.yaml
+++ b/Documentation/devicetree/bindings/net/cdns,macb.yaml
@@ -38,7 +38,10 @@ properties:
- cdns,sam9x60-macb # Microchip sam9x60 SoC
- microchip,mpfs-macb # Microchip PolarFire SoC
- const: cdns,macb # Generic
-
+ - items:
+ - const: microchip,pic64gx-macb # Microchip PIC64GX SoC
+ - const: microchip,mpfs-macb # Microchip PolarFire SoC
+ - const: cdns,macb # Generic
- items:
- enum:
- atmel,sama5d3-macb # 10/100Mbit IP on Atmel sama5d3 SoCs
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 13/17] dt-bindings: rtc: mfps-rtc: Add PIC64GX compatibility
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (11 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 12/17] dt-bindings: net: cdns,macb: Add PIC64GX compatibility pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 14/17] dt-bindings: soc: microchip: mpfs-sys-controller: " pierre-henry.moussay
` (3 subsequent siblings)
16 siblings, 0 replies; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Alexandre Belloni, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Daire McNamara, Lewis Hanly
Cc: Pierre-Henry Moussay, linux-rtc, devicetree, linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX is compatible with mfps-rtc without any additional feature
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../devicetree/bindings/rtc/microchip,mfps-rtc.yaml | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/rtc/microchip,mfps-rtc.yaml b/Documentation/devicetree/bindings/rtc/microchip,mfps-rtc.yaml
index 7742465b9383..ba602b1c8799 100644
--- a/Documentation/devicetree/bindings/rtc/microchip,mfps-rtc.yaml
+++ b/Documentation/devicetree/bindings/rtc/microchip,mfps-rtc.yaml
@@ -16,8 +16,11 @@ maintainers:
properties:
compatible:
- enum:
- - microchip,mpfs-rtc
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-rtc
+ - const: microchip,mpfs-rtc
+ - const: microchip,mpfs-rtc
reg:
maxItems: 1
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 14/17] dt-bindings: soc: microchip: mpfs-sys-controller: Add PIC64GX compatibility
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (12 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 13/17] dt-bindings: rtc: mfps-rtc: " pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 14:34 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 15/17] dt-bindings: clk: microchip: Add Microchip PIC64GX host binding pierre-henry.moussay
` (2 subsequent siblings)
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Rob Herring, Krzysztof Kozlowski
Cc: Pierre-Henry Moussay, linux-riscv, devicetree, linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
PIC64GX is compatible with mpfs-sys-controller driver without additional
feature
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../soc/microchip/microchip,mpfs-sys-controller.yaml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml b/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml
index a3fa04f3a1bd..af89d5959747 100644
--- a/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml
+++ b/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml
@@ -24,7 +24,11 @@ properties:
maxItems: 1
compatible:
- const: microchip,mpfs-sys-controller
+ oneOf:
+ - items:
+ - const: microchip,pic64gx-sys-controller
+ - const: microchip,mpfs-sys-controller
+ - const: microchip,mpfs-sys-controller
microchip,bitstream-flash:
$ref: /schemas/types.yaml#/definitions/phandle
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 15/17] dt-bindings: clk: microchip: Add Microchip PIC64GX host binding
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (13 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 14/17] dt-bindings: soc: microchip: mpfs-sys-controller: " pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 14:18 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 16/17] dt-bindings: riscv: microchip: document the PIC64GX curiosity kit pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 17/17] riscv: dts: microchip: add PIC64GX Curiosity Kit dts pierre-henry.moussay
16 siblings, 1 reply; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: Pierre-Henry Moussay, linux-kernel, linux-clk, devicetree
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
Add device tree bindings for the Microchip PIC64GX system
clock controller
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
.../clock/microchip,pic64gx-clock.h | 76 +++++++++++++++++++
1 file changed, 76 insertions(+)
create mode 100644 include/dt-bindings/clock/microchip,pic64gx-clock.h
diff --git a/include/dt-bindings/clock/microchip,pic64gx-clock.h b/include/dt-bindings/clock/microchip,pic64gx-clock.h
new file mode 100644
index 000000000000..91687c9da516
--- /dev/null
+++ b/include/dt-bindings/clock/microchip,pic64gx-clock.h
@@ -0,0 +1,76 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
+/*
+ * Daire McNamara,<daire.mcnamara@microchip.com>
+ * Copyright (C) 2024 Microchip Technology Inc. All rights reserved.
+ */
+
+#ifndef _DT_BINDINGS_CLK_MICROCHIP_PIC64GX_H_
+#define _DT_BINDINGS_CLK_MICROCHIP_PIC64GX_H_
+
+#define CLK_CPU 0
+#define CLK_AXI 1
+#define CLK_AHB 2
+
+#define CLK_ENVM 3
+#define CLK_MAC0 4
+#define CLK_MAC1 5
+#define CLK_MMC 6
+#define CLK_TIMER 7
+#define CLK_MMUART0 8
+#define CLK_MMUART1 9
+#define CLK_MMUART2 10
+#define CLK_MMUART3 11
+#define CLK_MMUART4 12
+#define CLK_SPI0 13
+#define CLK_SPI1 14
+#define CLK_I2C0 15
+#define CLK_I2C1 16
+#define CLK_CAN0 17
+#define CLK_CAN1 18
+#define CLK_USB 19
+#define CLK_RESERVED 20
+#define CLK_RTC 21
+#define CLK_QSPI 22
+#define CLK_GPIO0 23
+#define CLK_GPIO1 24
+#define CLK_GPIO2 25
+#define CLK_DDRC 26
+#define CLK_FIC0 27
+#define CLK_FIC1 28
+#define CLK_FIC2 29
+#define CLK_FIC3 30
+#define CLK_ATHENA 31
+#define CLK_CFM 32
+
+#define CLK_RTCREF 33
+#define CLK_MSSPLL 34
+#define CLK_MSSPLL0 34
+#define CLK_MSSPLL1 35
+#define CLK_MSSPLL2 36
+#define CLK_MSSPLL3 37
+/* 38 is reserved for MSS PLL internals */
+
+/* Clock Conditioning Circuitry Clock IDs */
+
+#define CLK_CCC_PLL0 0
+#define CLK_CCC_PLL1 1
+#define CLK_CCC_DLL0 2
+#define CLK_CCC_DLL1 3
+
+#define CLK_CCC_PLL0_OUT0 4
+#define CLK_CCC_PLL0_OUT1 5
+#define CLK_CCC_PLL0_OUT2 6
+#define CLK_CCC_PLL0_OUT3 7
+
+#define CLK_CCC_PLL1_OUT0 8
+#define CLK_CCC_PLL1_OUT1 9
+#define CLK_CCC_PLL1_OUT2 10
+#define CLK_CCC_PLL1_OUT3 11
+
+#define CLK_CCC_DLL0_OUT0 12
+#define CLK_CCC_DLL0_OUT1 13
+
+#define CLK_CCC_DLL1_OUT0 14
+#define CLK_CCC_DLL1_OUT1 15
+
+#endif /* _DT_BINDINGS_CLK_MICROCHIP_PIC64GX_H_ */
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 16/17] dt-bindings: riscv: microchip: document the PIC64GX curiosity kit
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (14 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 15/17] dt-bindings: clk: microchip: Add Microchip PIC64GX host binding pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 17/17] riscv: dts: microchip: add PIC64GX Curiosity Kit dts pierre-henry.moussay
16 siblings, 0 replies; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Rob Herring, Krzysztof Kozlowski,
Paul Walmsley, Palmer Dabbelt, Albert Ou
Cc: Pierre-Henry Moussay, linux-riscv, devicetree, linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
Update devicetree bindings document with PIC64GX Curiosity Kit, known
by its "Curiosity-GX1000" product code.
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
Documentation/devicetree/bindings/riscv/microchip.yaml | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/riscv/microchip.yaml b/Documentation/devicetree/bindings/riscv/microchip.yaml
index 4a29c890619a..5e5f2676e6c0 100644
--- a/Documentation/devicetree/bindings/riscv/microchip.yaml
+++ b/Documentation/devicetree/bindings/riscv/microchip.yaml
@@ -4,14 +4,14 @@
$id: http://devicetree.org/schemas/riscv/microchip.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
-title: Microchip PolarFire SoC-based boards
+title: Microchip SoC-based boards
maintainers:
- Conor Dooley <conor.dooley@microchip.com>
- Daire McNamara <daire.mcnamara@microchip.com>
description:
- Microchip PolarFire SoC-based boards
+ Microchip SoC-based boards
properties:
$nodename:
@@ -32,6 +32,9 @@ properties:
- microchip,mpfs-sev-kit
- sundance,polarberry
- const: microchip,mpfs
+ - items:
+ - const: microchip,pic64gx-curiosity-kit
+ - const: microchip,pic64gx
additionalProperties: true
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [PATCH 17/17] riscv: dts: microchip: add PIC64GX Curiosity Kit dts
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
` (15 preceding siblings ...)
2024-07-25 12:16 ` [PATCH 16/17] dt-bindings: riscv: microchip: document the PIC64GX curiosity kit pierre-henry.moussay
@ 2024-07-25 12:16 ` pierre-henry.moussay
2024-07-25 14:15 ` Emil Renner Berthing
2024-07-25 14:35 ` Conor Dooley
16 siblings, 2 replies; 28+ messages in thread
From: pierre-henry.moussay @ 2024-07-25 12:16 UTC (permalink / raw)
To: Conor Dooley, Daire McNamara, Rob Herring, Krzysztof Kozlowski,
Paul Walmsley, Palmer Dabbelt, Albert Ou, Samuel Holland
Cc: Pierre-Henry Moussay, linux-riscv, devicetree, linux-kernel
From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
The Curiosity-GX10000 (PIC64GX SoC Curiosity Kit) is a compact SoC
prototyping board featuring a Microchip PIC64GX SoC
PIC64GC-1000. Features include:
- 1 GB DDR4 SDRAM
- Gigabit Ethernet
- microSD-card slot
Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
---
arch/riscv/boot/dts/microchip/Makefile | 1 +
.../dts/microchip/pic64gx-curiosity-kit.dts | 114 ++++
arch/riscv/boot/dts/microchip/pic64gx.dtsi | 616 ++++++++++++++++++
3 files changed, 731 insertions(+)
create mode 100644 arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts
create mode 100644 arch/riscv/boot/dts/microchip/pic64gx.dtsi
diff --git a/arch/riscv/boot/dts/microchip/Makefile b/arch/riscv/boot/dts/microchip/Makefile
index e177815bf1a2..78ba2952a164 100644
--- a/arch/riscv/boot/dts/microchip/Makefile
+++ b/arch/riscv/boot/dts/microchip/Makefile
@@ -4,3 +4,4 @@ dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-m100pfsevp.dtb
dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-polarberry.dtb
dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-sev-kit.dtb
dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-tysom-m.dtb
+dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += pic64gx-curiosity-kit.dtb
diff --git a/arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts b/arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts
new file mode 100644
index 000000000000..2eda33689893
--- /dev/null
+++ b/arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts
@@ -0,0 +1,114 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/* Copyright (c) 2020-2021 Microchip Technology Inc */
+
+/dts-v1/;
+
+#include "pic64gx.dtsi"
+
+/* Clock frequency (in Hz) of the rtcclk */
+#define RTCCLK_FREQ 1000000
+
+/ {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ model = "Microchip Pic64GX Curiosity Kit";
+ compatible = "microchip,pic64gx-curiosity-kit", "microchip,pic64gx";
+
+ aliases {
+ ethernet0 = &mac0;
+ serial1 = &mmuart1;
+ };
+
+ chosen {
+ stdout-path = "serial1:115200n8";
+ };
+
+ cpus {
+ timebase-frequency = <RTCCLK_FREQ>;
+ };
+
+ memory@80000000 {
+ device_type = "memory";
+ reg = <0x0 0x80000000 0x0 0x40000000>;
+ };
+
+ reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ hss: hss-buffer@bfc00000 {
+ compatible = "shared-dma-pool";
+ reg = <0x0 0xbfc00000 0x0 0x400000>;
+ no-map;
+ };
+ };
+};
+
+
+&mac0 {
+ status = "okay";
+ phy-mode = "sgmii";
+ phy-handle = <&phy0>;
+
+ phy0: ethernet-phy@b {
+ reg = <0xb>;
+ };
+};
+
+&mbox {
+ status = "okay";
+};
+
+&mmc {
+ bus-width = <4>;
+ disable-wp;
+ cap-sd-highspeed;
+ cap-mmc-highspeed;
+ sd-uhs-sdr12;
+ sd-uhs-sdr25;
+ sd-uhs-sdr50;
+ sd-uhs-sdr104;
+ no-1-8-v;
+ status = "okay";
+};
+
+&mmuart1 {
+ status = "okay";
+};
+
+&refclk {
+ clock-frequency = <125000000>;
+};
+
+&rtc {
+ status = "okay";
+};
+
+&syscontroller {
+ status = "okay";
+};
+
+&gpio0 {
+ status ="okay";
+ gpio-line-names =
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "MIPI_CAM_RESET", "MIPI_CAM_STANDBY";
+};
+
+&gpio1 {
+ status ="okay";
+ gpio-line-names =
+ "", "", "LED1", "LED2", "LED3", "LED4", "LED5", "LED6",
+ "LED7", "LED8", "", "", "", "", "", "",
+ "", "", "", "", "HDMI_HPD", "", "", "GPIO_1_23";
+};
+
+&gpio2 {
+ status ="okay";
+ gpio-line-names =
+ "", "", "", "", "", "", "SWITCH2", "USR_IO12",
+ "DIP1", "DIP2", "", "DIP3", "USR_IO1", "USR_IO2", "USR_IO7", "USR_IO8",
+ "USR_IO3", "USR_IO4", "USR_IO5", "USR_IO6", "", "", "USR_IO9", "USR_IO10",
+ "DIP4", "USR_IO11", "", "", "SWITCH1", "", "", "";
+};
diff --git a/arch/riscv/boot/dts/microchip/pic64gx.dtsi b/arch/riscv/boot/dts/microchip/pic64gx.dtsi
new file mode 100644
index 000000000000..2cf42e741ba9
--- /dev/null
+++ b/arch/riscv/boot/dts/microchip/pic64gx.dtsi
@@ -0,0 +1,616 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/* Copyright (c) 2024 Microchip Technology Inc */
+
+/dts-v1/;
+#include "dt-bindings/clock/microchip,pic64gx-clock.h"
+
+/ {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ model = "Microchip PIC64GX SoC";
+ compatible = "microchip,pic64gx";
+
+ cpus {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ timebase-frequency = <1000000>;
+
+ cpu0: cpu@0 {
+ compatible = "sifive,e51", "sifive,rocket0", "riscv";
+ device_type = "cpu";
+ i-cache-block-size = <64>;
+ i-cache-sets = <128>;
+ i-cache-size = <16384>;
+ reg = <0>;
+ riscv,isa = "rv64imac";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "c", "zicntr",
+ "zicsr", "zifencei", "zihpm";
+ clocks = <&clkcfg CLK_CPU>;
+ status = "disabled";
+
+ cpu0_intc: interrupt-controller {
+ #interrupt-cells = <1>;
+ compatible = "riscv,cpu-intc";
+ interrupt-controller;
+ };
+ };
+
+ cpu1: cpu@1 {
+ compatible = "sifive,u54-mc", "sifive,rocket0",
+ "riscv";
+ d-cache-block-size = <64>;
+ d-cache-sets = <64>;
+ d-cache-size = <32768>;
+ d-tlb-sets = <1>;
+ d-tlb-size = <32>;
+ device_type = "cpu";
+ i-cache-block-size = <64>;
+ i-cache-sets = <64>;
+ i-cache-size = <32768>;
+ i-tlb-sets = <1>;
+ i-tlb-size = <32>;
+ mmu-type = "riscv,sv39";
+ reg = <1>;
+ riscv,isa = "rv64imafdc";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
+ "zicntr", "zicsr", "zifencei",
+ "zihpm";
+ clocks = <&clkcfg CLK_CPU>;
+ tlb-split;
+ next-level-cache = <&cctrllr>;
+ status = "okay";
+
+ cpu1_intc: interrupt-controller {
+ #interrupt-cells = <1>;
+ compatible = "riscv,cpu-intc";
+ interrupt-controller;
+ };
+ };
+
+ cpu2: cpu@2 {
+ compatible = "sifive,u54-mc", "sifive,rocket0",
+ "riscv";
+ d-cache-block-size = <64>;
+ d-cache-sets = <64>;
+ d-cache-size = <32768>;
+ d-tlb-sets = <1>;
+ d-tlb-size = <32>;
+ device_type = "cpu";
+ i-cache-block-size = <64>;
+ i-cache-sets = <64>;
+ i-cache-size = <32768>;
+ i-tlb-sets = <1>;
+ i-tlb-size = <32>;
+ mmu-type = "riscv,sv39";
+ reg = <2>;
+ riscv,isa = "rv64imafdc";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
+ "zicntr", "zicsr", "zifencei",
+ "zihpm";
+ clocks = <&clkcfg CLK_CPU>;
+ tlb-split;
+ next-level-cache = <&cctrllr>;
+ status = "okay";
+
+ cpu2_intc: interrupt-controller {
+ #interrupt-cells = <1>;
+ compatible = "riscv,cpu-intc";
+ interrupt-controller;
+ };
+ };
+
+ cpu3: cpu@3 {
+ compatible = "sifive,u54-mc", "sifive,rocket0",
+ "riscv";
+ d-cache-block-size = <64>;
+ d-cache-sets = <64>;
+ d-cache-size = <32768>;
+ d-tlb-sets = <1>;
+ d-tlb-size = <32>;
+ device_type = "cpu";
+ i-cache-block-size = <64>;
+ i-cache-sets = <64>;
+ i-cache-size = <32768>;
+ i-tlb-sets = <1>;
+ i-tlb-size = <32>;
+ mmu-type = "riscv,sv39";
+ reg = <3>;
+ riscv,isa = "rv64imafdc";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
+ "zicntr", "zicsr", "zifencei",
+ "zihpm";
+ clocks = <&clkcfg CLK_CPU>;
+ tlb-split;
+ next-level-cache = <&cctrllr>;
+ status = "okay";
+
+ cpu3_intc: interrupt-controller {
+ #interrupt-cells = <1>;
+ compatible = "riscv,cpu-intc";
+ interrupt-controller;
+ };
+ };
+
+ cpu4: cpu@4 {
+ compatible = "sifive,u54-mc", "sifive,rocket0",
+ "riscv";
+ d-cache-block-size = <64>;
+ d-cache-sets = <64>;
+ d-cache-size = <32768>;
+ d-tlb-sets = <1>;
+ d-tlb-size = <32>;
+ device_type = "cpu";
+ i-cache-block-size = <64>;
+ i-cache-sets = <64>;
+ i-cache-size = <32768>;
+ i-tlb-sets = <1>;
+ i-tlb-size = <32>;
+ mmu-type = "riscv,sv39";
+ reg = <4>;
+ riscv,isa = "rv64imafdc";
+ riscv,isa-base = "rv64i";
+ riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
+ "zicntr", "zicsr", "zifencei",
+ "zihpm";
+ clocks = <&clkcfg CLK_CPU>;
+ tlb-split;
+ next-level-cache = <&cctrllr>;
+ status = "okay";
+ cpu4_intc: interrupt-controller {
+ #interrupt-cells = <1>;
+ compatible = "riscv,cpu-intc";
+ interrupt-controller;
+ };
+ };
+
+ cpu-map {
+ cluster0 {
+ core0 {
+ cpu = <&cpu0>;
+ };
+
+ core1 {
+ cpu = <&cpu1>;
+ };
+
+ core2 {
+ cpu = <&cpu2>;
+ };
+
+ core3 {
+ cpu = <&cpu3>;
+ };
+
+ core4 {
+ cpu = <&cpu4>;
+ };
+ };
+ };
+ };
+
+ refclk: mssrefclk {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ };
+
+ syscontroller: syscontroller {
+ compatible = "microchip,pic64gx-sys-controller",
+ "microchip,mpfs-sys-controller";
+ mboxes = <&mbox 0>;
+ };
+
+ scbclk: mssclkclk {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <80000000>;
+ };
+
+ soc {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ compatible = "simple-bus";
+ ranges;
+
+ cctrllr: cache-controller@2010000 {
+ compatible = "microchip,pic64gx-ccache",
+ "microchip,mpfs-ccache",
+ "sifive,fu540-c000-ccache", "cache";
+ reg = <0x0 0x2010000 0x0 0x1000>;
+ cache-block-size = <64>;
+ cache-level = <2>;
+ cache-sets = <1024>;
+ cache-size = <2097152>;
+ cache-unified;
+ interrupt-parent = <&plic>;
+ interrupts = <1>, <3>, <4>, <2>;
+ };
+
+ clint: clint@2000000 {
+ compatible = "sifive,fu540-c000-clint",
+ "sifive,clint0";
+ reg = <0x0 0x2000000 0x0 0xC000>;
+ interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>,
+ <&cpu1_intc 3>, <&cpu1_intc 7>,
+ <&cpu2_intc 3>, <&cpu2_intc 7>,
+ <&cpu3_intc 3>, <&cpu3_intc 7>,
+ <&cpu4_intc 3>, <&cpu4_intc 7>;
+ };
+
+ plic: interrupt-controller@c000000 {
+ compatible = "sifive,fu540-c000-plic",
+ "sifive,plic-1.0.0";
+ reg = <0x0 0xc000000 0x0 0x4000000>;
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ interrupts-extended = <&cpu0_intc 11>,
+ <&cpu1_intc 11>, <&cpu1_intc 9>,
+ <&cpu2_intc 11>, <&cpu2_intc 9>,
+ <&cpu3_intc 11>, <&cpu3_intc 9>,
+ <&cpu4_intc 11>, <&cpu4_intc 9>;
+ riscv,ndev = <186>;
+ };
+
+ pdma: dma-controller@3000000 {
+ compatible = "microchip,pic64gx-pdma",
+ "microchip,mpfs-pdma",
+ "sifive,pdma0";
+ reg = <0x0 0x3000000 0x0 0x8000>;
+ interrupt-parent = <&plic>;
+ interrupts = <5 6>, <7 8>, <9 10>, <11 12>;
+ dma-channels = <4>;
+ #dma-cells = <1>;
+ };
+
+ clkcfg: clkcfg@20002000 {
+ compatible = "microchip,pic64gx-clkcfg",
+ "microchip,mpfs-clkcfg";
+ reg = <0x0 0x20002000 0x0 0x1000>,
+ <0x0 0x3E001000 0x0 0x1000>;
+ clocks = <&refclk>;
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+ };
+
+ ccc_se: clock-controller@38010000 {
+ compatible = "microchip,pic64gx-ccc",
+ "microchip,mpfs-ccc";
+ reg = <0x0 0x38010000 0x0 0x1000>,
+ <0x0 0x38020000 0x0 0x1000>,
+ <0x0 0x39010000 0x0 0x1000>,
+ <0x0 0x39020000 0x0 0x1000>;
+ #clock-cells = <1>;
+ status = "disabled";
+ };
+
+ ccc_ne: clock-controller@38040000 {
+ compatible = "microchip,pic64gx-ccc",
+ "microchip,mpfs-ccc";
+ reg = <0x0 0x38040000 0x0 0x1000>,
+ <0x0 0x38080000 0x0 0x1000>,
+ <0x0 0x39040000 0x0 0x1000>,
+ <0x0 0x39080000 0x0 0x1000>;
+ #clock-cells = <1>;
+ status = "disabled";
+ };
+
+ ccc_nw: clock-controller@38100000 {
+ compatible = "microchip,pic64gx-ccc",
+ "microchip,mpfs-ccc";
+ reg = <0x0 0x38100000 0x0 0x1000>,
+ <0x0 0x38200000 0x0 0x1000>,
+ <0x0 0x39100000 0x0 0x1000>,
+ <0x0 0x39200000 0x0 0x1000>;
+ #clock-cells = <1>;
+ status = "disabled";
+ };
+
+ ccc_sw: clock-controller@38400000 {
+ compatible = "microchip,pic64gx-ccc",
+ "microchip,mpfs-ccc";
+ reg = <0x0 0x38400000 0x0 0x1000>,
+ <0x0 0x38800000 0x0 0x1000>,
+ <0x0 0x39400000 0x0 0x1000>,
+ <0x0 0x39800000 0x0 0x1000>;
+ #clock-cells = <1>;
+ status = "disabled";
+ };
+
+ mmuart0: serial@20000000 {
+ compatible = "ns16550a";
+ reg = <0x0 0x20000000 0x0 0x400>;
+ reg-io-width = <4>;
+ reg-shift = <2>;
+ interrupt-parent = <&plic>;
+ interrupts = <90>;
+ current-speed = <115200>;
+ clocks = <&clkcfg CLK_MMUART0>;
+ status = "disabled"; /* Reserved for the HSS */
+ };
+
+ mmuart1: serial@20100000 {
+ compatible = "ns16550a";
+ reg = <0x0 0x20100000 0x0 0x400>;
+ reg-io-width = <4>;
+ reg-shift = <2>;
+ interrupt-parent = <&plic>;
+ interrupts = <91>;
+ current-speed = <115200>;
+ clocks = <&clkcfg CLK_MMUART1>;
+ status = "disabled";
+ };
+
+ mmuart2: serial@20102000 {
+ compatible = "ns16550a";
+ reg = <0x0 0x20102000 0x0 0x400>;
+ reg-io-width = <4>;
+ reg-shift = <2>;
+ interrupt-parent = <&plic>;
+ interrupts = <92>;
+ current-speed = <115200>;
+ clocks = <&clkcfg CLK_MMUART2>;
+ status = "disabled";
+ };
+
+ mmuart3: serial@20104000 {
+ compatible = "ns16550a";
+ reg = <0x0 0x20104000 0x0 0x400>;
+ reg-io-width = <4>;
+ reg-shift = <2>;
+ interrupt-parent = <&plic>;
+ interrupts = <93>;
+ current-speed = <115200>;
+ clocks = <&clkcfg CLK_MMUART3>;
+ status = "disabled";
+ };
+
+ mmuart4: serial@20106000 {
+ compatible = "ns16550a";
+ reg = <0x0 0x20106000 0x0 0x400>;
+ reg-io-width = <4>;
+ reg-shift = <2>;
+ interrupt-parent = <&plic>;
+ interrupts = <94>;
+ clocks = <&clkcfg CLK_MMUART4>;
+ current-speed = <115200>;
+ status = "disabled";
+ };
+
+ /* Common node entry for emmc/sd */
+ mmc: mmc@20008000 {
+ compatible = "microchip,pic64gx-sd4hc", "cdns,sd4hc";
+ reg = <0x0 0x20008000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupts = <88>;
+ clocks = <&clkcfg CLK_MMC>;
+ max-frequency = <200000000>;
+ status = "disabled";
+ };
+
+ spi0: spi@20108000 {
+ compatible = "microchip,pic64gx-spi",
+ "microchip,mpfs-spi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x0 0x20108000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupts = <54>;
+ clocks = <&clkcfg CLK_SPI0>;
+ status = "disabled";
+ };
+
+ spi1: spi@20109000 {
+ compatible = "microchip,pic64gx-spi",
+ "microchip,mpfs-spi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x0 0x20109000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupts = <55>;
+ clocks = <&clkcfg CLK_SPI1>;
+ status = "disabled";
+ };
+
+ qspi: spi@21000000 {
+ compatible = "microchip,pic64gx-qspi",
+ "microchip,coreqspi-rtl-v2";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x0 0x21000000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupts = <85>;
+ clocks = <&clkcfg CLK_QSPI>;
+ status = "disabled";
+ };
+
+ i2c0: i2c@2010a000 {
+ compatible = "microchip,pic64gx-i2c",
+ "microchip,mpfs-i2c",
+ "microchip,corei2c-rtl-v7";
+ reg = <0x0 0x2010a000 0x0 0x1000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupt-parent = <&plic>;
+ interrupts = <58>;
+ clocks = <&clkcfg CLK_I2C0>;
+ clock-frequency = <100000>;
+ status = "disabled";
+ };
+
+ i2c1: i2c@2010b000 {
+ compatible = "microchip,pic64gx-i2c",
+ "microchip,mpfs-i2c",
+ "microchip,corei2c-rtl-v7";
+ reg = <0x0 0x2010b000 0x0 0x1000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupt-parent = <&plic>;
+ interrupts = <61>;
+ clocks = <&clkcfg CLK_I2C1>;
+ clock-frequency = <100000>;
+ status = "disabled";
+ };
+
+ can0: can@2010c000 {
+ compatible = "microchip,pic64gx-can",
+ "microchip,mpfs-can";
+ reg = <0x0 0x2010c000 0x0 0x1000>;
+ clocks = <&clkcfg CLK_CAN0>, <&clkcfg CLK_MSSPLL3>;
+ interrupt-parent = <&plic>;
+ interrupts = <56>;
+ status = "disabled";
+ };
+
+ can1: can@2010d000 {
+ compatible = "microchip,pic64gx-can",
+ "microchip,mpfs-can";
+ reg = <0x0 0x2010d000 0x0 0x1000>;
+ clocks = <&clkcfg CLK_CAN1>, <&clkcfg CLK_MSSPLL3>;
+ interrupt-parent = <&plic>;
+ interrupts = <57>;
+ status = "disabled";
+ };
+
+ mac0: ethernet@20110000 {
+ compatible = "microchip,pic64gx-macb",
+ "microchip,mpfs-macb",
+ "cdns,macb";
+ reg = <0x0 0x20110000 0x0 0x2000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupt-parent = <&plic>;
+ interrupts = <64>, <65>, <66>, <67>, <68>, <69>;
+ local-mac-address = [00 00 00 00 00 00];
+ clocks = <&clkcfg CLK_MAC0>, <&clkcfg CLK_AHB>;
+ clock-names = "pclk", "hclk";
+ resets = <&clkcfg CLK_MAC0>;
+ status = "disabled";
+ };
+
+ mac1: ethernet@20112000 {
+ compatible = "microchip,pic64gx-macb",
+ "microchip,mpfs-macb",
+ "cdns,macb";
+ reg = <0x0 0x20112000 0x0 0x2000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupt-parent = <&plic>;
+ interrupts = <70>, <71>, <72>, <73>, <74>, <75>;
+ local-mac-address = [00 00 00 00 00 00];
+ clocks = <&clkcfg CLK_MAC1>, <&clkcfg CLK_AHB>;
+ clock-names = "pclk", "hclk";
+ resets = <&clkcfg CLK_MAC1>;
+ status = "disabled";
+ };
+
+ gpio0: gpio@20120000 {
+ compatible = "microchip,pic64gx-gpio",
+ "microchip,mpfs-gpio";
+ reg = <0x0 0x20120000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ interrupts = <51>, <51>, <51>, <51>,
+ <51>, <51>, <51>, <51>,
+ <51>, <51>, <51>, <51>,
+ <51>, <51>;
+ clocks = <&clkcfg CLK_GPIO0>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ ngpios = <14>;
+ status = "disabled";
+ };
+
+ gpio1: gpio@20121000 {
+ compatible = "microchip,pic64gx-gpio",
+ "microchip,mpfs-gpio";
+ reg = <0x0 0x20121000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ interrupts = <52>, <52>, <52>, <52>,
+ <52>, <52>, <52>, <52>,
+ <52>, <52>, <52>, <52>,
+ <52>, <52>, <52>, <52>,
+ <52>, <52>, <52>, <52>,
+ <52>, <52>, <52>, <52>;
+ clocks = <&clkcfg CLK_GPIO1>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ ngpios = <24>;
+ status = "disabled";
+ };
+
+ gpio2: gpio@20122000 {
+ compatible = "microchip,pic64gx-gpio",
+ "microchip,mpfs-gpio";
+ reg = <0x0 0x20122000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ interrupts = <53>, <53>, <53>, <53>,
+ <53>, <53>, <53>, <53>,
+ <53>, <53>, <53>, <53>,
+ <53>, <53>, <53>, <53>,
+ <53>, <53>, <53>, <53>,
+ <53>, <53>, <53>, <53>,
+ <53>, <53>, <53>, <53>,
+ <53>, <53>, <53>, <53>;
+ clocks = <&clkcfg CLK_GPIO2>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ ngpios = <32>;
+ status = "disabled";
+ };
+
+ rtc: rtc@20124000 {
+ compatible = "microchip,pic64gx-rtc",
+ "microchip,mpfs-rtc";
+ reg = <0x0 0x20124000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupts = <80>, <81>;
+ clocks = <&clkcfg CLK_RTC>, <&clkcfg CLK_RTCREF>;
+ clock-names = "rtc", "rtcref";
+ status = "disabled";
+ };
+
+ usb: usb@20201000 {
+ compatible = "microchip,pic64gx-musb",
+ "microchip,mpfs-musb";
+ reg = <0x0 0x20201000 0x0 0x1000>;
+ interrupt-parent = <&plic>;
+ interrupts = <86>, <87>;
+ clocks = <&clkcfg CLK_USB>;
+ interrupt-names = "dma", "mc";
+ status = "disabled";
+ };
+
+ mbox: mailbox@37020000 {
+ compatible = "microchip,pic64gx-mailbox",
+ "microchip,mpfs-mailbox";
+ reg = <0x0 0x37020000 0x0 0x58>,
+ <0x0 0x2000318C 0x0 0x40>,
+ <0x0 0x37020800 0x0 0x100>;
+ interrupt-parent = <&plic>;
+ interrupts = <96>;
+ #mbox-cells = <1>;
+ status = "disabled";
+ };
+
+ syscontroller_qspi: spi@37020100 {
+ compatible = "microchip,pic64gx-qspi",
+ "microchip,coreqspi-rtl-v2";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x0 0x37020100 0x0 0x100>;
+ interrupt-parent = <&plic>;
+ interrupts = <110>;
+ clocks = <&scbclk>;
+ status = "disabled";
+ };
+ };
+};
--
2.30.2
^ permalink raw reply related [flat|nested] 28+ messages in thread
* Re: [PATCH 06/17] dt-bindings: riscv: sifive-l2: add a PIC64GX compatible
2024-07-25 12:15 ` [PATCH 06/17] dt-bindings: riscv: sifive-l2: add a PIC64GX compatible pierre-henry.moussay
@ 2024-07-25 14:11 ` Conor Dooley
0 siblings, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:11 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Samuel Holland, Palmer Dabbelt, Albert Ou, devicetree,
linux-riscv, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1518 bytes --]
On Thu, Jul 25, 2024 at 01:15:58PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> The PIC64GX use an IP similar to MPFS one, therefore add compatibility with
> MPFS as fallback
It's the same, not similar ;)
$subject should start with "dt-bindings: cache:"
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> Documentation/devicetree/bindings/cache/sifive,ccache0.yaml | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml b/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
> index 7e8cebe21584..9d064feb2ab1 100644
> --- a/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
> +++ b/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
> @@ -47,6 +47,11 @@ properties:
> - const: microchip,mpfs-ccache
> - const: sifive,fu540-c000-ccache
> - const: cache
> + - items:
> + - const: microchip,pic64gx-ccache
> + - const: microchip,mpfs-ccache
> + - const: sifive,fu540-c000-ccache
> + - const: cache
>
> cache-block-size:
> const: 64
> @@ -93,6 +98,7 @@ allOf:
> - starfive,jh7100-ccache
> - starfive,jh7110-ccache
> - microchip,mpfs-ccache
> + - microchip,pic64gx-ccache
>
> then:
> properties:
> --
> 2.30.2
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 17/17] riscv: dts: microchip: add PIC64GX Curiosity Kit dts
2024-07-25 12:16 ` [PATCH 17/17] riscv: dts: microchip: add PIC64GX Curiosity Kit dts pierre-henry.moussay
@ 2024-07-25 14:15 ` Emil Renner Berthing
2024-07-25 14:35 ` Conor Dooley
1 sibling, 0 replies; 28+ messages in thread
From: Emil Renner Berthing @ 2024-07-25 14:15 UTC (permalink / raw)
To: pierre-henry.moussay, Conor Dooley, Daire McNamara, Rob Herring,
Krzysztof Kozlowski, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Samuel Holland
Cc: linux-riscv, devicetree, linux-kernel
pierre-henry.moussay@ wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> The Curiosity-GX10000 (PIC64GX SoC Curiosity Kit) is a compact SoC
> prototyping board featuring a Microchip PIC64GX SoC
> PIC64GC-1000. Features include:
> - 1 GB DDR4 SDRAM
> - Gigabit Ethernet
> - microSD-card slot
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> arch/riscv/boot/dts/microchip/Makefile | 1 +
> .../dts/microchip/pic64gx-curiosity-kit.dts | 114 ++++
> arch/riscv/boot/dts/microchip/pic64gx.dtsi | 616 ++++++++++++++++++
> 3 files changed, 731 insertions(+)
> create mode 100644 arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts
> create mode 100644 arch/riscv/boot/dts/microchip/pic64gx.dtsi
>
> diff --git a/arch/riscv/boot/dts/microchip/Makefile b/arch/riscv/boot/dts/microchip/Makefile
> index e177815bf1a2..78ba2952a164 100644
> --- a/arch/riscv/boot/dts/microchip/Makefile
> +++ b/arch/riscv/boot/dts/microchip/Makefile
> @@ -4,3 +4,4 @@ dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-m100pfsevp.dtb
> dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-polarberry.dtb
> dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-sev-kit.dtb
> dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-tysom-m.dtb
> +dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += pic64gx-curiosity-kit.dtb
> diff --git a/arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts b/arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts
> new file mode 100644
> index 000000000000..2eda33689893
> --- /dev/null
> +++ b/arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts
> @@ -0,0 +1,114 @@
> +// SPDX-License-Identifier: (GPL-2.0 OR MIT)
> +/* Copyright (c) 2020-2021 Microchip Technology Inc */
> +
> +/dts-v1/;
> +
> +#include "pic64gx.dtsi"
> +
> +/* Clock frequency (in Hz) of the rtcclk */
> +#define RTCCLK_FREQ 1000000
> +
> +/ {
> + #address-cells = <2>;
> + #size-cells = <2>;
> + model = "Microchip Pic64GX Curiosity Kit";
Hi Pierre-Henry,
Thanks for the patches! It looks like you forgot to add Ivan's fixup to the
model name so it matches the name in the HSS and u-boot. Eg.
model = "Microchip PIC64GX Curiosity Kit";
/Emil
> + compatible = "microchip,pic64gx-curiosity-kit", "microchip,pic64gx";
> +
> + aliases {
> + ethernet0 = &mac0;
> + serial1 = &mmuart1;
> + };
> +
> + chosen {
> + stdout-path = "serial1:115200n8";
> + };
> +
> + cpus {
> + timebase-frequency = <RTCCLK_FREQ>;
> + };
> +
> + memory@80000000 {
> + device_type = "memory";
> + reg = <0x0 0x80000000 0x0 0x40000000>;
> + };
> +
> + reserved-memory {
> + #address-cells = <2>;
> + #size-cells = <2>;
> + ranges;
> +
> + hss: hss-buffer@bfc00000 {
> + compatible = "shared-dma-pool";
> + reg = <0x0 0xbfc00000 0x0 0x400000>;
> + no-map;
> + };
> + };
> +};
> +
> +
> +&mac0 {
> + status = "okay";
> + phy-mode = "sgmii";
> + phy-handle = <&phy0>;
> +
> + phy0: ethernet-phy@b {
> + reg = <0xb>;
> + };
> +};
> +
> +&mbox {
> + status = "okay";
> +};
> +
> +&mmc {
> + bus-width = <4>;
> + disable-wp;
> + cap-sd-highspeed;
> + cap-mmc-highspeed;
> + sd-uhs-sdr12;
> + sd-uhs-sdr25;
> + sd-uhs-sdr50;
> + sd-uhs-sdr104;
> + no-1-8-v;
> + status = "okay";
> +};
> +
> +&mmuart1 {
> + status = "okay";
> +};
> +
> +&refclk {
> + clock-frequency = <125000000>;
> +};
> +
> +&rtc {
> + status = "okay";
> +};
> +
> +&syscontroller {
> + status = "okay";
> +};
> +
> +&gpio0 {
> + status ="okay";
> + gpio-line-names =
> + "", "", "", "", "", "", "", "",
> + "", "", "", "", "MIPI_CAM_RESET", "MIPI_CAM_STANDBY";
> +};
> +
> +&gpio1 {
> + status ="okay";
> + gpio-line-names =
> + "", "", "LED1", "LED2", "LED3", "LED4", "LED5", "LED6",
> + "LED7", "LED8", "", "", "", "", "", "",
> + "", "", "", "", "HDMI_HPD", "", "", "GPIO_1_23";
> +};
> +
> +&gpio2 {
> + status ="okay";
> + gpio-line-names =
> + "", "", "", "", "", "", "SWITCH2", "USR_IO12",
> + "DIP1", "DIP2", "", "DIP3", "USR_IO1", "USR_IO2", "USR_IO7", "USR_IO8",
> + "USR_IO3", "USR_IO4", "USR_IO5", "USR_IO6", "", "", "USR_IO9", "USR_IO10",
> + "DIP4", "USR_IO11", "", "", "SWITCH1", "", "", "";
> +};
> diff --git a/arch/riscv/boot/dts/microchip/pic64gx.dtsi b/arch/riscv/boot/dts/microchip/pic64gx.dtsi
> new file mode 100644
> index 000000000000..2cf42e741ba9
> --- /dev/null
> +++ b/arch/riscv/boot/dts/microchip/pic64gx.dtsi
> @@ -0,0 +1,616 @@
> +// SPDX-License-Identifier: (GPL-2.0 OR MIT)
> +/* Copyright (c) 2024 Microchip Technology Inc */
> +
> +/dts-v1/;
> +#include "dt-bindings/clock/microchip,pic64gx-clock.h"
> +
> +/ {
> + #address-cells = <2>;
> + #size-cells = <2>;
> + model = "Microchip PIC64GX SoC";
> + compatible = "microchip,pic64gx";
> +
> + cpus {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + timebase-frequency = <1000000>;
> +
> + cpu0: cpu@0 {
> + compatible = "sifive,e51", "sifive,rocket0", "riscv";
> + device_type = "cpu";
> + i-cache-block-size = <64>;
> + i-cache-sets = <128>;
> + i-cache-size = <16384>;
> + reg = <0>;
> + riscv,isa = "rv64imac";
> + riscv,isa-base = "rv64i";
> + riscv,isa-extensions = "i", "m", "a", "c", "zicntr",
> + "zicsr", "zifencei", "zihpm";
> + clocks = <&clkcfg CLK_CPU>;
> + status = "disabled";
> +
> + cpu0_intc: interrupt-controller {
> + #interrupt-cells = <1>;
> + compatible = "riscv,cpu-intc";
> + interrupt-controller;
> + };
> + };
> +
> + cpu1: cpu@1 {
> + compatible = "sifive,u54-mc", "sifive,rocket0",
> + "riscv";
> + d-cache-block-size = <64>;
> + d-cache-sets = <64>;
> + d-cache-size = <32768>;
> + d-tlb-sets = <1>;
> + d-tlb-size = <32>;
> + device_type = "cpu";
> + i-cache-block-size = <64>;
> + i-cache-sets = <64>;
> + i-cache-size = <32768>;
> + i-tlb-sets = <1>;
> + i-tlb-size = <32>;
> + mmu-type = "riscv,sv39";
> + reg = <1>;
> + riscv,isa = "rv64imafdc";
> + riscv,isa-base = "rv64i";
> + riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
> + "zicntr", "zicsr", "zifencei",
> + "zihpm";
> + clocks = <&clkcfg CLK_CPU>;
> + tlb-split;
> + next-level-cache = <&cctrllr>;
> + status = "okay";
> +
> + cpu1_intc: interrupt-controller {
> + #interrupt-cells = <1>;
> + compatible = "riscv,cpu-intc";
> + interrupt-controller;
> + };
> + };
> +
> + cpu2: cpu@2 {
> + compatible = "sifive,u54-mc", "sifive,rocket0",
> + "riscv";
> + d-cache-block-size = <64>;
> + d-cache-sets = <64>;
> + d-cache-size = <32768>;
> + d-tlb-sets = <1>;
> + d-tlb-size = <32>;
> + device_type = "cpu";
> + i-cache-block-size = <64>;
> + i-cache-sets = <64>;
> + i-cache-size = <32768>;
> + i-tlb-sets = <1>;
> + i-tlb-size = <32>;
> + mmu-type = "riscv,sv39";
> + reg = <2>;
> + riscv,isa = "rv64imafdc";
> + riscv,isa-base = "rv64i";
> + riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
> + "zicntr", "zicsr", "zifencei",
> + "zihpm";
> + clocks = <&clkcfg CLK_CPU>;
> + tlb-split;
> + next-level-cache = <&cctrllr>;
> + status = "okay";
> +
> + cpu2_intc: interrupt-controller {
> + #interrupt-cells = <1>;
> + compatible = "riscv,cpu-intc";
> + interrupt-controller;
> + };
> + };
> +
> + cpu3: cpu@3 {
> + compatible = "sifive,u54-mc", "sifive,rocket0",
> + "riscv";
> + d-cache-block-size = <64>;
> + d-cache-sets = <64>;
> + d-cache-size = <32768>;
> + d-tlb-sets = <1>;
> + d-tlb-size = <32>;
> + device_type = "cpu";
> + i-cache-block-size = <64>;
> + i-cache-sets = <64>;
> + i-cache-size = <32768>;
> + i-tlb-sets = <1>;
> + i-tlb-size = <32>;
> + mmu-type = "riscv,sv39";
> + reg = <3>;
> + riscv,isa = "rv64imafdc";
> + riscv,isa-base = "rv64i";
> + riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
> + "zicntr", "zicsr", "zifencei",
> + "zihpm";
> + clocks = <&clkcfg CLK_CPU>;
> + tlb-split;
> + next-level-cache = <&cctrllr>;
> + status = "okay";
> +
> + cpu3_intc: interrupt-controller {
> + #interrupt-cells = <1>;
> + compatible = "riscv,cpu-intc";
> + interrupt-controller;
> + };
> + };
> +
> + cpu4: cpu@4 {
> + compatible = "sifive,u54-mc", "sifive,rocket0",
> + "riscv";
> + d-cache-block-size = <64>;
> + d-cache-sets = <64>;
> + d-cache-size = <32768>;
> + d-tlb-sets = <1>;
> + d-tlb-size = <32>;
> + device_type = "cpu";
> + i-cache-block-size = <64>;
> + i-cache-sets = <64>;
> + i-cache-size = <32768>;
> + i-tlb-sets = <1>;
> + i-tlb-size = <32>;
> + mmu-type = "riscv,sv39";
> + reg = <4>;
> + riscv,isa = "rv64imafdc";
> + riscv,isa-base = "rv64i";
> + riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
> + "zicntr", "zicsr", "zifencei",
> + "zihpm";
> + clocks = <&clkcfg CLK_CPU>;
> + tlb-split;
> + next-level-cache = <&cctrllr>;
> + status = "okay";
> + cpu4_intc: interrupt-controller {
> + #interrupt-cells = <1>;
> + compatible = "riscv,cpu-intc";
> + interrupt-controller;
> + };
> + };
> +
> + cpu-map {
> + cluster0 {
> + core0 {
> + cpu = <&cpu0>;
> + };
> +
> + core1 {
> + cpu = <&cpu1>;
> + };
> +
> + core2 {
> + cpu = <&cpu2>;
> + };
> +
> + core3 {
> + cpu = <&cpu3>;
> + };
> +
> + core4 {
> + cpu = <&cpu4>;
> + };
> + };
> + };
> + };
> +
> + refclk: mssrefclk {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + };
> +
> + syscontroller: syscontroller {
> + compatible = "microchip,pic64gx-sys-controller",
> + "microchip,mpfs-sys-controller";
> + mboxes = <&mbox 0>;
> + };
> +
> + scbclk: mssclkclk {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <80000000>;
> + };
> +
> + soc {
> + #address-cells = <2>;
> + #size-cells = <2>;
> + compatible = "simple-bus";
> + ranges;
> +
> + cctrllr: cache-controller@2010000 {
> + compatible = "microchip,pic64gx-ccache",
> + "microchip,mpfs-ccache",
> + "sifive,fu540-c000-ccache", "cache";
> + reg = <0x0 0x2010000 0x0 0x1000>;
> + cache-block-size = <64>;
> + cache-level = <2>;
> + cache-sets = <1024>;
> + cache-size = <2097152>;
> + cache-unified;
> + interrupt-parent = <&plic>;
> + interrupts = <1>, <3>, <4>, <2>;
> + };
> +
> + clint: clint@2000000 {
> + compatible = "sifive,fu540-c000-clint",
> + "sifive,clint0";
> + reg = <0x0 0x2000000 0x0 0xC000>;
> + interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>,
> + <&cpu1_intc 3>, <&cpu1_intc 7>,
> + <&cpu2_intc 3>, <&cpu2_intc 7>,
> + <&cpu3_intc 3>, <&cpu3_intc 7>,
> + <&cpu4_intc 3>, <&cpu4_intc 7>;
> + };
> +
> + plic: interrupt-controller@c000000 {
> + compatible = "sifive,fu540-c000-plic",
> + "sifive,plic-1.0.0";
> + reg = <0x0 0xc000000 0x0 0x4000000>;
> + #address-cells = <0>;
> + #interrupt-cells = <1>;
> + interrupt-controller;
> + interrupts-extended = <&cpu0_intc 11>,
> + <&cpu1_intc 11>, <&cpu1_intc 9>,
> + <&cpu2_intc 11>, <&cpu2_intc 9>,
> + <&cpu3_intc 11>, <&cpu3_intc 9>,
> + <&cpu4_intc 11>, <&cpu4_intc 9>;
> + riscv,ndev = <186>;
> + };
> +
> + pdma: dma-controller@3000000 {
> + compatible = "microchip,pic64gx-pdma",
> + "microchip,mpfs-pdma",
> + "sifive,pdma0";
> + reg = <0x0 0x3000000 0x0 0x8000>;
> + interrupt-parent = <&plic>;
> + interrupts = <5 6>, <7 8>, <9 10>, <11 12>;
> + dma-channels = <4>;
> + #dma-cells = <1>;
> + };
> +
> + clkcfg: clkcfg@20002000 {
> + compatible = "microchip,pic64gx-clkcfg",
> + "microchip,mpfs-clkcfg";
> + reg = <0x0 0x20002000 0x0 0x1000>,
> + <0x0 0x3E001000 0x0 0x1000>;
> + clocks = <&refclk>;
> + #clock-cells = <1>;
> + #reset-cells = <1>;
> + };
> +
> + ccc_se: clock-controller@38010000 {
> + compatible = "microchip,pic64gx-ccc",
> + "microchip,mpfs-ccc";
> + reg = <0x0 0x38010000 0x0 0x1000>,
> + <0x0 0x38020000 0x0 0x1000>,
> + <0x0 0x39010000 0x0 0x1000>,
> + <0x0 0x39020000 0x0 0x1000>;
> + #clock-cells = <1>;
> + status = "disabled";
> + };
> +
> + ccc_ne: clock-controller@38040000 {
> + compatible = "microchip,pic64gx-ccc",
> + "microchip,mpfs-ccc";
> + reg = <0x0 0x38040000 0x0 0x1000>,
> + <0x0 0x38080000 0x0 0x1000>,
> + <0x0 0x39040000 0x0 0x1000>,
> + <0x0 0x39080000 0x0 0x1000>;
> + #clock-cells = <1>;
> + status = "disabled";
> + };
> +
> + ccc_nw: clock-controller@38100000 {
> + compatible = "microchip,pic64gx-ccc",
> + "microchip,mpfs-ccc";
> + reg = <0x0 0x38100000 0x0 0x1000>,
> + <0x0 0x38200000 0x0 0x1000>,
> + <0x0 0x39100000 0x0 0x1000>,
> + <0x0 0x39200000 0x0 0x1000>;
> + #clock-cells = <1>;
> + status = "disabled";
> + };
> +
> + ccc_sw: clock-controller@38400000 {
> + compatible = "microchip,pic64gx-ccc",
> + "microchip,mpfs-ccc";
> + reg = <0x0 0x38400000 0x0 0x1000>,
> + <0x0 0x38800000 0x0 0x1000>,
> + <0x0 0x39400000 0x0 0x1000>,
> + <0x0 0x39800000 0x0 0x1000>;
> + #clock-cells = <1>;
> + status = "disabled";
> + };
> +
> + mmuart0: serial@20000000 {
> + compatible = "ns16550a";
> + reg = <0x0 0x20000000 0x0 0x400>;
> + reg-io-width = <4>;
> + reg-shift = <2>;
> + interrupt-parent = <&plic>;
> + interrupts = <90>;
> + current-speed = <115200>;
> + clocks = <&clkcfg CLK_MMUART0>;
> + status = "disabled"; /* Reserved for the HSS */
> + };
> +
> + mmuart1: serial@20100000 {
> + compatible = "ns16550a";
> + reg = <0x0 0x20100000 0x0 0x400>;
> + reg-io-width = <4>;
> + reg-shift = <2>;
> + interrupt-parent = <&plic>;
> + interrupts = <91>;
> + current-speed = <115200>;
> + clocks = <&clkcfg CLK_MMUART1>;
> + status = "disabled";
> + };
> +
> + mmuart2: serial@20102000 {
> + compatible = "ns16550a";
> + reg = <0x0 0x20102000 0x0 0x400>;
> + reg-io-width = <4>;
> + reg-shift = <2>;
> + interrupt-parent = <&plic>;
> + interrupts = <92>;
> + current-speed = <115200>;
> + clocks = <&clkcfg CLK_MMUART2>;
> + status = "disabled";
> + };
> +
> + mmuart3: serial@20104000 {
> + compatible = "ns16550a";
> + reg = <0x0 0x20104000 0x0 0x400>;
> + reg-io-width = <4>;
> + reg-shift = <2>;
> + interrupt-parent = <&plic>;
> + interrupts = <93>;
> + current-speed = <115200>;
> + clocks = <&clkcfg CLK_MMUART3>;
> + status = "disabled";
> + };
> +
> + mmuart4: serial@20106000 {
> + compatible = "ns16550a";
> + reg = <0x0 0x20106000 0x0 0x400>;
> + reg-io-width = <4>;
> + reg-shift = <2>;
> + interrupt-parent = <&plic>;
> + interrupts = <94>;
> + clocks = <&clkcfg CLK_MMUART4>;
> + current-speed = <115200>;
> + status = "disabled";
> + };
> +
> + /* Common node entry for emmc/sd */
> + mmc: mmc@20008000 {
> + compatible = "microchip,pic64gx-sd4hc", "cdns,sd4hc";
> + reg = <0x0 0x20008000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupts = <88>;
> + clocks = <&clkcfg CLK_MMC>;
> + max-frequency = <200000000>;
> + status = "disabled";
> + };
> +
> + spi0: spi@20108000 {
> + compatible = "microchip,pic64gx-spi",
> + "microchip,mpfs-spi";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x0 0x20108000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupts = <54>;
> + clocks = <&clkcfg CLK_SPI0>;
> + status = "disabled";
> + };
> +
> + spi1: spi@20109000 {
> + compatible = "microchip,pic64gx-spi",
> + "microchip,mpfs-spi";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x0 0x20109000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupts = <55>;
> + clocks = <&clkcfg CLK_SPI1>;
> + status = "disabled";
> + };
> +
> + qspi: spi@21000000 {
> + compatible = "microchip,pic64gx-qspi",
> + "microchip,coreqspi-rtl-v2";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x0 0x21000000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupts = <85>;
> + clocks = <&clkcfg CLK_QSPI>;
> + status = "disabled";
> + };
> +
> + i2c0: i2c@2010a000 {
> + compatible = "microchip,pic64gx-i2c",
> + "microchip,mpfs-i2c",
> + "microchip,corei2c-rtl-v7";
> + reg = <0x0 0x2010a000 0x0 0x1000>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + interrupt-parent = <&plic>;
> + interrupts = <58>;
> + clocks = <&clkcfg CLK_I2C0>;
> + clock-frequency = <100000>;
> + status = "disabled";
> + };
> +
> + i2c1: i2c@2010b000 {
> + compatible = "microchip,pic64gx-i2c",
> + "microchip,mpfs-i2c",
> + "microchip,corei2c-rtl-v7";
> + reg = <0x0 0x2010b000 0x0 0x1000>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + interrupt-parent = <&plic>;
> + interrupts = <61>;
> + clocks = <&clkcfg CLK_I2C1>;
> + clock-frequency = <100000>;
> + status = "disabled";
> + };
> +
> + can0: can@2010c000 {
> + compatible = "microchip,pic64gx-can",
> + "microchip,mpfs-can";
> + reg = <0x0 0x2010c000 0x0 0x1000>;
> + clocks = <&clkcfg CLK_CAN0>, <&clkcfg CLK_MSSPLL3>;
> + interrupt-parent = <&plic>;
> + interrupts = <56>;
> + status = "disabled";
> + };
> +
> + can1: can@2010d000 {
> + compatible = "microchip,pic64gx-can",
> + "microchip,mpfs-can";
> + reg = <0x0 0x2010d000 0x0 0x1000>;
> + clocks = <&clkcfg CLK_CAN1>, <&clkcfg CLK_MSSPLL3>;
> + interrupt-parent = <&plic>;
> + interrupts = <57>;
> + status = "disabled";
> + };
> +
> + mac0: ethernet@20110000 {
> + compatible = "microchip,pic64gx-macb",
> + "microchip,mpfs-macb",
> + "cdns,macb";
> + reg = <0x0 0x20110000 0x0 0x2000>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + interrupt-parent = <&plic>;
> + interrupts = <64>, <65>, <66>, <67>, <68>, <69>;
> + local-mac-address = [00 00 00 00 00 00];
> + clocks = <&clkcfg CLK_MAC0>, <&clkcfg CLK_AHB>;
> + clock-names = "pclk", "hclk";
> + resets = <&clkcfg CLK_MAC0>;
> + status = "disabled";
> + };
> +
> + mac1: ethernet@20112000 {
> + compatible = "microchip,pic64gx-macb",
> + "microchip,mpfs-macb",
> + "cdns,macb";
> + reg = <0x0 0x20112000 0x0 0x2000>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + interrupt-parent = <&plic>;
> + interrupts = <70>, <71>, <72>, <73>, <74>, <75>;
> + local-mac-address = [00 00 00 00 00 00];
> + clocks = <&clkcfg CLK_MAC1>, <&clkcfg CLK_AHB>;
> + clock-names = "pclk", "hclk";
> + resets = <&clkcfg CLK_MAC1>;
> + status = "disabled";
> + };
> +
> + gpio0: gpio@20120000 {
> + compatible = "microchip,pic64gx-gpio",
> + "microchip,mpfs-gpio";
> + reg = <0x0 0x20120000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupt-controller;
> + #interrupt-cells = <1>;
> + interrupts = <51>, <51>, <51>, <51>,
> + <51>, <51>, <51>, <51>,
> + <51>, <51>, <51>, <51>,
> + <51>, <51>;
> + clocks = <&clkcfg CLK_GPIO0>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + ngpios = <14>;
> + status = "disabled";
> + };
> +
> + gpio1: gpio@20121000 {
> + compatible = "microchip,pic64gx-gpio",
> + "microchip,mpfs-gpio";
> + reg = <0x0 0x20121000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupt-controller;
> + #interrupt-cells = <1>;
> + interrupts = <52>, <52>, <52>, <52>,
> + <52>, <52>, <52>, <52>,
> + <52>, <52>, <52>, <52>,
> + <52>, <52>, <52>, <52>,
> + <52>, <52>, <52>, <52>,
> + <52>, <52>, <52>, <52>;
> + clocks = <&clkcfg CLK_GPIO1>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + ngpios = <24>;
> + status = "disabled";
> + };
> +
> + gpio2: gpio@20122000 {
> + compatible = "microchip,pic64gx-gpio",
> + "microchip,mpfs-gpio";
> + reg = <0x0 0x20122000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupt-controller;
> + #interrupt-cells = <1>;
> + interrupts = <53>, <53>, <53>, <53>,
> + <53>, <53>, <53>, <53>,
> + <53>, <53>, <53>, <53>,
> + <53>, <53>, <53>, <53>,
> + <53>, <53>, <53>, <53>,
> + <53>, <53>, <53>, <53>,
> + <53>, <53>, <53>, <53>,
> + <53>, <53>, <53>, <53>;
> + clocks = <&clkcfg CLK_GPIO2>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + ngpios = <32>;
> + status = "disabled";
> + };
> +
> + rtc: rtc@20124000 {
> + compatible = "microchip,pic64gx-rtc",
> + "microchip,mpfs-rtc";
> + reg = <0x0 0x20124000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupts = <80>, <81>;
> + clocks = <&clkcfg CLK_RTC>, <&clkcfg CLK_RTCREF>;
> + clock-names = "rtc", "rtcref";
> + status = "disabled";
> + };
> +
> + usb: usb@20201000 {
> + compatible = "microchip,pic64gx-musb",
> + "microchip,mpfs-musb";
> + reg = <0x0 0x20201000 0x0 0x1000>;
> + interrupt-parent = <&plic>;
> + interrupts = <86>, <87>;
> + clocks = <&clkcfg CLK_USB>;
> + interrupt-names = "dma", "mc";
> + status = "disabled";
> + };
> +
> + mbox: mailbox@37020000 {
> + compatible = "microchip,pic64gx-mailbox",
> + "microchip,mpfs-mailbox";
> + reg = <0x0 0x37020000 0x0 0x58>,
> + <0x0 0x2000318C 0x0 0x40>,
> + <0x0 0x37020800 0x0 0x100>;
> + interrupt-parent = <&plic>;
> + interrupts = <96>;
> + #mbox-cells = <1>;
> + status = "disabled";
> + };
> +
> + syscontroller_qspi: spi@37020100 {
> + compatible = "microchip,pic64gx-qspi",
> + "microchip,coreqspi-rtl-v2";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x0 0x37020100 0x0 0x100>;
> + interrupt-parent = <&plic>;
> + interrupts = <110>;
> + clocks = <&scbclk>;
> + status = "disabled";
> + };
> + };
> +};
> --
> 2.30.2
>
>
> _______________________________________________
> linux-riscv mailing list
> linux-riscv@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 03/17] dt-bindings: mbox: add PIC64GX mailbox compatibility to MPFS mailbox
2024-07-25 12:15 ` [PATCH 03/17] dt-bindings: mbox: add PIC64GX mailbox compatibility to MPFS mailbox pierre-henry.moussay
@ 2024-07-25 14:16 ` Conor Dooley
0 siblings, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:16 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Conor Dooley, Daire McNamara, Jassi Brar, Rob Herring,
Krzysztof Kozlowski, linux-riscv, linux-kernel, devicetree
[-- Attachment #1: Type: text/plain, Size: 1628 bytes --]
On Thu, Jul 25, 2024 at 01:15:55PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> PIC64GX mailbox is compatible with MPFS mailbox driver
I don't want this one merged as-is. The mpfs binding here is wrong, and
doesn't describe the hardware properly. One of the regions should be
described as an mfd or syscon because there are several unrelated functions
(hwmon, a reset, mailbox cr/sr and trimming) there - see pfsoc_control_scb
in the regmap for more information. The mpfs binding should be fixed,
rather than adding something incorrect here for the pic64gx.
I'm on holidays atm, I'll try to explain more when I get back.
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> .../devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml b/Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml
> index 404477910f02..9e45112e185a 100644
> --- a/Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml
> +++ b/Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml
> @@ -11,7 +11,11 @@ maintainers:
>
> properties:
> compatible:
> - const: microchip,mpfs-mailbox
> + oneOf:
> + - items:
> + - const: microchip,pic64gx-mailbox
> + - const: microchip,mpfs-mailbox
> + - const: microchip,mpfs-mailbox
>
> reg:
> oneOf:
> --
> 2.30.2
>
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 15/17] dt-bindings: clk: microchip: Add Microchip PIC64GX host binding
2024-07-25 12:16 ` [PATCH 15/17] dt-bindings: clk: microchip: Add Microchip PIC64GX host binding pierre-henry.moussay
@ 2024-07-25 14:18 ` Conor Dooley
0 siblings, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:18 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Michael Turquette, Stephen Boyd, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, linux-kernel, linux-clk, devicetree
[-- Attachment #1: Type: text/plain, Size: 2913 bytes --]
On Thu, Jul 25, 2024 at 01:16:07PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> Add device tree bindings for the Microchip PIC64GX system
> clock controller
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
I don't see a point in duplicating this header from mpfs. The defines
are all identical.
Cheers,
Conor.
> ---
> .../clock/microchip,pic64gx-clock.h | 76 +++++++++++++++++++
> 1 file changed, 76 insertions(+)
> create mode 100644 include/dt-bindings/clock/microchip,pic64gx-clock.h
>
> diff --git a/include/dt-bindings/clock/microchip,pic64gx-clock.h b/include/dt-bindings/clock/microchip,pic64gx-clock.h
> new file mode 100644
> index 000000000000..91687c9da516
> --- /dev/null
> +++ b/include/dt-bindings/clock/microchip,pic64gx-clock.h
> @@ -0,0 +1,76 @@
> +/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
> +/*
> + * Daire McNamara,<daire.mcnamara@microchip.com>
> + * Copyright (C) 2024 Microchip Technology Inc. All rights reserved.
> + */
> +
> +#ifndef _DT_BINDINGS_CLK_MICROCHIP_PIC64GX_H_
> +#define _DT_BINDINGS_CLK_MICROCHIP_PIC64GX_H_
> +
> +#define CLK_CPU 0
> +#define CLK_AXI 1
> +#define CLK_AHB 2
> +
> +#define CLK_ENVM 3
> +#define CLK_MAC0 4
> +#define CLK_MAC1 5
> +#define CLK_MMC 6
> +#define CLK_TIMER 7
> +#define CLK_MMUART0 8
> +#define CLK_MMUART1 9
> +#define CLK_MMUART2 10
> +#define CLK_MMUART3 11
> +#define CLK_MMUART4 12
> +#define CLK_SPI0 13
> +#define CLK_SPI1 14
> +#define CLK_I2C0 15
> +#define CLK_I2C1 16
> +#define CLK_CAN0 17
> +#define CLK_CAN1 18
> +#define CLK_USB 19
> +#define CLK_RESERVED 20
> +#define CLK_RTC 21
> +#define CLK_QSPI 22
> +#define CLK_GPIO0 23
> +#define CLK_GPIO1 24
> +#define CLK_GPIO2 25
> +#define CLK_DDRC 26
> +#define CLK_FIC0 27
> +#define CLK_FIC1 28
> +#define CLK_FIC2 29
> +#define CLK_FIC3 30
> +#define CLK_ATHENA 31
> +#define CLK_CFM 32
> +
> +#define CLK_RTCREF 33
> +#define CLK_MSSPLL 34
> +#define CLK_MSSPLL0 34
> +#define CLK_MSSPLL1 35
> +#define CLK_MSSPLL2 36
> +#define CLK_MSSPLL3 37
> +/* 38 is reserved for MSS PLL internals */
> +
> +/* Clock Conditioning Circuitry Clock IDs */
> +
> +#define CLK_CCC_PLL0 0
> +#define CLK_CCC_PLL1 1
> +#define CLK_CCC_DLL0 2
> +#define CLK_CCC_DLL1 3
> +
> +#define CLK_CCC_PLL0_OUT0 4
> +#define CLK_CCC_PLL0_OUT1 5
> +#define CLK_CCC_PLL0_OUT2 6
> +#define CLK_CCC_PLL0_OUT3 7
> +
> +#define CLK_CCC_PLL1_OUT0 8
> +#define CLK_CCC_PLL1_OUT1 9
> +#define CLK_CCC_PLL1_OUT2 10
> +#define CLK_CCC_PLL1_OUT3 11
> +
> +#define CLK_CCC_DLL0_OUT0 12
> +#define CLK_CCC_DLL0_OUT1 13
> +
> +#define CLK_CCC_DLL1_OUT0 14
> +#define CLK_CCC_DLL1_OUT1 15
> +
> +#endif /* _DT_BINDINGS_CLK_MICROCHIP_PIC64GX_H_ */
> --
> 2.30.2
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 07/17] dt-bindings: clock: mpfs-ccc: Add PIC64GX compatibility
2024-07-25 12:15 ` [PATCH 07/17] dt-bindings: clock: mpfs-ccc: Add PIC64GX compatibility pierre-henry.moussay
@ 2024-07-25 14:19 ` Conor Dooley
0 siblings, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:19 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Conor Dooley, Daire McNamara, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, linux-riscv, linux-clk,
devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1469 bytes --]
On Thu, Jul 25, 2024 at 01:15:59PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> PIC64GX SoC has clock compatibles with the MPFS IP
These commit messages don't really make sense. It should read something
like "The pic64gx SoC has has Clock Conditioning Circuitry compatible
with that on PolarFire SoC" or something along those lines.
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> .../devicetree/bindings/clock/microchip,mpfs-ccc.yaml | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/clock/microchip,mpfs-ccc.yaml b/Documentation/devicetree/bindings/clock/microchip,mpfs-ccc.yaml
> index f1770360798f..9a6b50527c42 100644
> --- a/Documentation/devicetree/bindings/clock/microchip,mpfs-ccc.yaml
> +++ b/Documentation/devicetree/bindings/clock/microchip,mpfs-ccc.yaml
> @@ -17,7 +17,11 @@ description: |
>
> properties:
> compatible:
> - const: microchip,mpfs-ccc
> + oneOf:
> + - items:
> + - const: microchip,pic64gx-ccc
> + - const: microchip,mpfs-ccc
> + - const: microchip,mpfs-ccc
>
> reg:
> items:
> --
> 2.30.2
>
>
> _______________________________________________
> linux-riscv mailing list
> linux-riscv@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-riscv
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 08/17] dt-bindings: clock: mpfs-clkcfg: Add PIC64GX compatibility
2024-07-25 12:16 ` [PATCH 08/17] dt-bindings: clock: mpfs-clkcfg: " pierre-henry.moussay
@ 2024-07-25 14:22 ` Conor Dooley
0 siblings, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:22 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Conor Dooley, Daire McNamara, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, linux-riscv, linux-clk,
devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1577 bytes --]
On Thu, Jul 25, 2024 at 01:16:00PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> PIC64GX has a clock controller compatible whith mpfs-clkcfg
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> .../devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml b/Documentation/devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml
> index e4e1c31267d2..ca889f5df87a 100644
> --- a/Documentation/devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml
> +++ b/Documentation/devicetree/bindings/clock/microchip,mpfs-clkcfg.yaml
> @@ -19,7 +19,11 @@ description: |
>
> properties:
> compatible:
> - const: microchip,mpfs-clkcfg
> + oneOf:
> + - items:
> + - const: microchip,pic64gx-clkcfg
> + - const: microchip,mpfs-clkcfg
> + - const: microchip,mpfs-clkcfg
Ditto here, the mpfs binding is wrong and I don't want the pic64gx to
ape that. Instead, we should take the opportunity to fix the binding.
You're gonna need to do that so that the pinctrl driver can access the
IOMUX registers correctly. As with the mailbox, either simplemfd or
syscon are needed here. I mocked something up a few weeks ago while
talking to someone about a hwmon driver, I'll dig it up when I am back
to work.
Cheers,
Conor.
>
> reg:
> items:
> --
> 2.30.2
>
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 10/17] dt-bindings: i2c: microchip: corei2c: Add PIC64GX as compatible with driver
2024-07-25 12:16 ` [PATCH 10/17] dt-bindings: i2c: microchip: corei2c: Add PIC64GX as compatible with driver pierre-henry.moussay
@ 2024-07-25 14:24 ` Conor Dooley
0 siblings, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:24 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Conor Dooley, Daire McNamara, Andi Shyti, Rob Herring,
Krzysztof Kozlowski, linux-riscv, linux-i2c, devicetree,
linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1477 bytes --]
On Thu, Jul 25, 2024 at 01:16:02PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> PIC64GX i2c is compatible with the MPFS driver
Please don't talk about drivers, bindings are for hardware.
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml b/Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml
> index afa3db726229..4ba8a27eb8e5 100644
> --- a/Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml
> +++ b/Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml
> @@ -18,6 +18,10 @@ properties:
> - items:
> - const: microchip,mpfs-i2c # Microchip PolarFire SoC compatible SoCs
> - const: microchip,corei2c-rtl-v7 # Microchip Fabric based i2c IP core
> + - items:
> + - const: microchip,pic64gx-i2c
> + - const: microchip,mpfs-i2c # Microchip PolarFire SoC compatible SoCs
Why is an mpfs-i2c fallback required? Can't we just fall back to the
fabric IP?
Cheers,
Conor.
> + - const: microchip,corei2c-rtl-v7 # Microchip Fabric based i2c IP core
> - const: microchip,corei2c-rtl-v7 # Microchip Fabric based i2c IP core
>
> reg:
> --
> 2.30.2
>
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 05/17] dt-bindings: gpio: mpfs-gpio: Add PIC64GX GPIO compatibility
2024-07-25 12:15 ` [PATCH 05/17] dt-bindings: gpio: mpfs-gpio: Add PIC64GX GPIO compatibility pierre-henry.moussay
@ 2024-07-25 14:25 ` Conor Dooley
0 siblings, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:25 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Conor Dooley, Daire McNamara, Linus Walleij, Bartosz Golaszewski,
Rob Herring, Krzysztof Kozlowski, linux-riscv, linux-gpio,
devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1658 bytes --]
On Thu, Jul 25, 2024 at 01:15:57PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> PIC64GX GPIO is compatible with mpfs-gpio driver
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> .../bindings/gpio/microchip,mpfs-gpio.yaml | 16 +++++++++++-----
> 1 file changed, 11 insertions(+), 5 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml b/Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml
> index d61569b3f15b..fdce88374a91 100644
> --- a/Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml
> +++ b/Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml
> @@ -11,10 +11,14 @@ maintainers:
>
> properties:
> compatible:
> - items:
> - - enum:
> - - microchip,mpfs-gpio
> - - microchip,coregpio-rtl-v3
> + oneOf:
> + - items:
> + - const: microchip,pic64gx-gpio
> + - const: microchip,mpfs-gpio
> + - items:
> + - enum:
> + - microchip,mpfs-gpio
> + - microchip,coregpio-rtl-v3
>
> reg:
> maxItems: 1
> @@ -69,7 +73,9 @@ allOf:
> properties:
> compatible:
> contains:
> - const: microchip,mpfs-gpio
> + enum:
> + - microchip,mpfs-gpio
> + - microchip,pic64gx-gpio
This hunk should not be needed, given you have an mpfs-gpio fallback.
Thanks,
Conor.
> then:
> required:
> - interrupts
> --
> 2.30.2
>
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 14/17] dt-bindings: soc: microchip: mpfs-sys-controller: Add PIC64GX compatibility
2024-07-25 12:16 ` [PATCH 14/17] dt-bindings: soc: microchip: mpfs-sys-controller: " pierre-henry.moussay
@ 2024-07-25 14:34 ` Conor Dooley
0 siblings, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:34 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Conor Dooley, Daire McNamara, Rob Herring, Krzysztof Kozlowski,
linux-riscv, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1665 bytes --]
On Thu, Jul 25, 2024 at 01:16:06PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> PIC64GX is compatible with mpfs-sys-controller driver without additional
> feature
Bindings are about hardware, not drivers. Are you sure a fallback is
appropriate here? Does the system controller expose the same features as
it does on PolarFire SoC? For example, FPGA reprogramming: the driver
creates a platform device to which the auto update driver is bound - I
don't think that that is appropriate on a pic64gx.
Thanks,
Conor.
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> .../soc/microchip/microchip,mpfs-sys-controller.yaml | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml b/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml
> index a3fa04f3a1bd..af89d5959747 100644
> --- a/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml
> +++ b/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml
> @@ -24,7 +24,11 @@ properties:
> maxItems: 1
>
> compatible:
> - const: microchip,mpfs-sys-controller
> + oneOf:
> + - items:
> + - const: microchip,pic64gx-sys-controller
> + - const: microchip,mpfs-sys-controller
> + - const: microchip,mpfs-sys-controller
>
> microchip,bitstream-flash:
> $ref: /schemas/types.yaml#/definitions/phandle
> --
> 2.30.2
>
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 17/17] riscv: dts: microchip: add PIC64GX Curiosity Kit dts
2024-07-25 12:16 ` [PATCH 17/17] riscv: dts: microchip: add PIC64GX Curiosity Kit dts pierre-henry.moussay
2024-07-25 14:15 ` Emil Renner Berthing
@ 2024-07-25 14:35 ` Conor Dooley
1 sibling, 0 replies; 28+ messages in thread
From: Conor Dooley @ 2024-07-25 14:35 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Conor Dooley, Daire McNamara, Rob Herring, Krzysztof Kozlowski,
Paul Walmsley, Palmer Dabbelt, Albert Ou, Samuel Holland,
linux-riscv, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1511 bytes --]
On Thu, Jul 25, 2024 at 01:16:09PM +0100, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> The Curiosity-GX10000 (PIC64GX SoC Curiosity Kit) is a compact SoC
> prototyping board featuring a Microchip PIC64GX SoC
> PIC64GC-1000. Features include:
> - 1 GB DDR4 SDRAM
> - Gigabit Ethernet
> - microSD-card slot
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> arch/riscv/boot/dts/microchip/Makefile | 1 +
> .../dts/microchip/pic64gx-curiosity-kit.dts | 114 ++++
> arch/riscv/boot/dts/microchip/pic64gx.dtsi | 616 ++++++++++++++++++
> 3 files changed, 731 insertions(+)
> create mode 100644 arch/riscv/boot/dts/microchip/pic64gx-curiosity-kit.dts
> create mode 100644 arch/riscv/boot/dts/microchip/pic64gx.dtsi
>
> diff --git a/arch/riscv/boot/dts/microchip/Makefile b/arch/riscv/boot/dts/microchip/Makefile
> index e177815bf1a2..78ba2952a164 100644
> --- a/arch/riscv/boot/dts/microchip/Makefile
> +++ b/arch/riscv/boot/dts/microchip/Makefile
> @@ -4,3 +4,4 @@ dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-m100pfsevp.dtb
> dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-polarberry.dtb
> dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-sev-kit.dtb
> dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-tysom-m.dtb
> +dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += pic64gx-curiosity-kit.dtb
s/MICROCHIP_// please. And a patch renaming the others would be neat too
;)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [PATCH 01/17] dt-bindings: can: mpfs: add PIC64GX CAN compatibility
2024-07-25 12:15 ` [PATCH 01/17] dt-bindings: can: mpfs: add PIC64GX CAN compatibility pierre-henry.moussay
@ 2024-08-05 15:17 ` Marc Kleine-Budde
0 siblings, 0 replies; 28+ messages in thread
From: Marc Kleine-Budde @ 2024-08-05 15:17 UTC (permalink / raw)
To: pierre-henry.moussay
Cc: Conor Dooley, Daire McNamara, Marc Kleine-Budde, Vincent Mailhol,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Rob Herring, Krzysztof Kozlowski, linux-riscv, linux-can, netdev,
devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1261 bytes --]
On 25.07.2024 13:15:53, pierre-henry.moussay@microchip.com wrote:
> From: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
>
> PIC64GX CAN is compatible with the MPFS CAN driver, so we just update
> bindings
As Conor already pointed out, you should point out that the CAN
hardware/IP core on the pic64gx is compatible with the one on the mpfs.
regards,
Marc
>
> Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@microchip.com>
> ---
> .../devicetree/bindings/net/can/microchip,mpfs-can.yaml | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml b/Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml
> index 01e4d4a54df6..1219c5cb601f 100644
> --- a/Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml
> +++ b/Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml
> @@ -15,7 +15,11 @@ allOf:
>
> properties:
> compatible:
> - const: microchip,mpfs-can
> + oneOf:
> + - items:
> + - const: microchip,pic64gx-can
> + - const: microchip,mpfs-can
> + - const: microchip,mpfs-can
>
> reg:
> maxItems: 1
> --
> 2.30.2
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
end of thread, other threads:[~2024-08-05 15:24 UTC | newest]
Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20240725121609.13101-1-pierre-henry.moussay@microchip.com>
2024-07-25 12:15 ` [PATCH 01/17] dt-bindings: can: mpfs: add PIC64GX CAN compatibility pierre-henry.moussay
2024-08-05 15:17 ` Marc Kleine-Budde
2024-07-25 12:15 ` [PATCH 02/17] dt-bindings: usb: add PIC64GX compatibility to mpfs-musb driver pierre-henry.moussay
2024-07-25 12:15 ` [PATCH 03/17] dt-bindings: mbox: add PIC64GX mailbox compatibility to MPFS mailbox pierre-henry.moussay
2024-07-25 14:16 ` Conor Dooley
2024-07-25 12:15 ` [PATCH 04/17] dt-bindings: spi: add PIC64GX SPI/QSPI compatibility to MPFS SPI/QSPI bindings pierre-henry.moussay
2024-07-25 12:15 ` [PATCH 05/17] dt-bindings: gpio: mpfs-gpio: Add PIC64GX GPIO compatibility pierre-henry.moussay
2024-07-25 14:25 ` Conor Dooley
2024-07-25 12:15 ` [PATCH 06/17] dt-bindings: riscv: sifive-l2: add a PIC64GX compatible pierre-henry.moussay
2024-07-25 14:11 ` Conor Dooley
2024-07-25 12:15 ` [PATCH 07/17] dt-bindings: clock: mpfs-ccc: Add PIC64GX compatibility pierre-henry.moussay
2024-07-25 14:19 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 08/17] dt-bindings: clock: mpfs-clkcfg: " pierre-henry.moussay
2024-07-25 14:22 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 09/17] dt-bindings: dma: sifive pdma: Add PIC64GX to compatibles pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 10/17] dt-bindings: i2c: microchip: corei2c: Add PIC64GX as compatible with driver pierre-henry.moussay
2024-07-25 14:24 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 11/17] dt-bindings: mmc: cdns: document Microchip PIC64GX MMC/SDHCI controller pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 12/17] dt-bindings: net: cdns,macb: Add PIC64GX compatibility pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 13/17] dt-bindings: rtc: mfps-rtc: " pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 14/17] dt-bindings: soc: microchip: mpfs-sys-controller: " pierre-henry.moussay
2024-07-25 14:34 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 15/17] dt-bindings: clk: microchip: Add Microchip PIC64GX host binding pierre-henry.moussay
2024-07-25 14:18 ` Conor Dooley
2024-07-25 12:16 ` [PATCH 16/17] dt-bindings: riscv: microchip: document the PIC64GX curiosity kit pierre-henry.moussay
2024-07-25 12:16 ` [PATCH 17/17] riscv: dts: microchip: add PIC64GX Curiosity Kit dts pierre-henry.moussay
2024-07-25 14:15 ` Emil Renner Berthing
2024-07-25 14:35 ` Conor Dooley
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox