Skip to contentSkip to conversation

arm64: dts: r8a7796: Add CAN/CAN FD support

PATCH New Chris Paterson 5 participants 19 messages Nov 23, 2016 – Nov 25, 2016 1 message not in the archive

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

cover arm64: dts: r8a7796: Add CAN/CAN FD support

This patch series adds CAN and CAN FD support to the r8a7796.

Based on renesas-devel-20161122-v4.9-rc6.

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

 .../devicetree/bindings/net/can/rcar_can.txt       | 12 +++--
 .../devicetree/bindings/net/can/rcar_canfd.txt     | 12 +++--
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           | 61 ++++++++++++++++++++++
 3 files changed, 75 insertions(+), 10 deletions(-)
Signature · 1 line
1.9.1
#1 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

Quoted 9 lines · Chris Paterson

This patch series adds CAN and CAN FD support to the r8a7796.

Based on renesas-devel-20161122-v4.9-rc6.

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

Quoted 4 lines
 .../devicetree/bindings/net/can/rcar_can.txt       | 12 +++--
 .../devicetree/bindings/net/can/rcar_canfd.txt     | 12 +++--
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           | 61 ++++++++++++++++++++++
 3 files changed, 75 insertions(+), 10 deletions(-)

For all three:

Who takes this series?

Marc

Signature · 12 lines
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20161123/1a4068ca/attachment.sig>
#2 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

Quoted 15 lines · Marc Kleine-Budde
Quoted 9 lines · Chris Paterson

This patch series adds CAN and CAN FD support to the r8a7796.

Based on renesas-devel-20161122-v4.9-rc6.

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

Quoted 4 lines
 .../devicetree/bindings/net/can/rcar_can.txt       | 12 +++--
 .../devicetree/bindings/net/can/rcar_canfd.txt     | 12 +++--
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           | 61 ++++++++++++++++++++++
 3 files changed, 75 insertions(+), 10 deletions(-)
Quoted 5 lines

For all three:

Who takes this series?

I would like to see these patches split up so that the .../devicetree/bindings/ portions can go through you whole the arch/arm64/boot/dts/renesas/ portions go thorugh my renesas tree.

Regarding the arch/arm64/boot/dts/renesas/ portion, I would like some consideration given to what effect enabling memory above 4Gb (64bit addressing) would have.

#3 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

Quoted 18 lines · Simon Horman
Quoted 17 lines · Marc Kleine-Budde
Quoted 9 lines · Chris Paterson

This patch series adds CAN and CAN FD support to the r8a7796.

Based on renesas-devel-20161122-v4.9-rc6.

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

Quoted 4 lines
 .../devicetree/bindings/net/can/rcar_can.txt       | 12 +++--
 .../devicetree/bindings/net/can/rcar_canfd.txt     | 12 +++--
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           | 61 ++++++++++++++++++++++
 3 files changed, 75 insertions(+), 10 deletions(-)

For all three:

Quoted 7 lines
Quoted 3 lines

Who takes this series?

I would like to see these patches split up so that the .../devicetree/bindings/ portions can go through you whole the arch/arm64/boot/dts/renesas/ portions go thorugh my renesas tree.

Ok

Quoted 3 lines

Regarding the arch/arm64/boot/dts/renesas/ portion, I would like some consideration given to what effect enabling memory above 4Gb (64bit addressing) would have.

Marc

Signature · 12 lines
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20161123/803507ec/attachment.sig>
#4 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

In reply to Simon Horman

Hello Simon,

From: Simon Horman [mailto:horms at verge.net.au]
Sent: 23 November 2016 14:30

Quoted 19 lines · Marc Kleine-Budde
Quoted 5 lines · Chris Paterson
Quoted 4 lines

This patch series adds CAN and CAN FD support to the r8a7796.

Based on renesas-devel-20161122-v4.9-rc6.

Quoted 8 lines
Quoted 8 lines

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

 .../devicetree/bindings/net/can/rcar_can.txt       | 12 +++--
 .../devicetree/bindings/net/can/rcar_canfd.txt     | 12 +++--
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           | 61

++++++++++++++++++++++

Quoted 4 lines
Quoted 1 line
 3 files changed, 75 insertions(+), 10 deletions(-)

For all three:

Quoted 7 lines
Quoted 3 lines

Who takes this series?

I would like to see these patches split up so that the .../devicetree/bindings/ portions can go through you whole the arch/arm64/boot/dts/renesas/ portions go thorugh my renesas tree.

Okay, will do.

