Dear Community,
From my trials, it seems that applying DPL from U-Boot is not enough to enable the DPSW and enable forwarding traffic on switch ports from DPSW and I needed to run the following command "ip link set eth<N> master <brX>" (under Linux) to do it.
Is there a way to enable forward traffic on switch ports from DPSW (DPAA2) without running OS ?
It would be great to do so from DPL configuration but I haven't found how to do it from LSDK UG document.
Regards,
Solved! Go to Solution.
Please get mc_utils source code folder in flexbuild_lsdk2108/components/firmware/mc_utils/.
Please refer to dpl file in mc_utils/config/ls2088a/LS2088A-RDB/custom/dpl-eth-dpsw.0x2A_0x41.dts.
/* ------------ DPSW ---------------*/
obj@900 {
obj_name = "dpsw@0";
};
...
objects {
...
/* ------------ DPSW ---------------*/
dpsw@0 {
compatible = "fsl,dpsw";
options = "DPSW_OPT_CTRL_IF_DIS";
max_vlans = <0x10>;
max_fdbs = <0x1>;
num_fdb_entries = <0x400>;
fdb_aging_time = <0x12c>;
num_ifs = <0x4>;
max_fdb_mc_groups = <0x40>;
};
}
connections {
connection@0{
/* Copper port (ETH0 on the RDB chassis) */
endpoint1 = "dpni@0";
endpoint2 = "dpmac@5";
};
connection@1 {
/* Copper port (ETH1 on the RDB chassis) */
endpoint1 = "dpsw@0/if@0";
endpoint2 = "dpmac@6";
};
connection@2 {
/* Copper port (ETH2 on the RDB chassis) */
endpoint1 = "dpsw@0/if@1";
endpoint2 = "dpmac@7";
};
connection@3 {
/* Copper port (ETH3 on the RDB chassis) */
endpoint1 = "dpsw@0/if@2";
endpoint2 = "dpmac@8";
};
connection@4 {
/* Internal port (ni1 in Linux) */
endpoint1 = "dpsw@0/if@3";
endpoint2 = "dpni@1";
};
};
Thank you for your inputs ! I succeeded to deploy the DPSW with forward traffic enabled under U-Boot without running Linux.
Regards,
Please get mc_utils source code folder in flexbuild_lsdk2108/components/firmware/mc_utils/.
Please refer to dpl file in mc_utils/config/ls2088a/LS2088A-RDB/custom/dpl-eth-dpsw.0x2A_0x41.dts.
/* ------------ DPSW ---------------*/
obj@900 {
obj_name = "dpsw@0";
};
...
objects {
...
/* ------------ DPSW ---------------*/
dpsw@0 {
compatible = "fsl,dpsw";
options = "DPSW_OPT_CTRL_IF_DIS";
max_vlans = <0x10>;
max_fdbs = <0x1>;
num_fdb_entries = <0x400>;
fdb_aging_time = <0x12c>;
num_ifs = <0x4>;
max_fdb_mc_groups = <0x40>;
};
}
connections {
connection@0{
/* Copper port (ETH0 on the RDB chassis) */
endpoint1 = "dpni@0";
endpoint2 = "dpmac@5";
};
connection@1 {
/* Copper port (ETH1 on the RDB chassis) */
endpoint1 = "dpsw@0/if@0";
endpoint2 = "dpmac@6";
};
connection@2 {
/* Copper port (ETH2 on the RDB chassis) */
endpoint1 = "dpsw@0/if@1";
endpoint2 = "dpmac@7";
};
connection@3 {
/* Copper port (ETH3 on the RDB chassis) */
endpoint1 = "dpsw@0/if@2";
endpoint2 = "dpmac@8";
};
connection@4 {
/* Internal port (ni1 in Linux) */
endpoint1 = "dpsw@0/if@3";
endpoint2 = "dpni@1";
};
};