<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Custom S32G399A board: No frames cross switch-facing RGMII bus in either direction in S32G</title>
    <link>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2388021#M16506</link>
    <description>&lt;P&gt;Hi，&lt;SPAN&gt;pcentauri92&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Thank you for your detail information&lt;/P&gt;
&lt;P&gt;According to my understanding, there seems to be a problem with the communication when using PFE_MAC1 RGMAII and Port 2 of SJA1110A on your development board. Is that correct?&lt;/P&gt;
&lt;P&gt;The default configuration of S32G-VNP-RDB3 is that PFE_MAC0/1 operates in SGMII mode and is connected to SJA1110. On your development board, why did you consider using RGMII mode? It is recommended to modify the corresponding software configuration.&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;Joey&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 30 Jun 2026 04:11:16 GMT</pubDate>
    <dc:creator>Joey_z</dc:creator>
    <dc:date>2026-06-30T04:11:16Z</dc:date>
    <item>
      <title>Custom S32G399A board: No frames cross switch-facing RGMII bus in either direction</title>
      <link>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2387735#M16502</link>
      <description>&lt;P&gt;&lt;STRONG&gt;Board:&lt;/STRONG&gt; Custom S32G399A based module, derived from S32G-VNP-RDB3. PFE_MAC1 connected via RGMII (PE_02–PE_13) to an NXP SJA1110A switch port 2, configured as the DSA CPU port (in-tree sja1105 driver, kernel 6.x BSP43.0).&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Topology:&lt;/STRONG&gt;&lt;BR /&gt;- PFE_MAC0: SGMII via SerDes1 lane1, Mode 1&lt;BR /&gt;- PFE_MAC1: RGMII to SJA1110A port 2 (DSA CPU port) — the port in question&lt;BR /&gt;- PFE_MAC2: SGMII via SerDes0 lane1&lt;/P&gt;&lt;P&gt;The S32G MACs are configured as follows:&lt;BR /&gt;+---------+--------------+------------------+&lt;BR /&gt;|&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | LANE 0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| LANE 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; |&lt;BR /&gt;+---------+--------------+------------------+&lt;BR /&gt;| SERDES0&amp;nbsp; &amp;nbsp; | GMAC (SGMII) | PFE_MAC2 (SGMII)&amp;nbsp; |&lt;BR /&gt;| SERDES1&amp;nbsp; &amp;nbsp; &amp;nbsp; | NOT USED&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | PFE_MAC0 (SGMII) |&lt;BR /&gt;+---------+--------------+------------------+&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Full U-Boot hwconfig:&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;hwconfig=pcie0:mode=sgmii,clock=ext,fmhz=100,xpcs_mode=both;pcie1:mode=sgmii,clock=ext,fmhz=100,xpcs_mode=0