Quoted 4 lines

Regarding the arch/arm64/boot/dts/renesas/ portion, I would like some consideration given to what effect enabling memory above 4Gb (64bit addressing) would have.

Can you give me some guidance here? I'm not sure what you're referring to. As far as I know the DT reg definition here is 64-bit, or are you referring to DMA usage? If the later, neither CAN driver uses DMA.

Kind regards, Chris

#5 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

Hi Chris,

Quoted 25 lines · Chris Paterson

Hello Simon,

From: Simon Horman [mailto:horms at verge.net.au]
Sent: 23 November 2016 14:30

Quoted 21 lines · Marc Kleine-Budde
Quoted 5 lines · Chris Paterson
Quoted 4 lines

This patch series adds CAN and CAN FD support to the r8a7796.

Based on renesas-devel-20161122-v4.9-rc6.

Quoted 8 lines
Quoted 8 lines

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

 .../devicetree/bindings/net/can/rcar_can.txt       | 12 +++--
 .../devicetree/bindings/net/can/rcar_canfd.txt     | 12 +++--
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           | 61

++++++++++++++++++++++

Quoted 6 lines
Quoted 1 line
 3 files changed, 75 insertions(+), 10 deletions(-)

For all three:

Quoted 7 lines
Quoted 5 lines
Quoted 1 line

Who takes this series?

I would like to see these patches split up so that the .../devicetree/bindings/ portions can go through you whole the arch/arm64/boot/dts/renesas/ portions go thorugh my renesas tree.

Okay, will do.

Thanks.

Quoted 7 lines
Quoted 3 lines

Regarding the arch/arm64/boot/dts/renesas/ portion, I would like some consideration given to what effect enabling memory above 4Gb (64bit addressing) would have.

Can you give me some guidance here? I'm not sure what you're referring to. As far as I know the DT reg definition here is 64-bit, or are you referring to DMA usage? If the later, neither CAN driver uses DMA.

Sorry for not being clearer.

What I would like to know is if there are any problems in the CAN driver or hardware that would prevent it from functioning with memory that requires 64bit addressing present.

If the CAN hardware cannot use DMA then DMA doesn't need to be taken into account. But if it DMA could be enabled in future for CAN, for example after some driver enhancements, then it would be good to know if 64bit memory can be supported - if not it would imply DMA cannot be enabled.

As for non-DMA mode, will this function if memory above 4G is present? If not then in theory such memory couldn't be enabled if the CAN driver is enabled. This is my main concern.

Does the above help?

#6 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

Hello Simon,

From: Simon Horman [mailto:horms at verge.net.au]
Sent: 24 November 2016 10:18

Quoted 49 lines

Hi Chris,

Quoted 25 lines · Chris Paterson

Hello Simon,

From: Simon Horman [mailto:horms at verge.net.au]
Sent: 23 November 2016 14:30

Quoted 21 lines · Marc Kleine-Budde
Quoted 5 lines · Chris Paterson
Quoted 4 lines

This patch series adds CAN and CAN FD support to the r8a7796.

Based on renesas-devel-20161122-v4.9-rc6.

Quoted 8 lines
Quoted 8 lines

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

 .../devicetree/bindings/net/can/rcar_can.txt       | 12 +++--
 .../devicetree/bindings/net/can/rcar_canfd.txt     | 12 +++--
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           | 61

++++++++++++++++++++++

Quoted 6 lines
Quoted 1 line
 3 files changed, 75 insertions(+), 10 deletions(-)

For all three:

Quoted 7 lines
Quoted 5 lines
Quoted 1 line

Who takes this series?

I would like to see these patches split up so that the .../devicetree/bindings/ portions can go through you whole the arch/arm64/boot/dts/renesas/ portions go thorugh my renesas tree.

Okay, will do.

Thanks.

Quoted 8 lines
Quoted 4 lines

Regarding the arch/arm64/boot/dts/renesas/ portion, I would like some consideration given to what effect enabling memory above 4Gb (64bit
addressing) would have.

Can you give me some guidance here? I'm not sure what you're referring to. As far as I know the DT reg definition here is 64-bit, or are you referring to DMA usage? If the later, neither CAN driver uses DMA.

Sorry for not being clearer.

Quoted 8 lines

What I would like to know is if there are any problems in the CAN driver or hardware that would prevent it from functioning with memory that requires 64bit addressing present.

If the CAN hardware cannot use DMA then DMA doesn't need to be taken into account. But if it DMA could be enabled in future for CAN, for example after some driver enhancements, then it would be good to know if 64bit memory can be supported - if not it would imply DMA cannot be enabled.

