Enable CAN on CA55 on s4sk

Hi,


We want to make CAN work on CA55 on s4sk as well. I applied the two patches to the v5.4 tag code. However, there is an error in the kernel log under DomD as follows:

OF: /soc/can@dff50000: could not find phandle

Steps:

1. according to the  CAN driver on CA55 sample  apply the two patches to v5.4 tag source code.

2. change the build_trampoline.sh as following:

+++ b/mcu/build_trampoline.sh
@@ -140,6 +140,12 @@ if [[ "${EXAMPLE_NAME}" == "" ]]; then
         cp -f G4MH_sample.srec ${SCRIPT_DIR}/deploy/g4mh_can_disable.srec
     fi

+    # Build CAN unlock sample
+    cd ${SOURCE_DIR}/examples/rh850/can_unlock
+    chmod +x ./build.sh
+    ./build.sh
+    cp -f G4MH_sample.srec ${SCRIPT_DIR}/deploy/g4mh_can_unlock.srec
+

3. build with ./build_whitebox_v5.4.sh s4sk

4. flash the g4mh_can_unlock.srec with tool ipl_burning.py

5. flash the spider.ufs.full.img.gz to the board

Aside from that, no other configurations have been made. Today, I noticed some other changes on the branch wip/v5.x_can-test, and I'm not sure which ones are necessary. I would greatly appreciate any tips you can provide.