pfeng_mode=enable,sgmii,rgmii,sgmii&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;DTS for port@2 (switch side):&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;			port@2 {
				reg = &amp;lt;2&amp;gt;;
				label = "OBC-1";
				ethernet = &amp;lt;&amp;amp;pfe_netif1&amp;gt;;
				phy-mode = "rgmii";
				rx-internal-delay-ps = &amp;lt;0&amp;gt;;
				tx-internal-delay-ps = &amp;lt;0&amp;gt;;
				fixed-link {
					speed = &amp;lt;1000&amp;gt;;
					full-duplex;
				};
			};&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;DTS for pfe_netif1 (MAC side):&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;&amp;amp;pfe_netif1 {
    phy-mode = "rgmii";
    status = "okay";
	fixed-link {
        speed = &amp;lt;1000&amp;gt;;
        full-duplex;
    };
};&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;PFE_MAC1 (pfe1) link state — confirmed up and correctly configured at the Linux/driver level:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;dmesg at boot:&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;[    5.264108] pfeng 46000000.pfe: netif name: pfe1
[    5.274127] pfeng 46000000.pfe: netif(pfe1) linked phyif: 1
[    5.279692] pfeng 46000000.pfe: netif(pfe1) mode: std
[    5.284853] pfeng 46000000.pfe: netif(pfe1) HIFs: count 1 map 02
[    6.012884] pfeng 46000000.pfe pfe1 (uninitialized): Subscribe to HIF1
[    6.019438] pfeng 46000000.pfe pfe1 (uninitialized): Host LLTX disabled
[    6.026270] pfeng 46000000.pfe pfe1 (uninitialized): Enable HIF1
[    6.032374] pfeng 46000000.pfe pfe1 (uninitialized): setting MAC addr: 00:04:9f:be:ef:01
[    6.040545] pfeng 46000000.pfe pfe1 (uninitialized): PTP HW addend 0x80000000, max_adj configured to 46566128 ppb
[    6.060939] pfeng 46000000.pfe pfe1 (uninitialized): Registered PTP HW clock successfully on EMAC1
[    6.070441] pfeng 46000000.pfe pfe1: registered
[    6.207482] pfeng 46000000.pfe pfe1: configuring for fixed/rgmii link mode
[    6.214306] pfeng 46000000.pfe pfe1: Set TX clock to 125000000Hz
[    6.220158] pfeng 46000000.pfe pfe1: Link is Up - 1Gbps/Full - flow control off

[    5.257995] pfeng 46000000.pfe: EMAC0 interface mode: 4
[    5.290707] pfeng 46000000.pfe: EMAC1 interface mode: 9
[    5.323320] pfeng 46000000.pfe: EMAC2 interface mode: 4
[    5.354571] pfeng 46000000.pfe: Interface selected: EMAC0: 0x4 EMAC1: 0x9 EMAC2: 0x4
[    5.382609] pfeng 46000000.pfe: TX clock on EMAC0 for interface sgmii installed
[    5.390050] pfeng 46000000.pfe: RX clock on EMAC0 for interface sgmii installed
[    5.404998] pfeng 46000000.pfe: TX clock on EMAC1 for interface rgmii installed
[    5.419918] pfeng 46000000.pfe: Defer enabling of RX clock on EMAC1 for interface rgmii (ret: -5)
[    5.434235] pfeng 46000000.pfe: TX clock on EMAC2 for interface sgmii installed
[    5.448374] pfeng 46000000.pfe: RX clock on EMAC2 for interface sgmii installed
[    5.667058] pfeng 46000000.pfe: EMAC timestamp external mode bitmap: 0
[    5.998447] pfeng 46000000.pfe pfe0 (uninitialized): Registered PTP HW clock successfully on EMAC0
[    6.060939] pfeng 46000000.pfe pfe1 (uninitialized): Registered PTP HW clock successfully on EMAC1
[    6.130296] pfeng 46000000.pfe pfe2 (uninitialized): Registered PTP HW clock successfully on EMAC2
[    6.215040] pfeng 46000000.pfe: RX clock on EMAC1 for interface rgmii installed&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Live DTB confirms the kernel matches the source DTS:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;# cat /proc/device-tree/soc/pfe@46000000/ethernet@11/phy-mode
rgmii&lt;/LI-CODE&gt;&lt;P&gt;ip a output:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;6: pfe1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1536 qdisc mq state UP group default qlen 1000
link/ether 00:04:9f:be:ef:01 brd ff:ff:ff:ff:ff:ff
inet6 fe80::204:9fff:febe:ef01/64 scope link&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;All SJA1110 DSA slave ports correctly enumerated. This confirms the sja1105 DSA driver bound successfully&lt;BR /&gt;to pfe1 as the CPU port/DSA master and parsed the static config without error.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Clock tree:&lt;/STRONG&gt; both TX and RX RGMII clocks enabled and attached to the correct consumer:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;# cat /sys/kernel/debug/clk/clk_summary | grep pfe1
 pfe1_tx_mii                         0       0        0        125000000   0          0     50000      Y   deviceless                      no_connection_id         
 pfe1_rx_mii                         0       0        0        125000000   0          0     50000      Y   deviceless                      no_connection_id         
 pfe1_tx_rmii                        0       0        0        125000000   0          0     50000      Y   deviceless                      no_connection_id         
 pfe1_rx_rmii                        0       0        0        125000000   0          0     50000      Y   deviceless                      no_connection_id         
 pfe1_tx_rgmii                       1       1        0        125000000   0          0     50000      Y   ethernet@11                     tx_rgmii                 
 pfe1_rx_rgmii                       1       1        0        125000000   0          0     50000      Y   ethernet@11                     rx_rgmii                 
 pfe1_tx_sgmii                       0       0        0        125000000   0          0     50000      Y   deviceless                      no_connection_id         
 pfe1_rx_sgmii                       0       0        0        125000000   0          0     50000      Y   deviceless                      no_connection_id         &lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So pfe1 is UP, LOWER_UP, correctly bound to the SJA1110 as DSA master, running in RGMII mode&lt;BR /&gt;with both clocks enabled — this rules out pfe1 being down, unbound, or misconfigured at the&lt;BR /&gt;Linux/driver level. The open question is specifically whether frames actually cross the&lt;BR /&gt;physical RGMII pins between PFE_MAC1 and SJA1110 port 2.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Issue&lt;/STRONG&gt;:&lt;BR /&gt;No traffic appears to cross the RGMII bus between PFE_MAC1 and SJA1110 port 2 in either direction, despite everything on both sides of that bus being independently up:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Test 1 — S32G -&amp;gt; switch direction&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Setup:&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;ip addr add 192.168.1.100/24 dev EPS-100bt1-9