Thank you for the clarification.

The CAN interface for r8a7795/6 does not support DMA.

With CAN FD there is currently a H/W issue that means DMA is unusable. Potentially this issue could be fixed in the future and DMA support could be added to the driver. If this happens I can see no reason why the CAN FD IP wouldn't be able to handle DMA transfers when using 64bit addressing.

Quoted 4 lines

As for non-DMA mode, will this function if memory above 4G is present? If not then in theory such memory couldn't be enabled if the CAN driver is enabled. This is my main concern.

Yes, it functions fine. We have already tested this with the Renesas v3.3.2 BSP with >4Gb memory.

If this is explanation okay for you, I'll proceed with a v2 splitting off the DT bindings documentation.

Kind regards, Chris

Quoted 2 lines

Does the above help?

#7 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

Hi Chris,

Quoted 13 lines · Chris Paterson

Hello Simon,

From: Simon Horman [mailto:horms at verge.net.au]
Sent: 24 November 2016 10:18

Quoted 9 lines

Hi Chris,

Quoted 6 lines · Chris Paterson

Hello Simon,

From: Simon Horman [mailto:horms at verge.net.au]
Sent: 23 November 2016 14:30

Quoted 2 lines · Marc Kleine-Budde
Quoted 1 line · Chris Paterson

...

Quoted 35 lines
Quoted 11 lines
Quoted 8 lines
Quoted 4 lines

Regarding the arch/arm64/boot/dts/renesas/ portion, I would like some consideration given to what effect enabling memory above 4Gb (64bit
addressing) would have.

Can you give me some guidance here? I'm not sure what you're referring to. As far as I know the DT reg definition here is 64-bit, or are you referring to DMA usage? If the later, neither CAN driver uses DMA.

Sorry for not being clearer.

Quoted 8 lines

What I would like to know is if there are any problems in the CAN driver or hardware that would prevent it from functioning with memory that requires 64bit addressing present.

If the CAN hardware cannot use DMA then DMA doesn't need to be taken into account. But if it DMA could be enabled in future for CAN, for example after some driver enhancements, then it would be good to know if 64bit memory can be supported - if not it would imply DMA cannot be enabled.

Thank you for the clarification.

The CAN interface for r8a7795/6 does not support DMA.

With CAN FD there is currently a H/W issue that means DMA is unusable. Potentially this issue could be fixed in the future and DMA support could be added to the driver. If this happens I can see no reason why the CAN FD IP wouldn't be able to handle DMA transfers when using 64bit addressing.

Quoted 4 lines

As for non-DMA mode, will this function if memory above 4G is present? If not then in theory such memory couldn't be enabled if the CAN driver is enabled. This is my main concern.

Quoted 5 lines

Yes, it functions fine. We have already tested this with the Renesas v3.3.2 BSP with >4Gb memory.

If this is explanation okay for you, I'll proceed with a v2 splitting off the DT bindings documentation.

Thanks for the explanation. I think it would be good to proceed with a v2.

#8 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

In reply to Chris Paterson

Hi Chris,

Quoted 24 lines · Chris Paterson

From: Simon Horman [mailto:horms at verge.net.au]
Sent: 24 November 2016 10:18

Quoted 13 lines · Chris Paterson
Quoted 9 lines

From: Simon Horman [mailto:horms at verge.net.au]

Quoted 4 lines

Regarding the arch/arm64/boot/dts/renesas/ portion, I would like some consideration given to what effect enabling memory above 4Gb (64bit
addressing) would have.

Can you give me some guidance here? I'm not sure what you're referring to. As far as I know the DT reg definition here is 64-bit, or are you referring to DMA usage? If the later, neither CAN driver uses DMA.

Sorry for not being clearer.

Quoted 8 lines

What I would like to know is if there are any problems in the CAN driver or hardware that would prevent it from functioning with memory that requires 64bit addressing present.

If the CAN hardware cannot use DMA then DMA doesn't need to be taken into account. But if it DMA could be enabled in future for CAN, for example after some driver enhancements, then it would be good to know if 64bit memory can be supported - if not it would imply DMA cannot be enabled.

Quoted 5 lines

Thank you for the clarification.

The CAN interface for r8a7795/6 does not support DMA.

With CAN FD there is currently a H/W issue that means DMA is unusable.

Is that issue present on R-Car M3-W, or only on R-Car H3 ES1.x?

Quoted 3 lines