Thank you very much for your assistance.

  • Hi,

    I understand your procedure. However, it was not enough to make it work on Xen hypervisor.
    Please do the additional steps below:

    1. Update DomD config to add CAN0 node to this domain:

    Edit: whitebox-sdk/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg

    diff --git a/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg b/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    index ec3a4e4..3e926b7 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    +++ b/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    @@ -45,6 +45,7 @@ dt_passthrough_nodes = [
    "/regulator-vcc-sdhi",
    "/reserved-memory",
    "/thermal-zones",
    + "/can",
    ]
    
    dtdev = [
    @@ -57,6 +58,8 @@ dtdev = [
    ]
    
    irqs = [
    +# can@dff50000
    + 566, 567, 568, 569, 570, 571, 572, 573, 574,
    # gpio@e6050180
    854,
    # gpio@e6050980
    @@ -121,6 +124,8 @@ irqs = [
    ]
    
    iomem = [
    +#can@dff50000
    + "dff50,9",
    #watchdog@e6020000
    "e6020,1",
    #pin-controller@e6050000


    2. Update devicetree to passthrough CAN0 node to domd:

    Edit: whitebox-sdk/application_cpu/work/yocto/meta-aos-rcar-gen4/meta-aos-rcar-gen4-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts

    diff --git a/meta-aos-rcar-gen4-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts b/meta-aos-rcar-gen4-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    index a3a1db6..d551e0f 100644
    --- a/meta-aos-rcar-gen4-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    +++ b/meta-aos-rcar-gen4-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    @@ -233,6 +233,7 @@
    xen,passthrough;
    };
    
    +&canfd0 { xen,passthrough; };
    &dmac0 { xen,passthrough; };
    &dmac1 { xen,passthrough; };
    &rt_dmac0 { xen,passthrough; };

    3. Clean a recipe to make the build re-run:

    cd whitebox/whitebox-sdk/application_cpu/work/yocto/
    source poky/oe-init-build-env build-domd/
    bitbake linux-renesas -c clean

    4. Rebuild the image:

    cd whitebox/whitebox-sdk/application_cpu/
    ./build_xenhypervisor.sh s4sk

    Now you can use CAN in DomD, just make sure "CAN0/1 enable" and "CAN0/1 terminate" checkbox are selected on the Configurator GUI tool.

  • Thank you for your reply. I’ve already made the relevant changes. However, I also added passthrough for canfd1, gpio4, gpio5, and gpio6. The image built with these changes causes an Ethernet-related crash on the S4SK,

    but on the Spider, it correctly displays the CAN device. However, the functionality doesn't work as expected. When connected to a physical CAN device and sending data, the opposite side shows an error, and the data sent from the opposite side is not received by spider. But the can status shows that data has been received. 

    root@spider-domd:~# ip -d link show can8
    10: can8: <NOARP,UP,LOWER_UP,ECHO> mtu 72 qdisc pfifo_fast state UP mode DEFAULT group default qlen 10
        link/can  promiscuity 0 minmtu 0 maxmtu 0
        can <FD> state ERROR-PASSIVE (berr-counter tx 0 rx 135) restart-ms 0
              bitrate 500000 sample-point 0.875
              tq 50 prop-seg 17 phase-seg1 17 phase-seg2 5 sjw 1
              rcar_canfd: tseg1 2..128 tseg2 2..32 sjw 1..32 brp 1..1024 brp-inc 1
              dbitrate 4000000 dsample-point 0.600
              dtq 50 dprop-seg 1 dphase-seg1 1 dphase-seg2 2 dsjw 1
              rcar_canfd: dtseg1 2..16 dtseg2 2..8 dsjw 1..8 dbrp 1..256 dbrp-inc 1
              clock 20000000 numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535

    The command used on Spider is:

    ip link set can8 type can bitrate 500000 dbitrate 4000000 fd on
    ip link set can8 up
    
    candump can8
    
    cansend can8 619##123

    Sorry, I wanted to upload all the changes I made based on v5.4, but it seems that I’m not allowed to upload files.

  • Hi,

    S4SK have only CANFD0 which contain 2 channels (CAN0_H/L, CAN1_H/L pins on the board). So you cannot enable other canfd nodes.

    If you cannot send/receive data from external CAN device, it might be the issue with clock setting. You can refer to the fix in: CAN driver on CA55 sample - Forum - R-Car S4 (Gateway) - Renesas Engineering Community

  • Got it. I’ll remove the other node today and give it a try. As for the spider, I’ve added the clock frequency, but it’s not just the issue of not being able to communicate with external devices; the loopback test also fails to communicate. When I use the ip command to set the loopback mode, it directly indicates that it’s not supported. Even when sending messages between the two CAN channels (e.g., can0, can1), nothing is received.

  • I have already posted it several times, including all the changes based on tag v5.4, but I'm not sure if I violated any rules, as they haven't been displayed. Could you please contact the forum administrators? Or is there another way to share these changes?

    Thanks

  • Hi,

    Sorry for late response. Could you try again without using code block format for your code? I think it is the reason that a comment is pending for approval. But we don't see any comment in the approval list.

  • Thank you for your feedback. I'll try submitting the code again without using the code block format as you suggested.


    Below are the changes I made on tag v5.4:

    1. git cherry-pick 9a5009fc09ec5b6b262c95b2805e58bb8ce673d4

    2. The following are all the changes I made regarding CAN based on 1 step.


    diff --git a/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg b/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    index c383864..7f78eec 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    +++ b/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    @@ -62,8 +62,6 @@ irqs = [
    861,
    # can@dff50000
    566, 567, 568, 569, 570, 571, 572, 573, 574,
    -# can@dfd00000
    - 575, 576, 577, 578, 579, 580, 581, 582, 583,
    # gpio@e6050180
    854,
    # gpio@e6050980
    @@ -134,8 +132,6 @@ irqs = [
    iomem = [
    #can@dff50000
    "dff50,9",
    -#can@dfd00000
    - "dfd00,9",
    #watchdog@e6020000
    "e6020,1",
    #pin-controller@e6050000

    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-GPIO-GP-4-7-from-Control-Domain-to-Applicati.patch b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-GPIO-GP-4-7-from-Control-Domain-to-Applicati.patch
    new file mode 100644
    index 0000000..01dc6c1
    --- /dev/null
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-GPIO-GP-4-7-from-Control-Domain-to-Applicati.patch
    @@ -0,0 +1,75 @@
    +From 51b1d6e396f6a2b23d2cb900bad16bc761ca05c9 Mon Sep 17 00:00:00 2001
    +From: Jinyuan Si <[email protected]>
    +Date: Mon, 17 Mar 2025 09:01:36 +0900
    +Subject: [PATCH] Porting GPIO GP 4~7 from Control Domain to Application Domain
    +
    +---
    + arch/arm64/boot/dts/renesas/r8a779f0.dtsi | 45 ++++++++++++++++++++++-
    + 1 file changed, 44 insertions(+), 1 deletion(-)
    +
    +diff --git a/arch/arm64/boot/dts/renesas/r8a779f0.dtsi b/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    +index 7ca6decc14cf..fb8caaeebccd 100644
    +--- a/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    ++++ b/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    +@@ -27,7 +27,7 @@ aliases {
    + can_clk: can {
    + compatible = "fixed-clock";
    + #clock-cells = <0>;
    +- clock-frequency = <40000000>;
    ++ clock-frequency = <20000000>;
    + };
    +
    + cluster1_opp: opp_table10 {
    +@@ -366,6 +366,49 @@ gpio3: gpio@e6051980 {
    + resets = <&cpg 915>;
    + };
    +
    ++ /* Porting GPIO GP 4~7 from Control Domain to Application Domain */
    ++ gpio4: gpio@dfd90180 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd90180 0 0x54>;
    ++ interrupts = <GIC_SPI 826 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 128 31>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    ++ gpio5: gpio@dfd90980 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd90980 0 0x54>;
    ++ interrupts = <GIC_SPI 827 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 160 20>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    ++ gpio6: gpio@dfd91180 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd91180 0 0x54>;
    ++ interrupts = <GIC_SPI 828 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 192 24>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    + gpio7: gpio@dfd91980 {
    + compatible = "renesas,gpio-r8a779f0";
    + reg = <0 0xdfd91980 0 0x54>;
    +--
    +2.48.1.395.gb838bf1938
    +

    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-to-support-device-driver-Canfd-from-Control-.patch b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-to-support-device-driver-Canfd-from-Control-.patch
    new file mode 100644
    index 0000000..efb7b26
    --- /dev/null
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-to-support-device-driver-Canfd-from-Control-.patch
    @@ -0,0 +1,305 @@
    +From 4179f4159caf730ae855875397af1b75bf5540de Mon Sep 17 00:00:00 2001
    +From: Phat Pham <[email protected]>
    +Date: Wed, 2 Aug 2023 17:12:09 +0700
    +Subject: [PATCH 1/2] Porting to support device driver Canfd from Control
    + Domain to Application Domain
    +
    +- Update pinctrl support for 15 canfd channels in file pfc-r8a779f0.c.
    +- Update device tree to support GPIO Group 4-7 on CA55 in file r8a779f0.dtsi and r8a779f0-spider.dts,
    +r8a779f0-s4sk.dts.
    +- Update Canfd device nodes in device tree R9A779F0.
    +- Update Source code support canfd device in rcar-canfd.c.
    +
    +Signed-off-by: Phat Pham <[email protected]>
    +Signed-off-by: Duy Dang <[email protected]>
    +---
    + arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts | 146 +-----------------
    + .../boot/dts/renesas/r8a779f0-spider.dts | 5 +-
    + arch/arm64/boot/dts/renesas/r8a779f0.dtsi | 50 +++++-
    + 3 files changed, 55 insertions(+), 146 deletions(-)
    +
    +diff --git a/arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts b/arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts
    +index 4e37327b3584..c57d48430b45 100644
    +--- a/arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts
    ++++ b/arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts
    +@@ -51,11 +51,8 @@ vcc_sdhi: regulator-vcc-sdhi {
    + };
    + };
    +
    +-
    + &canfd0 {
    +- pinctrl-0 = <&canfd0_pins>, <&canfd1_pins>, <&canfd2_pins>,
    +- <&canfd3_pins>, <&canfd4_pins>, <&canfd5_pins>,
    +- <&canfd6_pins>, <&canfd7_pins>;
    ++ pinctrl-0 = <&canfd0_pins>, <&canfd1_pins>;
    + pinctrl-names = "default";
    + status = "okay";
    +
    +@@ -66,70 +63,10 @@ channel0 {
    + channel1 {
    + status = "okay";
    + };
    +-
    +- channel2 {
    +- status = "okay";
    +- };
    +-
    +- channel3 {
    +- status = "okay";
    +- };
    +-
    +- channel4 {
    +- status = "okay";
    +- };
    +-
    +- channel5 {
    +- status = "okay";
    +- };
    +-
    +- channel6 {
    +- status = "okay";
    +- };
    +-
    +- channel7 {
    +- status = "okay";
    +- };
    + };
    +
    + &canfd1 {
    +- pinctrl-0 = <&canfd8_pins>,<&canfd9_pins>, <&canfd10_pins>,
    +- <&canfd11_pins>, <&canfd12_pins>, <&canfd13_pins>,
    +- <&canfd14_pins>, <&canfd15_pins>;
    +- pinctrl-names = "default";
    +- status = "okay";
    +-
    +- channel0 {
    +- status = "okay";
    +- };
    +-
    +- channel1 {
    +- status = "okay";
    +- };
    +-
    +- channel2 {
    +- status = "okay";
    +- };
    +-
    +- channel3 {
    +- status = "okay";
    +- };
    +-
    +- channel4 {
    +- status = "okay";
    +- };
    +-
    +- channel5 {
    +- status = "okay";
    +- };
    +-
    +- channel6 {
    +- status = "okay";
    +- };
    +-
    +- channel7 {
    +- status = "okay";
    +- };
    ++ status = "disabled";
    + };
    +
    + &extal_clk {
    +@@ -199,81 +136,10 @@ canfd0_pins: canfd0 {
    + function = "canfd0";
    + };
    +
    +- canfd1_pins: canfd1 {
    +- groups = "canfd1_data";
    +- function = "canfd1";
    +- };
    +-
    +- canfd2_pins: canfd2 {
    +- groups = "canfd2_data";
    +- function = "canfd2";
    +- };
    +-
    +- canfd3_pins: canfd3 {
    +- groups = "canfd3_data";
    +- function = "canfd3";
    +- };
    +-
    +- canfd4_pins: canfd4 {
    +- groups = "canfd4_data";
    +- function = "canfd4";
    +- };
    +-
    +- canfd5_pins: canfd5 {
    +- groups = "canfd5_data";
    +- function = "canfd5";
    +- };
    +-
    +- canfd6_pins: canfd6 {
    +- groups = "canfd6_data";
    +- function = "canfd6";
    +- };
    +-
    +- canfd7_pins: canfd7 {
    +- groups = "canfd7_data";
    +- function = "canfd7";
    +- };
    +-
    +- canfd8_pins: canfd8 {
    +- groups = "canfd8_data";
    +- function = "canfd8";
    +- };
    +-
    +- canfd9_pins: canfd9 {
    +- groups = "canfd9_data";
    +- function = "canfd9";
    +- };
    +-
    +- canfd10_pins: canfd10 {
    +- groups = "canfd10_data";
    +- function = "canfd10";
    +- };
    +-
    +- canfd11_pins: canfd11 {
    +- groups = "canfd11_data";
    +- function = "canfd11";
    +- };
    +-
    +- canfd12_pins: canfd12 {
    +- groups = "canfd12_data";
    +- function = "canfd12";
    +- };
    +-
    +- canfd13_pins: canfd13 {
    +- groups = "canfd13_data";
    +- function = "canfd13";
    +- };
    +-
    +- canfd14_pins: canfd14 {
    +- groups = "canfd14_data";
    +- function = "canfd14";
    +- };
    +-
    +- canfd15_pins: canfd15 {
    +- groups = "canfd15_data";
    +- function = "canfd15";
    +- };
    +-
    ++ canfd1_pins: canfd1 {
    ++ groups = "canfd1_data";
    ++ function = "canfd1";
    ++ };
    +
    + i2c2_pins: i2c2 {
    + groups = "i2c2";
    +diff --git a/arch/arm64/boot/dts/renesas/r8a779f0-spider.dts b/arch/arm64/boot/dts/renesas/r8a779f0-spider.dts
    +index ad5d82200e77..7c92b5a12598 100644
    +--- a/arch/arm64/boot/dts/renesas/r8a779f0-spider.dts
    ++++ b/arch/arm64/boot/dts/renesas/r8a779f0-spider.dts
    +@@ -68,8 +68,8 @@ channel7 {
    + };
    +
    + &canfd1 {
    +- pinctrl-0 = <&canfd8_pins>,<&canfd9_pins>, <&canfd10_pins>,
    +- <&canfd11_pins>, <&canfd12_pins>, <&canfd13_pins>,
    ++ pinctrl-0 = <&canfd8_pins>,<&canfd9_pins>, <&canfd10_pins>,
    ++ <&canfd11_pins>, <&canfd12_pins>, <&canfd13_pins>,
    + <&canfd14_pins>, <&canfd15_pins>;
    + pinctrl-names = "default";
    + status = "okay";
    +@@ -233,6 +233,7 @@ canfd15_pins: canfd15 {
    + function = "canfd15";
    + };
    +
    ++
    + pcie0_pins: pcie0 {
    + groups = "pcie0_clkreq_n";
    + function = "pcie";
    +diff --git a/arch/arm64/boot/dts/renesas/r8a779f0.dtsi b/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    +index 3c286324d0e9..e102e8468b9c 100644
    +--- a/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    ++++ b/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    +@@ -27,7 +27,7 @@ aliases {
    + can_clk: can {
    + compatible = "fixed-clock";
    + #clock-cells = <0>;
    +- clock-frequency = <40000000>;
    ++ clock-frequency = <20000000>;
    + };
    +
    + cluster1_opp: opp_table10 {
    +@@ -395,6 +395,48 @@ gpio3: gpio@e6051980 {
    + power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    + resets = <&cpg 915>;
    + };
    ++ /* Porting GPIO GP 4~7 from Control Domain to Application Domain */
    ++ gpio4: gpio@dfd90180 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd90180 0 0x54>;
    ++ interrupts = <GIC_SPI 826 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 128 31>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    ++ gpio5: gpio@dfd90980 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd90980 0 0x54>;
    ++ interrupts = <GIC_SPI 827 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 160 20>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    ++ gpio6: gpio@dfd91180 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd91180 0 0x54>;
    ++ interrupts = <GIC_SPI 828 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 192 24>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    +
    + gpio7: gpio@dfd91980 {
    + compatible = "renesas,gpio-r8a779f0";
    +@@ -431,7 +473,7 @@ sysc: system-controller@e6180000 {
    + #power-domain-cells = <1>;
    + };
    +
    +- canfd0: can@dff50000 {
    ++ canfd0: can@dff50000 {
    + compatible = "renesas,r8a779f0-canfd";
    + reg = <0 0xdff50000 0 0x8600>;
    + interrupts = <GIC_SPI 534 IRQ_TYPE_LEVEL_HIGH>,
    +@@ -480,10 +522,10 @@ channel6 {
    +
    + channel7 {
    + status = "disabled";
    +- };
    ++ };
    + };
    +
    +- canfd1: can@dfd00000 {
    ++ canfd1: can@dfd00000 {
    + compatible = "renesas,r8a779f0-canfd";
    + reg = <0 0xdfd00000 0 0x8600>;
    + interrupts = <GIC_SPI 543 IRQ_TYPE_LEVEL_HIGH>,
    +--
    +2.48.1.395.gb838bf1938
    +

    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/can.cfg b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/can.cfg
    new file mode 100644
    index 0000000..4c088c7
    --- /dev/null
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/can.cfg
    @@ -0,0 +1,5 @@
    +CONFIG_CAN=y
    +CONFIG_CAN_DEV=y
    +CONFIG_CAN_RCAR=y
    +CONFIG_CAN_RCAR_CANFD=y
    +CONFIG_RENESAS_CONTROL_DOMAIN_ACCESS=y
    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    index 0540efd..0fa125f 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    @@ -243,6 +243,11 @@
    &gpio1 { xen,passthrough; };
    &gpio2 { xen,passthrough; };
    &gpio3 { xen,passthrough; };
    +&gpio4 { xen,passthrough; };
    +&gpio5 { xen,passthrough; };
    +&gpio6 { xen,passthrough; };
    +&gpio7 { xen,passthrough; };
    +&canfd0 { xen,passthrough; };
    &i2c2 { xen,passthrough; };
    &i2c4 { xen,passthrough; };
    &i2c5 { xen,passthrough; };
    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-spider-xen.dts b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-spider-xen.dts
    index d7d04dd..bc816ac 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-spider-xen.dts
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-spider-xen.dts
    @@ -241,6 +241,12 @@
    &gpio1 { xen,passthrough; };
    &gpio2 { xen,passthrough; };
    &gpio3 { xen,passthrough; };
    +&gpio4 { xen,passthrough; };
    +&gpio5 { xen,passthrough; };
    +&gpio6 { xen,passthrough; };
    +&gpio7 { xen,passthrough; };
    +&canfd0 { xen,passthrough; };
    +&canfd1 { xen,passthrough; };
    &i2c0 { xen,passthrough; };
    &i2c4 { xen,passthrough; };
    &mmc0 { xen,passthrough; };
    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas_5.10.bbappend b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas_5.10.bbappend
    index 42451f7..cca79e8 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas_5.10.bbappend
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas_5.10.bbappend
    @@ -15,6 +15,7 @@ SRC_URI_append_spider = " \
    file://0001-dts-iccom-use-proper-driver-instead-of-generic-uio.patch \
    file://0002-dts-iccom-Change-iccom1-for-CR52.patch \
    ${@oe.utils.conditional("USE_UFS", "1", "${USE_UFS_SPIDER}", "", d)} \
    + file://0001-Porting-GPIO-GP-4-7-from-Control-Domain-to-Applicati.patch \
    "

    SRC_URI_append_s4sk = " \
    @@ -25,11 +26,13 @@ SRC_URI_append_s4sk = " \
    file://r8a779f0-s4sk-domd.dts;subdir=git/arch/arm64/boot/dts/renesas \
    file://0001-WIP-arm64-dts-renesas-Remove-GWCA0-inplement.patch \
    file://0001-arm64-dts-renesas-Add-canfd-nodes-for-S4SK.patch \
    + file://0001-Porting-to-support-device-driver-Canfd-from-Control-.patch \
    "
    SRC_URI_append = " \
    file://fwe.cfg \
    file://pktgen.cfg \
    file://docker.cfg \
    + file://can.cfg \
    "

    # Add support thermal driver

  • Thank you for your feedback. I'll try submitting the code again without using the code block format as you suggested.


    Below are the changes I made on tag v5.4:

    1. git cherry-pick 9a5009fc09ec5b6b262c95b2805e58bb8ce673d4

    2. The following are all the changes I made regarding CAN based on 1 step.


    diff --git a/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg b/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    index c383864..7f78eec 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    +++ b/application_cpu/meta-rcar-whitebox/meta-dom0/recipes-guests/domd/files/domd-s4sk.cfg
    @@ -62,8 +62,6 @@ irqs = [
    861,
    # can@dff50000
    566, 567, 568, 569, 570, 571, 572, 573, 574,
    -# can@dfd00000
    - 575, 576, 577, 578, 579, 580, 581, 582, 583,
    # gpio@e6050180
    854,
    # gpio@e6050980
    @@ -134,8 +132,6 @@ irqs = [
    iomem = [
    #can@dff50000
    "dff50,9",
    -#can@dfd00000
    - "dfd00,9",
    #watchdog@e6020000
    "e6020,1",
    #pin-controller@e6050000

    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-GPIO-GP-4-7-from-Control-Domain-to-Applicati.patch b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-GPIO-GP-4-7-from-Control-Domain-to-Applicati.patch
    new file mode 100644
    index 0000000..01dc6c1
    --- /dev/null
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-GPIO-GP-4-7-from-Control-Domain-to-Applicati.patch
    @@ -0,0 +1,75 @@
    +From 51b1d6e396f6a2b23d2cb900bad16bc761ca05c9 Mon Sep 17 00:00:00 2001
    +From: Jinyuan Si <[email protected]>
    +Date: Mon, 17 Mar 2025 09:01:36 +0900
    +Subject: [PATCH] Porting GPIO GP 4~7 from Control Domain to Application Domain
    +
    +---
    + arch/arm64/boot/dts/renesas/r8a779f0.dtsi | 45 ++++++++++++++++++++++-
    + 1 file changed, 44 insertions(+), 1 deletion(-)
    +
    +diff --git a/arch/arm64/boot/dts/renesas/r8a779f0.dtsi b/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    +index 7ca6decc14cf..fb8caaeebccd 100644
    +--- a/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    ++++ b/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    +@@ -27,7 +27,7 @@ aliases {
    + can_clk: can {
    + compatible = "fixed-clock";
    + #clock-cells = <0>;
    +- clock-frequency = <40000000>;
    ++ clock-frequency = <20000000>;
    + };
    +
    + cluster1_opp: opp_table10 {
    +@@ -366,6 +366,49 @@ gpio3: gpio@e6051980 {
    + resets = <&cpg 915>;
    + };
    +
    ++ /* Porting GPIO GP 4~7 from Control Domain to Application Domain */
    ++ gpio4: gpio@dfd90180 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd90180 0 0x54>;
    ++ interrupts = <GIC_SPI 826 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 128 31>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    ++ gpio5: gpio@dfd90980 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd90980 0 0x54>;
    ++ interrupts = <GIC_SPI 827 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 160 20>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    ++ gpio6: gpio@dfd91180 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd91180 0 0x54>;
    ++ interrupts = <GIC_SPI 828 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 192 24>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    + gpio7: gpio@dfd91980 {
    + compatible = "renesas,gpio-r8a779f0";
    + reg = <0 0xdfd91980 0 0x54>;
    +--
    +2.48.1.395.gb838bf1938
    +

    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-to-support-device-driver-Canfd-from-Control-.patch b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-to-support-device-driver-Canfd-from-Control-.patch
    new file mode 100644
    index 0000000..efb7b26
    --- /dev/null
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/0001-Porting-to-support-device-driver-Canfd-from-Control-.patch
    @@ -0,0 +1,305 @@
    +From 4179f4159caf730ae855875397af1b75bf5540de Mon Sep 17 00:00:00 2001
    +From: Phat Pham <[email protected]>
    +Date: Wed, 2 Aug 2023 17:12:09 +0700
    +Subject: [PATCH 1/2] Porting to support device driver Canfd from Control
    + Domain to Application Domain
    +
    +- Update pinctrl support for 15 canfd channels in file pfc-r8a779f0.c.
    +- Update device tree to support GPIO Group 4-7 on CA55 in file r8a779f0.dtsi and r8a779f0-spider.dts,
    +r8a779f0-s4sk.dts.
    +- Update Canfd device nodes in device tree R9A779F0.
    +- Update Source code support canfd device in rcar-canfd.c.
    +
    +Signed-off-by: Phat Pham <[email protected]>
    +Signed-off-by: Duy Dang <[email protected]>
    +---
    + arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts | 146 +-----------------
    + .../boot/dts/renesas/r8a779f0-spider.dts | 5 +-
    + arch/arm64/boot/dts/renesas/r8a779f0.dtsi | 50 +++++-
    + 3 files changed, 55 insertions(+), 146 deletions(-)
    +
    +diff --git a/arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts b/arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts
    +index 4e37327b3584..c57d48430b45 100644
    +--- a/arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts
    ++++ b/arch/arm64/boot/dts/renesas/r8a779f0-s4sk.dts
    +@@ -51,11 +51,8 @@ vcc_sdhi: regulator-vcc-sdhi {
    + };
    + };
    +
    +-
    + &canfd0 {
    +- pinctrl-0 = <&canfd0_pins>, <&canfd1_pins>, <&canfd2_pins>,
    +- <&canfd3_pins>, <&canfd4_pins>, <&canfd5_pins>,
    +- <&canfd6_pins>, <&canfd7_pins>;
    ++ pinctrl-0 = <&canfd0_pins>, <&canfd1_pins>;
    + pinctrl-names = "default";
    + status = "okay";
    +
    +@@ -66,70 +63,10 @@ channel0 {
    + channel1 {
    + status = "okay";
    + };
    +-
    +- channel2 {
    +- status = "okay";
    +- };
    +-
    +- channel3 {
    +- status = "okay";
    +- };
    +-
    +- channel4 {
    +- status = "okay";
    +- };
    +-
    +- channel5 {
    +- status = "okay";
    +- };
    +-
    +- channel6 {
    +- status = "okay";
    +- };
    +-
    +- channel7 {
    +- status = "okay";
    +- };
    + };
    +
    + &canfd1 {
    +- pinctrl-0 = <&canfd8_pins>,<&canfd9_pins>, <&canfd10_pins>,
    +- <&canfd11_pins>, <&canfd12_pins>, <&canfd13_pins>,
    +- <&canfd14_pins>, <&canfd15_pins>;
    +- pinctrl-names = "default";
    +- status = "okay";
    +-
    +- channel0 {
    +- status = "okay";
    +- };
    +-
    +- channel1 {
    +- status = "okay";
    +- };
    +-
    +- channel2 {
    +- status = "okay";
    +- };
    +-
    +- channel3 {
    +- status = "okay";
    +- };
    +-
    +- channel4 {
    +- status = "okay";
    +- };
    +-
    +- channel5 {
    +- status = "okay";
    +- };
    +-
    +- channel6 {
    +- status = "okay";
    +- };
    +-
    +- channel7 {
    +- status = "okay";
    +- };
    ++ status = "disabled";
    + };
    +
    + &extal_clk {
    +@@ -199,81 +136,10 @@ canfd0_pins: canfd0 {
    + function = "canfd0";
    + };
    +
    +- canfd1_pins: canfd1 {
    +- groups = "canfd1_data";
    +- function = "canfd1";
    +- };
    +-
    +- canfd2_pins: canfd2 {
    +- groups = "canfd2_data";
    +- function = "canfd2";
    +- };
    +-
    +- canfd3_pins: canfd3 {
    +- groups = "canfd3_data";
    +- function = "canfd3";
    +- };
    +-
    +- canfd4_pins: canfd4 {
    +- groups = "canfd4_data";
    +- function = "canfd4";
    +- };
    +-
    +- canfd5_pins: canfd5 {
    +- groups = "canfd5_data";
    +- function = "canfd5";
    +- };
    +-
    +- canfd6_pins: canfd6 {
    +- groups = "canfd6_data";
    +- function = "canfd6";
    +- };
    +-
    +- canfd7_pins: canfd7 {
    +- groups = "canfd7_data";
    +- function = "canfd7";
    +- };
    +-
    +- canfd8_pins: canfd8 {
    +- groups = "canfd8_data";
    +- function = "canfd8";
    +- };
    +-
    +- canfd9_pins: canfd9 {
    +- groups = "canfd9_data";
    +- function = "canfd9";
    +- };
    +-
    +- canfd10_pins: canfd10 {
    +- groups = "canfd10_data";
    +- function = "canfd10";
    +- };
    +-
    +- canfd11_pins: canfd11 {
    +- groups = "canfd11_data";
    +- function = "canfd11";
    +- };
    +-
    +- canfd12_pins: canfd12 {
    +- groups = "canfd12_data";
    +- function = "canfd12";
    +- };
    +-
    +- canfd13_pins: canfd13 {
    +- groups = "canfd13_data";
    +- function = "canfd13";
    +- };
    +-
    +- canfd14_pins: canfd14 {
    +- groups = "canfd14_data";
    +- function = "canfd14";
    +- };
    +-
    +- canfd15_pins: canfd15 {
    +- groups = "canfd15_data";
    +- function = "canfd15";
    +- };
    +-
    ++ canfd1_pins: canfd1 {
    ++ groups = "canfd1_data";
    ++ function = "canfd1";
    ++ };
    +
    + i2c2_pins: i2c2 {
    + groups = "i2c2";
    +diff --git a/arch/arm64/boot/dts/renesas/r8a779f0-spider.dts b/arch/arm64/boot/dts/renesas/r8a779f0-spider.dts
    +index ad5d82200e77..7c92b5a12598 100644
    +--- a/arch/arm64/boot/dts/renesas/r8a779f0-spider.dts
    ++++ b/arch/arm64/boot/dts/renesas/r8a779f0-spider.dts
    +@@ -68,8 +68,8 @@ channel7 {
    + };
    +
    + &canfd1 {
    +- pinctrl-0 = <&canfd8_pins>,<&canfd9_pins>, <&canfd10_pins>,
    +- <&canfd11_pins>, <&canfd12_pins>, <&canfd13_pins>,
    ++ pinctrl-0 = <&canfd8_pins>,<&canfd9_pins>, <&canfd10_pins>,
    ++ <&canfd11_pins>, <&canfd12_pins>, <&canfd13_pins>,
    + <&canfd14_pins>, <&canfd15_pins>;
    + pinctrl-names = "default";
    + status = "okay";
    +@@ -233,6 +233,7 @@ canfd15_pins: canfd15 {
    + function = "canfd15";
    + };
    +
    ++
    + pcie0_pins: pcie0 {
    + groups = "pcie0_clkreq_n";
    + function = "pcie";
    +diff --git a/arch/arm64/boot/dts/renesas/r8a779f0.dtsi b/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    +index 3c286324d0e9..e102e8468b9c 100644
    +--- a/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    ++++ b/arch/arm64/boot/dts/renesas/r8a779f0.dtsi
    +@@ -27,7 +27,7 @@ aliases {
    + can_clk: can {
    + compatible = "fixed-clock";
    + #clock-cells = <0>;
    +- clock-frequency = <40000000>;
    ++ clock-frequency = <20000000>;
    + };
    +
    + cluster1_opp: opp_table10 {
    +@@ -395,6 +395,48 @@ gpio3: gpio@e6051980 {
    + power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    + resets = <&cpg 915>;
    + };
    ++ /* Porting GPIO GP 4~7 from Control Domain to Application Domain */
    ++ gpio4: gpio@dfd90180 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd90180 0 0x54>;
    ++ interrupts = <GIC_SPI 826 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 128 31>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    ++ gpio5: gpio@dfd90980 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd90980 0 0x54>;
    ++ interrupts = <GIC_SPI 827 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 160 20>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    ++
    ++ gpio6: gpio@dfd91180 {
    ++ compatible = "renesas,gpio-r8a779f0";
    ++ reg = <0 0xdfd91180 0 0x54>;
    ++ interrupts = <GIC_SPI 828 IRQ_TYPE_LEVEL_HIGH>;
    ++ #gpio-cells = <2>;
    ++ gpio-controller;
    ++ gpio-ranges = <&pfc 0 192 24>;
    ++ #interrupt-cells = <2>;
    ++ interrupt-controller;
    ++ clocks = <&cpg CPG_MOD 915>;
    ++ power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
    ++ resets = <&cpg 915>;
    ++ };
    +
    + gpio7: gpio@dfd91980 {
    + compatible = "renesas,gpio-r8a779f0";
    +@@ -431,7 +473,7 @@ sysc: system-controller@e6180000 {
    + #power-domain-cells = <1>;
    + };
    +
    +- canfd0: can@dff50000 {
    ++ canfd0: can@dff50000 {
    + compatible = "renesas,r8a779f0-canfd";
    + reg = <0 0xdff50000 0 0x8600>;
    + interrupts = <GIC_SPI 534 IRQ_TYPE_LEVEL_HIGH>,
    +@@ -480,10 +522,10 @@ channel6 {
    +
    + channel7 {
    + status = "disabled";
    +- };
    ++ };
    + };
    +
    +- canfd1: can@dfd00000 {
    ++ canfd1: can@dfd00000 {
    + compatible = "renesas,r8a779f0-canfd";
    + reg = <0 0xdfd00000 0 0x8600>;
    + interrupts = <GIC_SPI 543 IRQ_TYPE_LEVEL_HIGH>,
    +--
    +2.48.1.395.gb838bf1938
    +

    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/can.cfg b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/can.cfg
    new file mode 100644
    index 0000000..4c088c7
    --- /dev/null
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/can.cfg
    @@ -0,0 +1,5 @@
    +CONFIG_CAN=y
    +CONFIG_CAN_DEV=y
    +CONFIG_CAN_RCAR=y
    +CONFIG_CAN_RCAR_CANFD=y
    +CONFIG_RENESAS_CONTROL_DOMAIN_ACCESS=y
    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    index 0540efd..0fa125f 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-s4sk-xen.dts
    @@ -243,6 +243,11 @@
    &gpio1 { xen,passthrough; };
    &gpio2 { xen,passthrough; };
    &gpio3 { xen,passthrough; };
    +&gpio4 { xen,passthrough; };
    +&gpio5 { xen,passthrough; };
    +&gpio6 { xen,passthrough; };
    +&gpio7 { xen,passthrough; };
    +&canfd0 { xen,passthrough; };
    &i2c2 { xen,passthrough; };
    &i2c4 { xen,passthrough; };
    &i2c5 { xen,passthrough; };
    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-spider-xen.dts b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-spider-xen.dts
    index d7d04dd..bc816ac 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-spider-xen.dts
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas/r8a779f0-spider-xen.dts
    @@ -241,6 +241,12 @@
    &gpio1 { xen,passthrough; };
    &gpio2 { xen,passthrough; };
    &gpio3 { xen,passthrough; };
    +&gpio4 { xen,passthrough; };
    +&gpio5 { xen,passthrough; };
    +&gpio6 { xen,passthrough; };
    +&gpio7 { xen,passthrough; };
    +&canfd0 { xen,passthrough; };
    +&canfd1 { xen,passthrough; };
    &i2c0 { xen,passthrough; };
    &i2c4 { xen,passthrough; };
    &mmc0 { xen,passthrough; };
    diff --git a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas_5.10.bbappend b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas_5.10.bbappend
    index 42451f7..cca79e8 100644
    --- a/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas_5.10.bbappend
    +++ b/application_cpu/meta-rcar-whitebox/meta-domd/recipes-kernel/linux/linux-renesas_5.10.bbappend
    @@ -15,6 +15,7 @@ SRC_URI_append_spider = " \
    file://0001-dts-iccom-use-proper-driver-instead-of-generic-uio.patch \
    file://0002-dts-iccom-Change-iccom1-for-CR52.patch \
    ${@oe.utils.conditional("USE_UFS", "1", "${USE_UFS_SPIDER}", "", d)} \
    + file://0001-Porting-GPIO-GP-4-7-from-Control-Domain-to-Applicati.patch \
    "

    SRC_URI_append_s4sk = " \
    @@ -25,11 +26,13 @@ SRC_URI_append_s4sk = " \
    file://r8a779f0-s4sk-domd.dts;subdir=git/arch/arm64/boot/dts/renesas \
    file://0001-WIP-arm64-dts-renesas-Remove-GWCA0-inplement.patch \
    file://0001-arm64-dts-renesas-Add-canfd-nodes-for-S4SK.patch \
    + file://0001-Porting-to-support-device-driver-Canfd-from-Control-.patch \
    "
    SRC_URI_append = " \
    file://fwe.cfg \
    file://pktgen.cfg \
    file://docker.cfg \
    + file://can.cfg \
    "

    # Add support thermal driver

  • I followed your suggestion and sent it again, but I’m still seeing the same notification. I’m not sure if you can see it. also attach the message of the notification:

    "All replies are moderated. Your reply will appear once a moderator approves it."


    Thanks