ethtool -S pfe1 | grep '^ p02_' &amp;gt; before
tcpdump -i pfe1 -e -nn -c 20 &amp;gt; capture.txt &amp;amp;
arping -c 10 -I EPS-100bt1-9 192.168.1.6
ethtool -S pfe1 | grep '^ p02_' &amp;gt; after&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;# arping -c 10 -I EPS-100bt1-9 192.168.1.6
ARPING 192.168.1.6 from 192.168.1.100 EPS-100bt1-9
Sent 10 probes (10 broadcast(s))
Received 0 response(s)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;$ cat capture.txt
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on pfe1, link-type NULL (BSD loopback), snapshot length 262144 bytes
18:08:36.352535 AF Unknown (4294967295), length 64:
        0x0000:  ffff 0004 9fbe ef01 dadb 0c09 0806 0001  ................
        0x0010:  0800 0604 0001 0004 9fbe ef01 c0a8 0164  ...............d
        0x0020:  ffff ffff ffff c0a8 0106 0000 0000 0000  ................
        0x0030:  0000 0000 0000 0000 0000 0000            ............
[... 9 more identical ARP frames, all correctly DSA-tagged (dadb 0c09) and well-formed,
     plus one unrelated IPv6 background frame interleaved ...]&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;# diff before after
--- before
+++ after
@@ -1,4 +1,4 @@
-     p02_: 1
+     p02_: 0
      p02_n_runt: 0
      p02_n_soferr: 0
      p02_n_alignerr: 0&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;# grep n_rxfrm before after
