On Wednesday, March 29, 2017, Chris Brandt wrote: > On Wednesday, March 29, 2017, Geert Uytterhoeven wrote: > > > But, what do we do for Ethernet? All the pins are "normal" except > > > just the MDIO pin needs to be bidirectional. > > > That's the part I'm confused by. > > > How do we flag that just the ET_MDIO needs "bidirectional"? > > > > You add subnodes, cfr. arch/arm64/boot/dts/renesas/r8a7795-salvator- > x.dts: > > > > avb_pins: avb { > > mux { > > groups = "avb_link", "avb_phy_int", "avb_mdc", > > "avb_mii"; > > function = "avb"; > > }; > > > > pins_mdc { > > groups = "avb_mdc"; > > drive-strength = <24>; > > }; > > > > pins_mii_tx { > > pins = "PIN_AVB_TX_CTL", "PIN_AVB_TXC", > > "PIN_AVB_TD0", > > "PIN_AVB_TD1", "PIN_AVB_TD2", > > "PIN_AVB_TD3"; > > drive-strength = <12>; > > }; > > }; > > Oh, so there is a way! > > Thank you. > > > So, for clarity: Actually, Linus's request was to use "pinmux", not "pins". So, it should be: /* P1_6 = RIIC3SCL (bi dir) */ /* P1_7 = RIIC3SDA (bi dir) */ i2c3_pins: i2c3 { pinmux = <PIN(1, 6) | FUNC_1>, <PIN(1, 7) | FUNC_1>; bidirectional; }; /* Ethernet */ ether_pins: ether { /* Ethernet on Ports 1,2,3,5 */ mux { pinmux = <PIN(1, 14) | FUNC_4)>, /* P1_14 = ET_COL */ <PIN(5, 9) | FUNC_2)>, /* P5_9 = ET_MDC */ <PIN(3, 4) | FUNC_2)>, /* P3_4 = ET_RXCLK */ <PIN(3, 5) | FUNC_2)>, /* P3_5 = ET_RXER */ <PIN(3, 6) | FUNC_2)>, /* P3_6 = ET_RXDV */ <PIN(2, 0) | FUNC_2)>, /* P2_0 = ET_TXCLK */ <PIN(2, 1) | FUNC_2)>, /* P2_1 = ET_TXER */ <PIN(2, 2) | FUNC_2)>, /* P2_2 = ET_TXEN */ <PIN(2, 3) | FUNC_2)>, /* P2_3 = ET_CRS */ <PIN(2, 4) | FUNC_2)>, /* P2_4 = ET_TXD0 */ <PIN(2, 5) | FUNC_2)>, /* P2_5 = ET_TXD1 */ <PIN(2, 6) | FUNC_2)>, /* P2_6 = ET_TXD2 */ <PIN(2, 7) | FUNC_2)>, /* P2_7 = ET_TXD3 */ <PIN(2, 8) | FUNC_2)>, /* P2_8 = ET_RXD0 */ <PIN(2, 9) | FUNC_2)>, /* P2_9 = ET_RXD1 */ <PIN(2, 10) | FUNC_2)>, /* P2_10 = ET_RXD2 */ <PIN(2, 11) | FUNC_2)>; /* P2_11 = ET_RXD3 */ }; pins_bidir { pinmux = <PIN(3, 3) | FUNC_2)>, /* P3_3 = ET_MDIO */ bidirectional; }; }; NOTE: "FUNC_2" can just be "2" as per Geert's request. Chris ��.n��������+%������w��{.n����z�{��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f