Potentially this issue could be fixed in the future and DMA support could be added to the driver. If this happens I can see no reason why the CAN FD IP wouldn't be able to handle DMA transfers when using 64bit addressing.

Yep, AFAIK it uses SYS-DMAC, which supports 64-bit addressing.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

#9 lore raw

cover arm64: dts: r8a7796: Add CAN/CAN FD support

Hello Geert,

From: [email protected]
Sent: 24 November 2016 16:42

Quoted 31 lines

Hi Chris,

Quoted 12 lines · Chris Paterson

From: Simon Horman [mailto:horms at verge.net.au]
Sent: 24 November 2016 10:18

Quoted 10 lines · Chris Paterson
Quoted 9 lines

From: Simon Horman [mailto:horms at verge.net.au]

Quoted 4 lines

Regarding the arch/arm64/boot/dts/renesas/ portion, I would like some consideration given to what effect enabling memory above 4Gb (64bit
addressing) would have.

Can you give me some guidance here? I'm not sure what you're referring to. As far as I know the DT reg definition here is 64-bit, or are you referring to DMA usage? If the later, neither CAN

driver uses DMA.

Quoted 8 lines
Quoted 8 lines

Sorry for not being clearer.

What I would like to know is if there are any problems in the CAN driver or hardware that would prevent it from functioning with memory that requires 64bit addressing present.

If the CAN hardware cannot use DMA then DMA doesn't need to be

taken

Quoted 3 lines
Quoted 3 lines

into account. But if it DMA could be enabled in future for CAN, for example after some driver enhancements, then it would be good to know if 64bit memory can be supported - if not it would imply DMA cannot be

enabled.

Quoted 1 line
Quoted 7 lines
Quoted 5 lines

Thank you for the clarification.

The CAN interface for r8a7795/6 does not support DMA.

With CAN FD there is currently a H/W issue that means DMA is unusable.

Is that issue present on R-Car M3-W, or only on R-Car H3 ES1.x?

Both

Quoted 7 lines
Quoted 4 lines

Potentially this issue could be fixed in the future and DMA support could be added to the driver. If this happens I can see no reason why the CAN FD IP wouldn't be able to handle DMA transfers when using 64bit

addressing.

Yep, AFAIK it uses SYS-DMAC, which supports 64-bit addressing.

Yep

Quoted 12 lines

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux- m68k.org

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

#10 lore raw

v2 cover can: Add r8a7796 support to CAN/CAN FD

In reply to Chris Paterson

This series adds support for r8a7796 to rcar_can and rcar_canfd.

Original series: [PATCH 0/3] arm64: dts: r8a7796: Add CAN/CAN FD support.

Changes since v1:
- Split bindings documentation changes from device tree changes.
- Rebased on renesas-devel-20161123v2-v4.9-rc6.

Chris Paterson (2):
can: rcar_can: Add r8a7796 support
can: rcar_canfd: Add r8a7796 support

 Documentation/devicetree/bindings/net/can/rcar_can.txt   | 12 +++++++-----
 Documentation/devicetree/bindings/net/can/rcar_canfd.txt | 12 +++++++-----
 2 files changed, 14 insertions(+), 10 deletions(-)
Signature · 1 line
1.9.1

A message that is not in the archive (sent off-list or not yet received): 1480003917-3953-1-git-send-email-chris.paterson2-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org

#12 lore raw

PATCH v2 1/2 can: rcar_can: Add r8a7796 support

---
 Documentation/devicetree/bindings/net/can/rcar_can.txt | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
Documentation/devicetree/bindings/net/can/rcar_can.txt +7 -5
index 8d40ab2..06bb7cc 100644
@@ -10,6 +10,7 @@ Required properties:
 	      "renesas,can-r8a7793" if CAN controller is a part of R8A7793 SoC.
 	      "renesas,can-r8a7794" if CAN controller is a part of R8A7794 SoC.
 	      "renesas,can-r8a7795" if CAN controller is a part of R8A7795 SoC.
+	      "renesas,can-r8a7796" if CAN controller is a part of R8A7796 SoC.
 	      "renesas,rcar-gen1-can" for a generic R-Car Gen1 compatible device.
 	      "renesas,rcar-gen2-can" for a generic R-Car Gen2 compatible device.
 	      "renesas,rcar-gen3-can" for a generic R-Car Gen3 compatible device.
@@ -24,11 +25,12 @@ Required properties:
 - pinctrl-0: pin control group to be used for this controller.
 - pinctrl-names: must be "default".
 
