Подключение второго Ethernet
| fedoseev |
|
 |
|
|
|
|
|
| Пункты: 827 |
| Регистрация: 26.01.2023 |
|
|
|
Пытаюсь подключить к порту PI внешний контроллер Ethernet с PHY Address = 1, аналогичный имеющемуся. В Device Tree создал конфигурацию для emac0 по аналогии с emac1. Полные конфигурации выглядят так:
emac0: ethernet@5020000 {
compatible = "allwinner,sun50i-h616-emac";
reg = <0x05020000 0x10000>;
interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "macirq";
resets = <&ccu RST_BUS_EMAC0>;
reset-names = "stmmaceth";
clocks = <&ccu CLK_BUS_EMAC0>;
clock-names = "stmmaceth";
syscon = <&syscon 0>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&ext_rgmii_pins>;
phy-mode = "rmii";
phy-handle = <&ext_rmii_phy0>;
allwinner,rx-delay-ps = <3100>;
allwinner,tx-delay-ps = <700>;
allwinner,ignore-emac-reset-failure;
mdio0: mdio {
compatible = "snps,dwmac-mdio";
#address-cells = <1>;
#size-cells = <0>;
ext_rmii_phy0: ethernet-phy@0 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <1>;
reset-assert-us = <15000>;
reset-deassert-us = <15000>;
reset-gpios = <&pio PI 16 GPIO_ACTIVE_LOW>;
icplus,select-rx-error;
};
};
};
emac1: ethernet@5030000 {
compatible = "allwinner,sun50i-h616-emac";
reg = <0x05030000 0x10000>;
interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "macirq";
resets = <&ccu RST_BUS_EMAC1>;
reset-names = "stmmaceth";
clocks = <&ccu CLK_BUS_EMAC1>;
clock-names = "stmmaceth";
syscon = <&syscon 1>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&rmii_pins>;
phy-mode = "rmii";
phy-handle = <&ext_rmii_phy1>;
allwinner,rx-delay-ps = <3100>;
allwinner,tx-delay-ps = <700>;
allwinner,ignore-emac-reset-failure;
mdio1: mdio {
compatible = "snps,dwmac-mdio";
#address-cells = <1>;
#size-cells = <0>;
ext_rmii_phy1: ethernet-phy@1 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <0>;
reset-assert-us = <15000>;
reset-deassert-us = <15000>;
reset-gpios = <&pio PA 12 GPIO_ACTIVE_LOW>;
icplus,select-rx-error;
};
};
};
При включении в DT одной любой конфигурации - emac0 или emac1, соответствующий Ethernet-контрллер определяется и работает. Но при одновременном включении обеих конфигураций, определяется лишь emac0.
Что необходимо еще сделать, чтобы добиться одновременной работы обоих контроллеров? |
|
|
|
|
|
|
|