before:     p02_n_rxfrm: 0
after:      p02_n_rxfrm: 0&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;Test 2 — switch -&amp;gt; S32G direction&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;Setup&lt;/STRONG&gt;&amp;nbsp;Partner board is a separate SJA1105 switch based board.&lt;/P&gt;&lt;LI-CODE lang="c"&gt;# ping -c 10 -I t1-6 192.168.1.100 (run on a separate SJA1105/1110-family switch board
connected to our port 9 / 100BASE-T1 / EPS-100bt1-9)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;# diff before after (ethtool -S EPS-100bt1-9)
- n_rxfrm: 0
+ n_rxfrm: 9 &amp;lt;- port 9 physically received 9 frames from the wire&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt; # diff before after 
- p02_n_txfrm: 0
+ p02_n_txfrm: 9 &amp;lt;- switch fabric forwarded all 9 toward the CPU port&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;# tcpdump -i pfe1 -e -nn -c 20 (same window)
listening on pfe1, link-type NULL (BSD loopback), snapshot length 262144 bytes
[-- nothing captured --]&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;Port 9 received 9 real frames; the fabric forwarded all 9 toward port 2 — but&lt;BR /&gt;nothing arrived at pfe1.&lt;/P&gt;&lt;P&gt;So the SJA1110's own fabric counters show all 9 frames successfully forwarded from port 9 to port 2's egress.&lt;/P&gt;&lt;P&gt;But tcpdump -i pfe1 -e -nn on the S32G during this exact test shows NOTHING received.&lt;/P&gt;&lt;P&gt;So the DSA/software layer on the S32G side believes it's sending (case 1). The switch's internal fabric believes it's sending toward the CPU port (case 2). Neither side has any confirmation that the other actually received anything across the physical RGMII bus. Every layer adjacent to this bus works individually; the bus itself has no confirmed successful crossing in either direction.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What's been ruled out so far:&lt;/STRONG&gt;&lt;BR /&gt;- pfeng_mode / hwconfig (xpcs_mode) — confirmed correct; EMAC1 mode is RGMII (0x9), not SGMII (it was previously misconfigured as SGMII due to xpcs_mode=both on SerDes1 forcing PFE_MAC1's XPCS into SGMII; corrected to xpcs_mode=0 since PFE_MAC0 alone only needs XPCS0)&lt;BR /&gt;- PFE_MAC1 TX/RX clock enablement — confirmed enabled at the correct rate (125MHz) in clk_summary&lt;BR /&gt;- DSA tagging and CPU port binding — confirmed working (port netdevs exist, frames get tagged with the correct destination port in the DSA header)&lt;BR /&gt;- SJA1110 internal fabric/forwarding — confirmed working between two other ports (9 and 2) using real external traffic&lt;BR /&gt;- BASE-T1 link partner — confirmed passing real frames into the switch (port 9 n_rxfrm increments from genuine wire traffic)&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What hasn't been ruled out / open questions:&lt;/STRONG&gt;&lt;BR /&gt;- Whether 1000 Mbps RGMII with zero internal delay on both MAC and switch sides (rx/tx-internal-delay-ps=0, plain "rgmii" not "rgmii-id") is compatible without delay added by board trace length — have not yet tried forcing the link down to 100 Mbps as a timing-margin test&lt;/P&gt;&lt;P&gt;1. Is rx/tx-internal-delay-ps=0 on both ends at 1000 Mbps RGMII expected to work, or does this combination typically require delay compensation unless the PCB explicitly accounts for it?&lt;BR /&gt;2. Am I missing any other configuration?&lt;/P&gt;&lt;P&gt;Happy to share full register dumps, if required. Appreciate any pointers before we probe the PE_02-13 bus with a logic analyzer (limited probe access due to board layout, so it is not so convenient currently.&lt;/P&gt;&lt;P&gt;Thanks.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 29 Jun 2026 12:16:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2387735#M16502</guid>
      <dc:creator>pcentauri92</dc:creator>
      <dc:date>2026-06-29T12:16:13Z</dc:date>
    </item>
    <item>
      <title>Re: Custom S32G399A board: No frames cross switch-facing RGMII bus in either direction</title>
      <link>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2388021#M16506</link>
      <description>&lt;P&gt;Hi，&lt;SPAN&gt;pcentauri92&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Thank you for your detail information&lt;/P&gt;
&lt;P&gt;According to my understanding, there seems to be a problem with the communication when using PFE_MAC1 RGMAII and Port 2 of SJA1110A on your development board. Is that correct?&lt;/P&gt;
&lt;P&gt;The default configuration of S32G-VNP-RDB3 is that PFE_MAC0/1 operates in SGMII mode and is connected to SJA1110. On your development board, why did you consider using RGMII mode? It is recommended to modify the corresponding software configuration.&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;Joey&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jun 2026 04:11:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2388021#M16506</guid>
      <dc:creator>Joey_z</dc:creator>
      <dc:date>2026-06-30T04:11:16Z</dc:date>
    </item>
    <item>
      <title>Re: Custom S32G399A board: No frames cross switch-facing RGMII bus in either direction</title>
      <link>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2388024#M16507</link>
      <description>&lt;P&gt;any schematics sharing from hardware side for &lt;SPAN&gt;RGMII bus between PFE_MAC1 and SJA1110 port 2&amp;nbsp;&lt;/SPAN&gt;?&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jun 2026 04:25:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2388024#M16507</guid>
      <dc:creator>db16122</dc:creator>
      <dc:date>2026-06-30T04:25:01Z</dc:date>
    </item>
    <item>
      <title>Re: Custom S32G399A board: No frames cross switch-facing RGMII bus in either direction</title>
      <link>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2388076#M16509</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/236188"&gt;@Joey_z&lt;/a&gt;&amp;nbsp;,&lt;BR /&gt;&lt;BR /&gt;Thank you for the response.&lt;BR /&gt;&lt;BR /&gt;The module in question here is a custom design that uses the S32G399A chip along with the NXP SJA1110A ethernet switch. We based this design on the S32G-VNP-RDB3 development platform but we made quite a few changes from the base design. The PFE_MAC1 using RGMII is one of those changes.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;I am also attaching the dts file override where we change the PFE_MAC1 mode and pinmux here.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;PFE_MAC1 mode configuration:&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;/* pfe_mdio1 is already disabled in the base config in s32gxxxa-rdb.dtsi */
&amp;amp;pfe_mdio1 {
	/* occupied by GMAC0 */
	status = "disabled";
};

/*
 * pfe_netif1 = PFE_MAC1 — management port to Switch-A port 2.
 * Overrides the base "sgmii" stub in s32gxxxa-rdb.dtsi.
 * Plain "rgmii" (no -id/-txid) since both MAC and switch add zero delay.
 * No phy-handle: the link partner is the SJA1110A switch, described as a
 * fixed-link on switch port@2. MDIO is not needed for link management here.
 */
&amp;amp;pfe_netif1 {
    phy-mode = "rgmii";
    status = "okay";
	fixed-link {
        speed = &amp;lt;1000&amp;gt;;
        full-duplex;
    };
};&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;PFE_MAC1 pinmux:&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;		/*
		* PFE_MAC1 RGMII pinmux — management port to Switch-A.
		*
		* All RX pad SSS values confirmed from S32G3 IOMUX spreadsheet.
		* TX path: output pads only, no IMCR needed.
		* RX path: input pads + IMCR registers to route pads into PFE_MAC1.
		*
		* Note: PE_07 (TXD3) uses FUNC3, not FUNC2. Similarly PE_08 (RX_CLK) output uses FUNC3; its IMCR (CR#859) uses FUNC2.
		*/

		pfe1rgmii_pins: pfe1rgmii_pins {
			/* TX outputs: PE_02=TX_CLK, PE_03=TX_EN, PE_04=TXD0,
			PE_05=TXD1, PE_06=TXD2 PE_07 (TXD3) */
			pfe1rgmii_grp0 {
				pinmux = &amp;lt;S32CC_PINMUX(66, FUNC2)&amp;gt;,   /* PE_02: PFE_MAC1_TX_CLK */
						&amp;lt;S32CC_PINMUX(67, FUNC2)&amp;gt;,   /* PE_03: PFE_MAC1_TX_EN  */
						&amp;lt;S32CC_PINMUX(68, FUNC2)&amp;gt;,   /* PE_04: PFE_MAC1_TXD0   */
						&amp;lt;S32CC_PINMUX(69, FUNC2)&amp;gt;,   /* PE_05: PFE_MAC1_TXD1   */
						&amp;lt;S32CC_PINMUX(70, FUNC2)&amp;gt;,   /* PE_06: PFE_MAC1_TXD2   */
						&amp;lt;S32CC_PINMUX(71, FUNC3)&amp;gt;;   /* PE_07: PFE_MAC1_TXD3 */
				output-enable;
				slew-rate = &amp;lt;S32CC_FAST_SLEW_166MHZ&amp;gt;;
			};

			/* RX inputs — pads set to FUNC0 (input mode); routing into PFE_MAC1
			is handled by the IMCR entries in pfe1rgmii_grp2 below.
			NXP input mux pattern: pad=FUNC0 + IMCR=FUNC2 */
			pfe1rgmii_grp1 {
				pinmux = &amp;lt;S32CC_PINMUX(72, FUNC0)&amp;gt;,   /* PE_08: input */
						&amp;lt;S32CC_PINMUX(73, FUNC0)&amp;gt;,   /* PE_09: input */
						&amp;lt;S32CC_PINMUX(74, FUNC0)&amp;gt;,   /* PE_10: input */
						&amp;lt;S32CC_PINMUX(75, FUNC0)&amp;gt;,   /* PE_11: input */
						&amp;lt;S32CC_PINMUX(76, FUNC0)&amp;gt;,   /* PE_12: input */
						&amp;lt;S32CC_PINMUX(77, FUNC0)&amp;gt;;   /* PE_13: input */
				input-enable;
				slew-rate = &amp;lt;S32CC_FAST_SLEW_166MHZ&amp;gt;;
			};

			/* IMCR input mux — selects which pad drives each PFE_MAC1 RX signal.
			CR#866 routes PE_02 (TX_CLK pad) back into PFE_MAC1_TX_CLK_I; required
			even for RGMII TX because the MAC samples its own TX_CLK internally.
			All entries at FUNC2 per S32G3 IOMUX spreadsheet. */
			pfe1rgmii_grp2 {
				pinmux = &amp;lt;S32CC_PINMUX(866, FUNC2)&amp;gt;,  /* CR#866: PFE_MAC1_TX_CLK_I ← PE_02 */
						&amp;lt;S32CC_PINMUX(859, FUNC2)&amp;gt;,  /* CR#859: PFE_MAC1_RX_CLK_I ← PE_08 */
						&amp;lt;S32CC_PINMUX(865, FUNC2)&amp;gt;,  /* CR#865: PFE_MAC1_RXDV_I   ← PE_09 */
						&amp;lt;S32CC_PINMUX(861, FUNC2)&amp;gt;,  /* CR#861: PFE_MAC1_RXD_I[0] ← PE_10 */
						&amp;lt;S32CC_PINMUX(862, FUNC2)&amp;gt;,  /* CR#862: PFE_MAC1_RXD_I[1] ← PE_11 */
						&amp;lt;S32CC_PINMUX(863, FUNC2)&amp;gt;,  /* CR#863: PFE_MAC1_RXD_I[2] ← PE_12 */
						&amp;lt;S32CC_PINMUX(864, FUNC2)&amp;gt;;  /* CR#864: PFE_MAC1_RXD_I[3] ← PE_13 */
			};
		};&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;Please let me know if you need any other information.&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jun 2026 06:20:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/Custom-S32G399A-board-No-frames-cross-switch-facing-RGMII-bus-in/m-p/2388076#M16509</guid>
      <dc:creator>pcentauri92</dc:creator>
      <dc:date>2026-06-30T06:20:47Z</dc:date>
    </item>
  </channel>
</rss>