-Required properties for "renesas,can-r8a7795" compatible:
-In R8A7795 SoC, "clkp2" can be CANFD clock. This is a div6 clock and can be
-used by both CAN and CAN FD controller at the same time. It needs to be scaled
-to maximum frequency if any of these controllers use it. This is done using
-the below properties.
+Required properties for "renesas,can-r8a7795" and "renesas,can-r8a7796"
+compatible:
+In R8A7795 and R8A7796 SoCs, "clkp2" can be CANFD clock. This is a div6 clock
+and can be used by both CAN and CAN FD controller at the same time. It needs to
+be scaled to maximum frequency if any of these controllers use it. This is done
+using the below properties:
 
 - assigned-clocks: phandle of clkp2(CANFD) clock.
 - assigned-clock-rates: maximum frequency of this clock.
Signature · 6 lines
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#13 lore raw

PATCH v2 2/2 can: rcar_canfd: Add r8a7796 support

In reply to Chris Paterson
---
 Documentation/devicetree/bindings/net/can/rcar_canfd.txt | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
Documentation/devicetree/bindings/net/can/rcar_canfd.txt +7 -5
index 22a6f10..788f273 100644
@@ -5,6 +5,7 @@ Required properties:
 - compatible: Must contain one or more of the following:
   - "renesas,rcar-gen3-canfd" for R-Car Gen3 compatible controller.
   - "renesas,r8a7795-canfd" for R8A7795 (R-Car H3) compatible controller.
+  - "renesas,r8a7796-canfd" for R8A7796 (R-Car M3) compatible controller.
 
   When compatible with the generic version, nodes must list the
   SoC-specific version corresponding to the platform first, followed by the
@@ -23,11 +24,12 @@ The name of the child nodes are "channel0" and "channel1" respectively. Each
 child node supports the "status" property only, which is used to
 enable/disable the respective channel.
 
-Required properties for "renesas,r8a7795-canfd" compatible:
-In R8A7795 SoC, canfd clock is a div6 clock and can be used by both CAN
-and CAN FD controller at the same time. It needs to be scaled to maximum
-frequency if any of these controllers use it. This is done using the
-below properties.
+Required properties for "renesas,r8a7795-canfd" and "renesas,r8a7796-canfd"
+compatible:
+In R8A7795 and R8A7796 SoCs, canfd clock is a div6 clock and can be used by both
+CAN and CAN FD controller at the same time. It needs to be scaled to maximum
+frequency if any of these controllers use it. This is done using the below
+properties:
 
 - assigned-clocks: phandle of canfd clock.
 - assigned-clock-rates: maximum frequency of this clock.
Signature · 1 line
1.9.1
#14 lore raw

Re: [PATCH v2 0/2] can: Add r8a7796 support to CAN/CAN FD

In reply to Chris Paterson
Quoted 4 lines · Chris Paterson

This series adds support for r8a7796 to rcar_can and rcar_canfd.

Original series: [PATCH 0/3] arm64: dts: r8a7796: Add CAN/CAN FD support.

Quoted 8 lines

Changes since v1:
- Split bindings documentation changes from device tree changes.
- Rebased on renesas-devel-20161123v2-v4.9-rc6.

Chris Paterson (2):
can: rcar_can: Add r8a7796 support
can: rcar_canfd: Add r8a7796 support

Both added to can-next.

Thanks,
Marc

Signature · 4 lines
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |
#15 lore raw

v2 cover arm64: dts: r8a7796: Add CAN/CAN FD support

In reply to Chris Paterson

This series adds CAN and CAN FD support to the r8a7796.

Changes since v1:
- Split device tree changes from bindings documentation.
- Rebased on renesas-devel-20161123v2-v4.9-rc6.

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

 arch/arm64/boot/dts/renesas/r8a7796.dtsi | 61 ++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)
Signature · 1 line
1.9.1
#16 lore raw

PATCH v2 1/3 arm64: dts: r8a7796: Add CAN external clock support

Adds external CAN clock node for r8a7796. This clock can be used as fCAN clock of CAN and CAN FD controller.

Based on a patch for r8a7795 by Ramesh Shanmugasundaram.

---
 arch/arm64/boot/dts/renesas/r8a7796.dtsi | 7 +++++++
 1 file changed, 7 insertions(+)
arch/arm64/boot/dts/renesas/r8a7796.dtsi +7 -0
index c34c684..61d165b 100644
@@ -69,6 +69,13 @@
 		clock-frequency = <0>;
 	};
 
