mirror of
https://github.com/openwrt/openwrt.git
synced 2025-04-21 09:31:57 +00:00
ipq806x: enable and setup multi-CPU port for qca8k switch
Enable and setup multi-cpu for qca8k switch for ipq806x based devices. Rework each DTS to enable the secondary CPU port on QCA8K switch and apply the required values originally set by the OEM in the old swconfig node. In original firmware the first CPU port was always assigned to the WAN port and the secondary CPU port was assigned to the rest of the LAN port. Follow this original implementation using an init.d script. To setup the CPU port ip tools is required. Add additional default package ip-tiny to correctly setup the CPU port. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
This commit is contained in:
parent
500dbaefd2
commit
8eab5b2526
target/linux/ipq806x
Makefile
base-files/etc/init.d
files/arch/arm/boot/dts
qcom-ipq8062-wg2600hp3.dtsqcom-ipq8064-ad7200-c2600.dtsiqcom-ipq8064-d7800.dtsqcom-ipq8064-eax500.dtsiqcom-ipq8064-g10.dtsqcom-ipq8064-onhub.dtsiqcom-ipq8064-r7500.dtsqcom-ipq8064-r7500v2.dtsqcom-ipq8064-vr2600v.dtsqcom-ipq8064-wg2600hp.dtsqcom-ipq8064-wpq864.dtsqcom-ipq8064-wxr-2533dhp.dtsqcom-ipq8065-nbg6817.dtsqcom-ipq8065-nighthawk.dtsiqcom-ipq8065-rt4230w-rev6.dtsqcom-ipq8065-tr4400-v2.dts
@ -21,6 +21,6 @@ DEFAULT_PACKAGES += \
|
||||
kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
|
||||
kmod-phy-qcom-ipq806x-usb kmod-usb3 kmod-usb-dwc3-qcom \
|
||||
kmod-ath10k-ct wpad-basic-mbedtls \
|
||||
uboot-envtools
|
||||
uboot-envtools ip-tiny
|
||||
|
||||
$(eval $(call BuildTarget))
|
||||
|
45
target/linux/ipq806x/base-files/etc/init.d/qca8k_set_port
Executable file
45
target/linux/ipq806x/base-files/etc/init.d/qca8k_set_port
Executable file
@ -0,0 +1,45 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=15
|
||||
|
||||
set_qca8k_port() {
|
||||
local port=$1
|
||||
local master=$2
|
||||
|
||||
ip link set $port type dsa conduit $master
|
||||
}
|
||||
|
||||
boot() {
|
||||
# Restore original implementation where the eth1 (port 6) was used
|
||||
# for the lan port and the eth0 (port 0) was used for the wan port
|
||||
case $(board_name) in
|
||||
askey,rt4230w-rev6 |\
|
||||
asrock,g10 |\
|
||||
buffalo,wxr-2533dhp |\
|
||||
compex,wpq864 |\
|
||||
nec,wg2600hp |\
|
||||
nec,wg2600hp3 |\
|
||||
netgear,d7800 |\
|
||||
netgear,r7500 |\
|
||||
netgear,r7500v2 |\
|
||||
netgear,r7800 |\
|
||||
netgear,xr450 |\
|
||||
netgear,xr500 |\
|
||||
nokia,ac400i |\
|
||||
tplink,ad7200 |\
|
||||
tplink,c2600 |\
|
||||
tplink,vr2600v |\
|
||||
zyxel,nbg6817)
|
||||
set_qca8k_port lan1 eth1
|
||||
set_qca8k_port lan2 eth1
|
||||
set_qca8k_port lan3 eth1
|
||||
set_qca8k_port lan4 eth1
|
||||
set_qca8k_port wan eth0
|
||||
;;
|
||||
asus,onhub |\
|
||||
tplink,onhub)
|
||||
set_qca8k_port lan1 eth1
|
||||
set_qca8k_port wan eth0
|
||||
;;
|
||||
esac
|
||||
}
|
@ -471,19 +471,19 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
qca,sgmii-rxclk-falling-edge;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -396,21 +396,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -399,21 +399,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -244,21 +244,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -217,21 +217,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -100,21 +100,18 @@
|
||||
phy-handle = <&phy_port2>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -313,19 +313,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -396,21 +396,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -428,21 +428,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -199,21 +199,19 @@ switch@10 {
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
qca,sgmii-rxclk-falling-edge;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -329,21 +329,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -254,21 +254,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -304,21 +304,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -361,21 +361,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -356,21 +356,18 @@
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
phy-mode = "rgmii";
|
||||
ethernet = <&gmac1>;
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
@ -363,21 +363,18 @@
|
||||
phy-handle = <&phy_port4>;
|
||||
};
|
||||
|
||||
/*
|
||||
port@6 {
|
||||
reg = <0>;
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac1>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "sgmii";
|
||||
qca,sgmii-enable-pll;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
pause;
|
||||
asym-pause;
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
mdio {
|
||||
|
Loading…
x
Reference in New Issue
Block a user