карамболь 1 November 22, 2021 Posted November 22, 2021 · Report post Здравствуйте. Появилась необходимость использовать два GEM, причем, будут использованы разные микросхемы PHY. Ковыряясь в Vivado обнаружил, что несмотря на возможность выбора 4-х GEM, сигналы MDC всегда MIO76 и MIO76. Насколько я понял в DTB это должно выглядеть так mdio { compatible = "cdns,macb-mdio"; reg = <0x0 0xff0b0000 0x0 0x1000>; clocks = <&clk125>, <&clk125>, <&clk125>; clock-names = "pclk", "hclk", "tx_clk"; ethernet_phya: ethernet-phy@a { reg = <0xA>; }; ethernet_phyb: ethernet-phy@b { reg = <0xB>; }; }; Gem1: ethernet@ff0b0000 { .... phy-handle = <& ethernet_phya>; } Gem3: ethernet@ff0c0000 { .... phy-handle = <& ethernet_phyb>; } Так ли это ? Может был у кого такой опыт ? Quote Share this post Link to post Share on other sites More sharing options...
карамболь 1 November 22, 2021 Posted November 22, 2021 · Report post Поправка для MDIO можно выбрать MIO 50-51, но они уже используются для SD карты Quote Share this post Link to post Share on other sites More sharing options...
карамболь 1 November 22, 2021 Posted November 22, 2021 · Report post Никто не подключал больше одного Gem ? Quote Share this post Link to post Share on other sites More sharing options...
nice_vladi 3 November 22, 2021 Posted November 22, 2021 · Report post 1 hour ago, карамболь said: Никто не подключал больше одного Gem ? На zcu102 подключали 2 GEM. Пины, вроде, везде были разными. Вообще, есть смысл залезть в вики от хилых и посмотреть их примеры. Там точно есть reference design для использования нескольких GEM. Quote Share this post Link to post Share on other sites More sharing options...
карамболь 1 November 22, 2021 Posted November 22, 2021 · Report post 4 minutes ago, nice_vladi said: На zcu102 подключали 2 GEM. Пины, вроде, везде были разными. Вообще, есть смысл залезть в вики от хилых и посмотреть их примеры. Там точно есть reference design для использования нескольких GEM. есть, но там 2-й GEM через PL (EMIO) роутится. Во всяком, случае, что нашел пока. На форуме у кислых нашел топик с таким решением по DTB &gem0 { status = "okay"; local-mac-address = [00 0a 35 00 00 00]; phy-handle = <ðernet_phy0>; ethernet_phy0: ethernet-phy@0 { reg = <0>; }; ethernet_phy1: ethernet-phy@1{ reg = <1>; }; }; &gem1 { status = "okay"; local-mac-address = [00 0a 35 00 00 01]; phy-handle = <ðernet_phy1>; }; И вроде бы, у коллеги это сработало. Вот я и хотел убедиться, так ли это... Я правильно понимаю, что при такой реализации, подключать в Vivado MDI нужно только для для GEM0 ? Меня немного смущает, что два разных интерфейса юзают одни и те же пины MDIO. Quote Share this post Link to post Share on other sites More sharing options...
gosha-z 3 November 23, 2021 Posted November 23, 2021 · Report post 11 hours ago, карамболь said: Меня немного смущает, что два разных интерфейса юзают одни и те же пины MDIO. Два разных интерфейса юзают одну шину MDIO. И это нормально. DT выше - рабочий, проверено на себе. Quote Share this post Link to post Share on other sites More sharing options...
карамболь 1 November 23, 2021 Posted November 23, 2021 (edited) · Report post 8 minutes ago, gosha-z said: Два разных интерфейса юзают одну шину MDIO. И это нормально. DT выше - рабочий, проверено на себе. Спасибо ! Т.е. только для одного интерфейса GEM активизировать галочку MDIO ? Edited November 23, 2021 by карамболь Quote Share this post Link to post Share on other sites More sharing options...