+	/* External CAN clock - to be overridden by boards that provide it */
+	can_clk: can {
+		compatible = "fixed-clock";
+		#clock-cells = <0>;
+		clock-frequency = <0>;
+	};
+
 	/* External SCIF clock - to be overridden by boards that provide it */
 	scif_clk: scif {
 		compatible = "fixed-clock";
Signature · 1 line
1.9.1
#17 lore raw

PATCH v2 2/3 arm64: dts: r8a7796: Add CAN support

In reply to Chris Paterson

Adds CAN controller nodes for r8a7796.

Based on a patch for r8a7795 by Ramesh Shanmugasundaram.

---
 arch/arm64/boot/dts/renesas/r8a7796.dtsi | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)
arch/arm64/boot/dts/renesas/r8a7796.dtsi +30 -0
index 61d165b..47fa29c 100644
@@ -362,6 +362,36 @@
 			status = "disabled";
 		};
 
+		can0: can at e6c30000 {
+			compatible = "renesas,can-r8a7796",
+				     "renesas,rcar-gen3-can";
+			reg = <0 0xe6c30000 0 0x1000>;
+			interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 916>,
+			       <&cpg CPG_CORE R8A7796_CLK_CANFD>,
+			       <&can_clk>;
+			clock-names = "clkp1", "clkp2", "can_clk";
+			assigned-clocks = <&cpg CPG_CORE R8A7796_CLK_CANFD>;
+			assigned-clock-rates = <40000000>;
+			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+			status = "disabled";
+		};
+
+		can1: can at e6c38000 {
+			compatible = "renesas,can-r8a7796",
+				     "renesas,rcar-gen3-can";
+			reg = <0 0xe6c38000 0 0x1000>;
+			interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 915>,
+			       <&cpg CPG_CORE R8A7796_CLK_CANFD>,
+			       <&can_clk>;
+			clock-names = "clkp1", "clkp2", "can_clk";
+			assigned-clocks = <&cpg CPG_CORE R8A7796_CLK_CANFD>;
+			assigned-clock-rates = <40000000>;
+			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+			status = "disabled";
+		};
+
 		scif2: serial at e6e88000 {
 			compatible = "renesas,scif-r8a7796",
 				     "renesas,rcar-gen3-scif", "renesas,scif";
Signature · 1 line
1.9.1
#18 lore raw

PATCH v2 3/3 arm64: dts: r8a7796: Add CAN FD support

In reply to Chris Paterson

Adds CAN FD controller node for r8a7796.

Based on a patch for r8a7795 by Ramesh Shanmugasundaram.

---
 arch/arm64/boot/dts/renesas/r8a7796.dtsi | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
arch/arm64/boot/dts/renesas/r8a7796.dtsi +24 -0
index 47fa29c..1ed1886 100644
@@ -392,6 +392,30 @@
 			status = "disabled";
 		};
 
+		canfd: can at e66c0000 {
+			compatible = "renesas,r8a7796-canfd",
+				     "renesas,rcar-gen3-canfd";
+			reg = <0 0xe66c0000 0 0x8000>;
+			interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,
+				   <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&cpg CPG_MOD 914>,
+			       <&cpg CPG_CORE R8A7796_CLK_CANFD>,
+			       <&can_clk>;
+			clock-names = "fck", "canfd", "can_clk";
+			assigned-clocks = <&cpg CPG_CORE R8A7796_CLK_CANFD>;
+			assigned-clock-rates = <40000000>;
+			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+			status = "disabled";
+
+			channel0 {
+				status = "disabled";
+			};
+
+			channel1 {
+				status = "disabled";
+			};
+		};
+
 		scif2: serial at e6e88000 {
 			compatible = "renesas,scif-r8a7796",
 				     "renesas,rcar-gen3-scif", "renesas,scif";
Signature · 1 line
1.9.1
#19 lore raw

v2 cover arm64: dts: r8a7796: Add CAN/CAN FD support

In reply to Chris Paterson
Quoted 11 lines · Chris Paterson

This series adds CAN and CAN FD support to the r8a7796.

Changes since v1:
- Split device tree changes from bindings documentation.
- Rebased on renesas-devel-20161123v2-v4.9-rc6.

Chris Paterson (3):
arm64: dts: r8a7796: Add CAN external clock support
arm64: dts: r8a7796: Add CAN support
arm64: dts: r8a7796: Add CAN FD support

Thanks Chris,

I have queued these up for v4.11 in the devel branch of the renesas tree.