I have a 3 year old BB-X15 with a dual PHY at home. I haven't touched
Linux for a couple of years, but am trying to pick it back up on a hobby
basis. We were working on a custom board with a dual PHY, but that effort
was put on hold a couple of year's ago. Message me if you need me to try
anything on the BB-X15 which could help with your custom board. If
something useful flushes out then it should be posted in public forums.
On my BB-X15, I just downloaded the latest image and did dmesg|grep mdio
(without anything plugged into the Ethernet ports):
debian@beaglebone:~$ dmesg|grep mdio
[ 1.112050] davinci_mdio 48485000.mdio: davinci mdio revision 1.6, bus
freq 1000000
[ 1.112061] libphy: 48485000.mdio: probed
[ 1.134048] davinci_mdio 48485000.mdio: phy[1]: device 48485000.mdio:01,
driver Micrel KSZ9031 Gigabit PHY
[ 1.134059] davinci_mdio 48485000.mdio: phy[2]: device 48485000.mdio:02,
driver Micrel KSZ9031 Gigabit PHY
[ 6.572870] Micrel KSZ9031 Gigabit PHY 48485000.mdio:01: attached PHY
driver [Micrel KSZ9031 Gigabit PHY] (mii_bus:phy_addr=48485000.mdio:01,
irq=POLL)
[ 6.710705] Micrel KSZ9031 Gigabit PHY 48485000.mdio:02: attached PHY
driver [Micrel KSZ9031 Gigabit PHY] (mii_bus:phy_addr=48485000.mdio:02,
irq=POLL)
[ 24.576701] Micrel KSZ9031 Gigabit PHY 48485000.mdio:01: attached PHY
driver [Micrel KSZ9031 Gigabit PHY] (mii_bus:phy_addr=48485000.mdio:01,
irq=POLL)
[ 24.684787] Micrel KSZ9031 Gigabit PHY 48485000.mdio:02: attached PHY
driver [Micrel KSZ9031 Gigabit PHY] (mii_bus:phy_addr=48485000.mdio:02,
irq=POLL)
debian@beaglebone:~$
debian@beaglebone:~$ uname -a
Linux beaglebone 4.14.108-ti-r131 #1buster SMP PREEMPT Tue Mar 24 19:18:36
UTC 2020 armv7l GNU/Linux
debian@beaglebone:~$ cat /etc/debian_version
10.3
uname -r
cat /etc/debian_version:
Thanks!
On Friday, January 8, 2021 at 2:13:17 PM UTC-5 acheesehead wrote:
> I meant dmesg | grep mdio. Here is output.
> beaglebone:~$ dmesg | grep mdio
> [ 1.319622] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus
> freq 1000000
> [ 1.319638] davinci_mdio 4a101000.mdio: detected phy mask ffffffef
> [ 1.338962] libphy: 4a101000.mdio: probed
> [ 1.338993] davinci_mdio 4a101000.mdio: phy[4]: device
> 4a101000.mdio:04, driver Atheros 8035 ethernet
> [ 19.657691] Atheros 8035 ethernet 4a101000.mdio:04: attached PHY driver
> [Atheros 8035 ethernet] (mii_bus:phy_addr=4a101000.mdio:04, irq=POLL)
>
> Relevant portions of device tree:
>
> cpsw_default: cpsw-default {
> pinctrl-single,pins = <
> /* Slave 1 */
> AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_OUTPUT_PULLDOWN, MUX_MODE2) /*
> mii1_txen.rgmii1_tctl */
> AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLDOWN, MUX_MODE2) /*
> mii1_rxdv.rgmii1_rctl */
> AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLDOWN, MUX_MODE2)
> /* Slave 2 */
> AM33XX_PADCONF(AM335X_PIN_GPMC_A0, PIN_OUTPUT_PULLDOWN, MUX_MODE2) /*
> mii2_txen.rgmii1_tctl */
> AM33XX_PADCONF(AM335X_PIN_GPMC_A1, PIN_INPUT_PULLDOWN, MUX_MODE2) /*
> mii2_rxdv.rgmii1_rctl */
> AM33XX_PADCONF(AM335X_PIN_GPMC_A2, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A3, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A4, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A5, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A6, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A7, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A8, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A9, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A10, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A11, PIN_INPUT_PULLDOWN, MUX_MODE2)
> AM33XX_PADCONF(AM335X_PIN_MII1_RX_ER, PIN_OUTPUT_PULLDOWN, MUX_MODE7) /*
> reset line */
> >;
> };
>
> cpsw_sleep: cpsw-sleep {
> pinctrl-single,pins = <
> /* Slave 1 reset value */
> AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
> /* Slave 2 */
> AM33XX_PADCONF(AM335X_PIN_GPMC_A0, PIN_INPUT_PULLDOWN, MUX_MODE7) /*
> mii2_txen.rgmii1_tctl */
> AM33XX_PADCONF(AM335X_PIN_GPMC_A1, PIN_INPUT_PULLDOWN, MUX_MODE7) /*
> mii2_rxdv.rgmii1_rctl */
> AM33XX_PADCONF(AM335X_PIN_GPMC_A2, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A3, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A4, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A5, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A6, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A7, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A8, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A9, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A10, PIN_INPUT_PULLDOWN, MUX_MODE7)
> AM33XX_PADCONF(AM335X_PIN_GPMC_A11, PIN_INPUT_PULLDOWN, MUX_MODE7)
> >;
> };
>
> &mac {
> pinctrl-names = "default", "sleep";
> pinctrl-0 = <&cpsw_default>;
> pinctrl-1 = <&cpsw_sleep>;
> dual_emac = <1>;
> status = "okay";
> };
>
> &davinci_mdio {
> pinctrl-names = "default", "sleep";
> pinctrl-0 = <&davinci_mdio_default>;
> pinctrl-1 = <&davinci_mdio_sleep>;
> status = "okay";
> };
>
> &cpsw_emac0 {
> phy_id = <&davinci_mdio>, <4>;
> phy-mode = "rgmii-txid";
> dual_emac_res_vlan = <1>;
> };
>
> &cpsw_emac1 {
> phy_id = <&davinci_mdio>, <5>;
> phy-mode = "rgmii-txid";
> dual_emac_res_vlan = <2>;
> };
>
>
>
>
>
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/3b9f9de7-8aed-4cfe-95f8-1f4f845b65c8n%40googlegroups.com.