LinuxのNXP PFEngドライバーで3つのSGMIIインターフェイスを使用しています。そのうちの 2 つ (PFE1 + PFE2) をロードして動作させることはできますが、3 つ目 (PFE0) はドライバーに認識されません。
「HIF0が設定されていない、スキップされました」と表示されていますが、私が知る限り、PFE0にバインドされ、他の部分と同じように設定されています。
これがデバイスツリーです。
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright 2022-2023 NXP
*
*/
#include
#include
#include
#include
#include
/ {
aliases {
ethernet0 = &pfe_netif0;
ethernet1 = &pfe_netif1;
ethernet2 = &pfe_netif2;
};
soc {
pfe: pfe@46000000 {
compatible = "nxp,s32g-pfe";
reg = <0x0 0x46000000 0x0 0x1000000>,
<0x0 0x4007ca00 0x0 0x100>;
reg-names = "pfe-cbus", "s32g-main-gpr";
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&gic>;
interrupts = ,
,
,
,
,
;
interrupt-names = "hif0", "hif1", "hif2",
"bmu", "upegpt", "safety";
resets = <&reset S32CC_SCMI_RST_PART2>;
reset-names = "pfe_part";
clocks = <&clks S32G_SCMI_CLK_PFE_AXI>,
<&clks S32G_SCMI_CLK_PFE_PE>,
<&clks S32G_SCMI_CLK_PFE_TS>;
clock-names = "pfe_sys", "pfe_pe", "pfe_ts";
nvmem-cells = <&pfe_emacs_intf_sel>, <&pfe_coh_en>,
<&pfe_pwr_ctrl>, <&pfe_genctrl3>;
nvmem-cell-names = "pfe_emacs_intf_sel", "pfe_coh_en",
"pfe_pwr_ctrl", "pfe_genctrl3";
// serdes, phy type, instance, lane
phys = <&serdes1 PHY_TYPE_XPCS 0 0>, // pfe0 connected to sgmii1, lane 0
<&serdes1 PHY_TYPE_XPCS 1 1>, // pfe1 connected to sgmii1, lane 1
<&serdes0 PHY_TYPE_XPCS 1 1>; // pfe2 connected to sgmii0, lane 1
phy-names = "emac0_xpcs", "emac1_xpcs", "emac2_xpcs";
dma-coherent;
memory-region = <&pfe_reserved_bmu2>, <&pfe_reserved_rt>,
<&pfe_reserved>, <&pfe_reserved_bdr>;
memory-region-names = "pfe-bmu2-pool", "pfe-rt-pool",
"pfe-shared-pool", "pfe-bdr-pool";
nxp,fw-class-name = "s32g_pfe_class.fw";
nxp,fw-util-name = "s32g_pfe_util.fw";
nxp,pfeng-ihc-channel = ;
status = "okay";
/* MDIO on PFE0 */
pfe_mdio0: mdio@0 {
compatible = "nxp,s32g-pfe-mdio";
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
status = "okay";
pfe_mdiob_phy0: ethernet-phy@0 {
reg = <0>;
ti,op-mode = ;
};
};
/* MDIO on PFE1 */
pfe_mdio1: mdio@1 {
compatible = "nxp,s32g-pfe-mdio";
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
status = "okay";
pfe_mdiob_phy1: ethernet-phy@0 {
reg = <0>;
ti,op-mode = ;
};
};
/* MDIO on PFE2 */
pfe_mdio2: mdio@2 {
compatible = "nxp,s32g-pfe-mdio";
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
status = "okay";
pfe_mdiob_phy2: ethernet-phy@0 {
reg = <0>;
ti,op-mode = ;
};
};
/* Network interface 'pfe0' */
pfe_netif0: ethernet@10 {
compatible = "nxp,s32g-pfe-netif";
status = "okay";
reg = <10>;
local-mac-address = [ 00 04 9F BE EF 00 ];
nxp,pfeng-if-name = "pfe0";
nxp,pfeng-hif-channels = ;
nxp,pfeng-linked-phyif = ;
clocks = <&clks S32G_SCMI_CLK_PFE0_TX_SGMII>,
<&clks S32G_SCMI_CLK_PFE0_TX_RGMII>,
<&clks S32G_SCMI_CLK_PFE0_TX_RMII>,
<&clks S32G_SCMI_CLK_PFE0_TX_MII>,
<&clks S32G_SCMI_CLK_PFE0_RX_SGMII>,
<&clks S32G_SCMI_CLK_PFE0_RX_RGMII>,
<&clks S32G_SCMI_CLK_PFE0_RX_RMII>,
<&clks S32G_SCMI_CLK_PFE0_RX_MII>;
clock-names = "tx_sgmii", "tx_rgmii",
"tx_rmii", "tx_mii",
"rx_sgmii", "rx_rgmii",
"rx_rmii", "rx_mii";
phy-mode = "sgmii";
managed = "in-band-status";
};
/* Network interface 'pfe1' */
pfe_netif1: ethernet@11 {
compatible = "nxp,s32g-pfe-netif";
status = "okay";
reg = <11>;
local-mac-address = [ 00 04 9F BE EF 01 ];
nxp,pfeng-if-name = "pfe1";
nxp,pfeng-hif-channels = ;
nxp,pfeng-linked-phyif = ;
clocks = <&clks S32G_SCMI_CLK_PFE1_TX_SGMII>,
<&clks S32G_SCMI_CLK_PFE1_TX_RGMII>,
<&clks S32G_SCMI_CLK_PFE1_TX_RMII>,
<&clks S32G_SCMI_CLK_PFE1_TX_MII>,
<&clks S32G_SCMI_CLK_PFE1_RX_SGMII>,
<&clks S32G_SCMI_CLK_PFE1_RX_RGMII>,
<&clks S32G_SCMI_CLK_PFE1_RX_RMII>,
<&clks S32G_SCMI_CLK_PFE1_RX_MII>;
clock-names = "tx_sgmii", "tx_rgmii",
"tx_rmii", "tx_mii",
"rx_sgmii", "rx_rgmii",
"rx_rmii", "rx_mii";
phy-mode = "sgmii";
managed = "in-band-status";
};
/* Network interface 'pfe2' */
pfe_netif2: ethernet@12 {
compatible = "nxp,s32g-pfe-netif";
status = "okay";
reg = <12>;
local-mac-address = [ 00 04 9F BE EF 02 ];
nxp,pfeng-if-name = "pfe2";
nxp,pfeng-hif-channels = ;
nxp,pfeng-linked-phyif = ;
clocks = <&clks S32G_SCMI_CLK_PFE2_TX_SGMII>,
<&clks S32G_SCMI_CLK_PFE2_TX_RGMII>,
<&clks S32G_SCMI_CLK_PFE2_TX_RMII>,
<&clks S32G_SCMI_CLK_PFE2_TX_MII>,
<&clks S32G_SCMI_CLK_PFE2_RX_SGMII>,
<&clks S32G_SCMI_CLK_PFE2_RX_RGMII>,
<&clks S32G_SCMI_CLK_PFE2_RX_RMII>,
<&clks S32G_SCMI_CLK_PFE2_RX_MII>;
clock-names = "tx_sgmii", "tx_rgmii",
"tx_rmii", "tx_mii",
"rx_sgmii", "rx_rgmii",
"rx_rmii", "rx_mii";
phy-mode = "sgmii";
managed = "in-band-status";
};
};
};
}; ドライバーがロードされたときにLinuxが出力するものは次のとおりです。
[ 1.139965] phy-s32cc-serdes 40480000.serdes: Using mode 2 for SerDes subsystem
[ 1.150978] phy-s32cc-serdes 40480000.serdes: Unstable RX detected on XPCS1
[ 1.151314] phy-s32cc-serdes 44180000.serdes: Using mode 3 for SerDes subsystem
[ 1.157428] phy-s32cc-serdes 44180000.serdes: Unstable RX detected on XPCS1
[ 1.157446] phy-s32cc-serdes 44180000.serdes: Unstable RX detected on XPCS0
...
[ 15.457853] pfeng: loading out-of-tree module taints kernel.
[ 15.469032] pfeng 46000000.pfe: PFEng ethernet driver loading ...
[ 15.469046] pfeng 46000000.pfe: Version: 1.3.0
[ 15.469050] pfeng 46000000.pfe: Driver commit hash: M4_DRIVER_COMMIT_HASH
[ 15.469054] pfeng 46000000.pfe: Multi instance support: disabled (standalone)
[ 15.469058] pfeng 46000000.pfe: Compiled by: 12.3.0
[ 15.469085] pfeng 46000000.pfe: Cbus addr 0x46000000 size 0x1000000
[ 15.469093] pfeng 46000000.pfe: nxp,fw-class-name: s32g_pfe_class.fw
[ 15.469098] pfeng 46000000.pfe: nxp,fw-util-name: s32g_pfe_util.fw
[ 15.469151] pfeng 46000000.pfe: netif name: pfe1
[ 15.469158] pfeng 46000000.pfe: DT mac addr: 00:04:9f:be:ef:01
[ 15.469166] pfeng 46000000.pfe: netif(pfe1) linked phyif: 1
[ 15.469171] pfeng 46000000.pfe: netif(pfe1) mode: std
[ 15.469184] pfeng 46000000.pfe: netif(pfe1) HIFs: count 1 map 02
[ 15.469192] pfeng 46000000.pfe: SGMII AN enabled on EMAC1
[ 15.469196] pfeng 46000000.pfe: EMAC1 PHY less SGMII
[ 15.469204] pfeng 46000000.pfe: EMAC1 interface mode: 4
[ 15.469345] pfeng 46000000.pfe: netif name: pfe2
[ 15.469351] pfeng 46000000.pfe: DT mac addr: 00:04:9f:be:ef:02
[[ 15.469356] pfeng 46000000.pfe: netif(pfe2) linked phyif: 2
15.469361] pfeng 46000000.pfe: netif(pfe2) mode: std
[[ 15.469373] pfeng 46000000.pfe: netif(pfe2) HIFs: count 1 map 04
0[ 15.469380] pfeng 46000000.pfe: SGMII AN enabled on EMAC2
;[ 15.469384] pfeng 46000000.pfe: EMAC2 PHY less SGMII
3[ 15.469389] pfeng 46000000.pfe: EMAC2 interface mode: 4
2[ 15.469459] pfeng 46000000.pfe: HIF channels mask: 0x0006
m[ 15.469502] pfeng 46000000.pfe: PFE port coherency enabled, mask 0x1e
[ 15.469760] pfeng 46000000.pfe: Clocks: sys=300MHz pe=600MHz
[ 15.469775] pfeng 46000000.pfe: Interface selected: EMAC0: 0xffffffff EMAC1: 0x4 EMAC2: 0x4
O[ 15.470473] pfeng 46000000.pfe: PFE controller reset done
K[ 15.470543] pfeng 46000000.pfe: TX clock on EMAC1 for interface sgmii installed
[ 15.470577] pfeng 46000000.pfe: RX clock on EMAC1 for interface sgmii installed
[ 15.470629] pfeng 46000000.pfe: TX clock on EMAC2 for interface sgmii installed
15.470662] pfeng 46000000.pfe: RX clock on EMAC2 for interface sgmii installed
[[ 15.470842] pfeng 46000000.pfe: assigned reserved memory node pfebufs@34000000
0[ 15.470898] pfeng 46000000.pfe: assigned reserved memory node pfebufs@34080000
m[ 15.470955] pfeng 46000000.pfe: assigned reserved memory node pfebufs@83200000
][ 15.470982] pfeng 46000000.pfe: assigned reserved memory node pfebufs@835e0000
[ 15.476294] pfeng 46000000.pfe: Firmware: CLASS s32g_pfe_class.fw [45040 bytes]
F[ 15.476304] pfeng 46000000.pfe: Firmware: UTIL s32g_pfe_util.fw [23252 bytes]
i[ 15.476316] pfeng 46000000.pfe: [pfe_platform_master.c:3629] PFE CBUS p0x46000000 mapped @ v0xffffffc00c000000 (0x1000000 bytes)
n[ 15.476324] pfeng 46000000.pfe: [pfe_platform_master.c:3634] HW version 0x101
i[ 15.476332] pfeng 46000000.pfe: [pfe_hw_feature.c:93] Silicon S32G3
s[ 15.476340] pfeng 46000000.pfe: [pfe_platform_master.c:3646] Fail-Stop mode disabled
h[ 15.479186] pfeng 46000000.pfe: [pfe_platform_master.c:2783] PFE_ERRORS:Parity instance created
e[ 15.479197] pfeng 46000000.pfe: [pfe_platform_master.c:2798] PFE_ERRORS:Watchdog instance created
d[ 15.479203] pfeng 46000000.pfe: [pfe_platform_master.c:2814] PFE_ERRORS:Bus Error instance created
[ 15.479208] pfeng 46000000.pfe: [pfe_platform_master.c:2827] PFE_ERRORS:FW Fail Stop instance created
15.479214] pfeng 46000000.pfe: [pfe_platform_master.c:2840] PFE_ERRORS:Host Fail Stop instance created
[ 15.457853] pfeng: loading out-of-tree module taints kernel.
[ 15.469032] pfeng 46000000.pfe: PFEng ethernet driver loading ...
[ 15.469046] pfeng 46000000.pfe: Version: 1.3.0
[ 15.469050] pfeng 46000000.pfe: Driver commit hash: M4_DRIVER_COMMIT_HASH
[ 15.469054] pfeng 46000000.pfe: Multi instance support: disabled (standalone)
[ 15.469058] pfeng 46000000.pfe: Compiled by: 12.3.0
[ 15.469085] pfeng 46000000.pfe: Cbus addr 0x46000000 size 0x1000000
[ 15.469093] pfeng 46000000.pfe: nxp,fw-class-name: s32g_pfe_class.fw
[ 15.469098] pfeng 46000000.pfe: nxp,fw-util-name: s32g_pfe_util.fw
[ 15.469151] pfeng 46000000.pfe: netif name: pfe1
[ 15.469158] pfeng 46000000.pfe: DT mac addr: 00:04:9f:be:ef:01
[ 15.469166] pfeng 46000000.pfe: netif(pfe1) linked phyif: 1
[ 15.469171] pfeng 46000000.pfe: netif(pfe1) mode: std
[ 15.469184] pfeng 46000000.pfe: netif(pfe1) HIFs: count 1 map 02
[ 15.469192] pfeng 46000000.pfe: SGMII AN enabled on EMAC1
[ 15.469196] pfeng 46000000.pfe: EMAC1 PHY less SGMII
[ 15.469204] pfeng 46000000.pfe: EMAC1 interface mode: 4
[ 15.469345] pfeng 46000000.pfe: netif name: pfe2
[ 15.469351] pfeng 46000000.pfe: DT mac addr: 00:04:9f:be:ef:02
[[ 15.469356] pfeng 46000000.pfe: netif(pfe2) linked phyif: 2
15.469361] pfeng 46000000.pfe: netif(pfe2) mode: std
[[ 15.469373] pfeng 46000000.pfe: netif(pfe2) HIFs: count 1 map 04
0[ 15.469380] pfeng 46000000.pfe: SGMII AN enabled on EMAC2
;[ 15.469384] pfeng 46000000.pfe: EMAC2 PHY less SGMII
3[ 15.469389] pfeng 46000000.pfe: EMAC2 interface mode: 4
2[ 15.469459] pfeng 46000000.pfe: HIF channels mask: 0x0006
m[ 15.469502] pfeng 46000000.pfe: PFE port coherency enabled, mask 0x1e
[ 15.469760] pfeng 46000000.pfe: Clocks: sys=300MHz pe=600MHz
[ 15.469775] pfeng 46000000.pfe: Interface selected: EMAC0: 0xffffffff EMAC1: 0x4 EMAC2: 0x4
O[ 15.470473] pfeng 46000000.pfe: PFE controller reset done
K[ 15.470543] pfeng 46000000.pfe: TX clock on EMAC1 for interface sgmii installed
[ 15.470577] pfeng 46000000.pfe: RX clock on EMAC1 for interface sgmii installed
[ 15.470629] pfeng 46000000.pfe: TX clock on EMAC2 for interface sgmii installed
15.470662] pfeng 46000000.pfe: RX clock on EMAC2 for interface sgmii installed
[[ 15.470842] pfeng 46000000.pfe: assigned reserved memory node pfebufs@34000000
0[ 15.470898] pfeng 46000000.pfe: assigned reserved memory node pfebufs@34080000
m[ 15.470955] pfeng 46000000.pfe: assigned reserved memory node pfebufs@83200000
][ 15.470982] pfeng 46000000.pfe: assigned reserved memory node pfebufs@835e0000
[ 15.476294] pfeng 46000000.pfe: Firmware: CLASS s32g_pfe_class.fw [45040 bytes]
F[ 15.476304] pfeng 46000000.pfe: Firmware: UTIL s32g_pfe_util.fw [23252 bytes]
i[ 15.476316] pfeng 46000000.pfe: [pfe_platform_master.c:3629] PFE CBUS p0x46000000 mapped @ v0xffffffc00c000000 (0x1000000 bytes)
n[ 15.476324] pfeng 46000000.pfe: [pfe_platform_master.c:3634] HW version 0x101
i[ 15.476332] pfeng 46000000.pfe: [pfe_hw_feature.c:93] Silicon S32G3
s[ 15.476340] pfeng 46000000.pfe: [pfe_platform_master.c:3646] Fail-Stop mode disabled
h[ 15.479186] pfeng 46000000.pfe: [pfe_platform_master.c:2783] PFE_ERRORS:Parity instance created
e[ 15.479197] pfeng 46000000.pfe: [pfe_platform_master.c:2798] PFE_ERRORS:Watchdog instance created
d[ 15.479203] pfeng 46000000.pfe: [pfe_platform_master.c:2814] PFE_ERRORS:Bus Error instance created
[ 15.479208] pfeng 46000000.pfe: [pfe_platform_master.c:2827] PFE_ERRORS:FW Fail Stop instance created
15.479214] pfeng 46000000.pfe: [pfe_platform_master.c:2840] PFE_ERRORS:Host Fail Stop instance created
19.535286] pfeng 46000000.pfe: PFE_ERRORS:Fail Stop instance created
[0[ 19.535290] pfeng 46000000.pfe: PFE_ERRORS:ECC Err instance created
;[ 19.535300] pfeng 46000000.pfe: BMU1 buffer base: p0xc0000000
1[ 19.535388] pfeng 46000000.pfe: BMU2 buffer base: p0x34000000 (0x80000 bytes)
;[ 19.536682] pfeng 46000000.pfe: register IRQ 76 by name 'PFE BMU IRQ'
3[ 19.536851] pfeng 46000000.pfe: Firmware .elf detected
9[ 19.536853] pfeng 46000000.pfe: BMU_EMPTY_INT (BMU @ p0x000000002bafc76d). Pool ready.
m[ 19.536857] pfeng 46000000.pfe: Uploading CLASS firmware
V[ 19.536865] pfeng 46000000.pfe: Selected FW loading OPs to load 8 PEs in parallel
A[ 19.536866] pfeng 46000000.pfe: BMU_EMPTY_INT (BMU @ p0x00000000a2386541). Pool ready.
S[ 19.556236] pfeng 46000000.pfe: pfe_ct.h file version"92367c0e25f21f49217a9b08168ad2c8"
T[ 19.571482] pfeng 46000000.pfe: [FW VERSION] 1.8.0, Build: Nov 16 2023, 07:46:11 (nogitaaa), ID: 0x30
[ 19.571773] pfeng 46000000.pfe: EMAC timestamp external mode bitmap: 0
:[ 19.571814] pfeng 46000000.pfe: Uploading UTIL firmware
[ 19.571819] pfeng 46000000.pfe: Selected FW loading OPs to load 1 PEs in parallel
I[ 19.574246] pfeng 46000000.pfe: pfe_ct.h file version"92367c0e25f21f49217a9b08168ad2c8"
n[ 19.575323] pfeng 46000000.pfe: FW feature: drv_run_on_g3
i[ 19.575328] pfeng 46000000.pfe: FW feature: jumbo_frames
t[ 19.575333] pfeng 46000000.pfe: FW feature: software_vlan_table
i[ 19.575337] pfeng 46000000.pfe: FW feature: timestamping
a[ 19.575340] pfeng 46000000.pfe: FW feature: qos_mapping
l[ 19.575344] pfeng 46000000.pfe: FW feature: core_functionality
i[ 19.575348] pfeng 46000000.pfe: FW feature: extended_features
z[ 19.575353] pfeng 46000000.pfe: FW feature: flexible_router
e[ 19.575357] pfeng 46000000.pfe: FW feature: validate_hif_csum
[ 19.575361] pfeng 46000000.pfe: FW feature: err051211_workaround
P[ 19.575365] pfeng 46000000.pfe: FW feature: IPsec
F[ 19.575368] pfeng 46000000.pfe: FW feature: l2_bridge_aging
E[ 19.575373] pfeng 46000000.pfe: FW feature: receive_malformed
s[ 19.575379] pfeng 46000000.pfe: FW feature: ptp_conf_check
19.575384] pfeng 46000000.pfe: FW feature: vlan_conf_check
[[ 19.575389] pfeng 46000000.pfe: FW feature: hash_load_spread
0[ 19.575395] pfeng 46000000.pfe: FW feature: ingress_vlan
m[ 19.575398] pfeng 46000000.pfe: FW feature: safety
.[ 19.577825] pfeng 46000000.pfe: VLAN ID incorrect or not set. Using default VLAN ID = 0x01.
[ 19.577830] pfeng 46000000.pfe: VLAN stats size incorrect or not set. Using default VLAN stats size =.
[ 19.577916] pfeng 46000000.pfe: Software vlan hash table @ p0x20001278
[ 19.578088] pfeng 46000000.pfe: Fall-back bridge domain @ 0x20000a80 (class)
[ 19.578092] pfeng 46000000.pfe: Default bridge domain @ 0x20000a78 (class)
[ 19.579076] pfeng 46000000.pfe: Routing table created, Hash Table @ p0xc00e0000, Pool @ p0xc00e8000 ()
[ 19.579290] pfeng 46000000.pfe: Feature err051211_workaround: DISABLED
[ 19.587357] pfeng 46000000.pfe: MDIO bus 0 enabled
[ 19.593821] pfeng 46000000.pfe: MDIO bus 1 enabled
[ 19.599713] pfeng 46000000.pfe: MDIO bus 2 enabled
[ 19.599725] pfeng 46000000.pfe: HIF0 not configured, skipped
[ 19.600089] pfeng 46000000.pfe: HIF1 enabled
[ 19.600319] pfeng 46000000.pfe: HIF2 enabled
[ 19.600325] pfeng 46000000.pfe: HIF3 not configured, skipped
[ 19.600400] pfeng 46000000.pfe pfe1 (uninitialized): Subscribe to HIF1
[ 19.600407] pfeng 46000000.pfe pfe1 (uninitialized): Host LLTX disabled
[ 19.600833] pfeng 46000000.pfe pfe1 (uninitialized): Enable HIF1
[ 19.600994] pfeng 46000000.pfe pfe1 (uninitialized): setting MAC addr: 00:04:9f:be:ef:01
[ 19.601022] pfeng 46000000.pfe pfe1 (uninitialized): PTP HW addend 0x80000000, max_adj configured to b
[ 19.601031] pfeng 46000000.pfe: IEEE1588: Input Clock: 200000000Hz, Output: 100000000Hz, Accuracy: 10s
19.535286] pfeng 46000000.pfe: PFE_ERRORS:Fail Stop instance created
[0[ 19.535290] pfeng 46000000.pfe: PFE_ERRORS:ECC Err instance created
;[ 19.535300] pfeng 46000000.pfe: BMU1 buffer base: p0xc0000000
1[ 19.535388] pfeng 46000000.pfe: BMU2 buffer base: p0x34000000 (0x80000 bytes)
;[ 19.536682] pfeng 46000000.pfe: register IRQ 76 by name 'PFE BMU IRQ'
3[ 19.536851] pfeng 46000000.pfe: Firmware .elf detected
9[ 19.536853] pfeng 46000000.pfe: BMU_EMPTY_INT (BMU @ p0x000000002bafc76d). Pool ready.
m[ 19.536857] pfeng 46000000.pfe: Uploading CLASS firmware
V[ 19.536865] pfeng 46000000.pfe: Selected FW loading OPs to load 8 PEs in parallel
A[ 19.536866] pfeng 46000000.pfe: BMU_EMPTY_INT (BMU @ p0x00000000a2386541). Pool ready.
S[ 19.556236] pfeng 46000000.pfe: pfe_ct.h file version"92367c0e25f21f49217a9b08168ad2c8"
T[ 19.571482] pfeng 46000000.pfe: [FW VERSION] 1.8.0, Build: Nov 16 2023, 07:46:11 (nogitaaa), ID: 0x30
[ 19.571773] pfeng 46000000.pfe: EMAC timestamp external mode bitmap: 0
:[ 19.571814] pfeng 46000000.pfe: Uploading UTIL firmware
[ 19.571819] pfeng 46000000.pfe: Selected FW loading OPs to load 1 PEs in parallel
I[ 19.574246] pfeng 46000000.pfe: pfe_ct.h file version"92367c0e25f21f49217a9b08168ad2c8"
n[ 19.575323] pfeng 46000000.pfe: FW feature: drv_run_on_g3
i[ 19.575328] pfeng 46000000.pfe: FW feature: jumbo_frames
t[ 19.575333] pfeng 46000000.pfe: FW feature: software_vlan_table
i[ 19.575337] pfeng 46000000.pfe: FW feature: timestamping
a[ 19.575340] pfeng 46000000.pfe: FW feature: qos_mapping
l[ 19.575344] pfeng 46000000.pfe: FW feature: core_functionality
i[ 19.575348] pfeng 46000000.pfe: FW feature: extended_features
z[ 19.575353] pfeng 46000000.pfe: FW feature: flexible_router
e[ 19.575357] pfeng 46000000.pfe: FW feature: validate_hif_csum
[ 19.575361] pfeng 46000000.pfe: FW feature: err051211_workaround
P[ 19.575365] pfeng 46000000.pfe: FW feature: IPsec
F[ 19.575368] pfeng 46000000.pfe: FW feature: l2_bridge_aging
E[ 19.575373] pfeng 46000000.pfe: FW feature: receive_malformed
s[ 19.575379] pfeng 46000000.pfe: FW feature: ptp_conf_check
19.575384] pfeng 46000000.pfe: FW feature: vlan_conf_check
[[ 19.575389] pfeng 46000000.pfe: FW feature: hash_load_spread
0[ 19.575395] pfeng 46000000.pfe: FW feature: ingress_vlan
m[ 19.575398] pfeng 46000000.pfe: FW feature: safety
.[ 19.577825] pfeng 46000000.pfe: VLAN ID incorrect or not set. Using default VLAN ID = 0x01.
[ 19.577830] pfeng 46000000.pfe: VLAN stats size incorrect or not set. Using default VLAN stats size =.
[ 19.577916] pfeng 46000000.pfe: Software vlan hash table @ p0x20001278
[ 19.578088] pfeng 46000000.pfe: Fall-back bridge domain @ 0x20000a80 (class)
[ 19.578092] pfeng 46000000.pfe: Default bridge domain @ 0x20000a78 (class)
[ 19.579076] pfeng 46000000.pfe: Routing table created, Hash Table @ p0xc00e0000, Pool @ p0xc00e8000 ()
[ 19.579290] pfeng 46000000.pfe: Feature err051211_workaround: DISABLED
[ 19.587357] pfeng 46000000.pfe: MDIO bus 0 enabled
[ 19.593821] pfeng 46000000.pfe: MDIO bus 1 enabled
[ 19.599713] pfeng 46000000.pfe: MDIO bus 2 enabled
[ 19.599725] pfeng 46000000.pfe: HIF0 not configured, skipped
[ 19.600089] pfeng 46000000.pfe: HIF1 enabled
[ 19.600319] pfeng 46000000.pfe: HIF2 enabled
[ 19.600325] pfeng 46000000.pfe: HIF3 not configured, skipped
[ 19.600400] pfeng 46000000.pfe pfe1 (uninitialized): Subscribe to HIF1
[ 19.600407] pfeng 46000000.pfe pfe1 (uninitialized): Host LLTX disabled
[ 19.600833] pfeng 46000000.pfe pfe1 (uninitialized): Enable HIF1
[ 19.600994] pfeng 46000000.pfe pfe1 (uninitialized): setting MAC addr: 00:04:9f:be:ef:01
[ 19.601022] pfeng 46000000.pfe pfe1 (uninitialized): PTP HW addend 0x80000000, max_adj configured to b
[ 19.601031] pfeng 46000000.pfe: IEEE1588: Input Clock: 200000000Hz, Output: 100000000Hz, Accuracy: 10s @XDこのガイドは、3 つの PFE を SGMII 接続することを物理的に許可しない RDB3 のハードウェアに固有のものだと思います。私が取り組んでいるハードウェアには、チップ自体が構成をサポートしている限り、そのような物理的な制限はありません。
U-Bootには何の改造もありません。このメッセージングはU-Boot内のNXPコードから来ているため、この構成を使用できることを確認できますか?
Serdes0 Lane0 : PCIe
Serdes0レーン1:PFE
Serdes1レーン0:PFE
Serdes1レーン1:PFE
はい、カスタムボードです。
私が使っているのは、
U-Boot hwconfigは、
serdes0:mode=pcie&xpcs1,clock=ext,fmhz=100;pcie0:mode=rc;xpcs0_1:speed=1G,an=1;serdes1:mode=xpcs0&xpcs1,clock=ext,fmhz=100;xpcs1_0:speed=1G,an=1;xpcs1_1:speed=1G,an=1また、この設定では、u-bootが次のメッセージを表示します。
Failed to configure XPCS0_1
Failed to update XPCS1 for SerDes0
xpcs0_1 and xpcs 1_0 can't be both SGMII
SerDes1 configuration will be ignored as it's invalid
s32cc_serdes_phy serdes@40480000: Using mode 2 for SerDes subsystem
s32cc_serdes_phy serdes@40480000: Unstable RX detected on XPCS1