How to correctly configure the reset pin in device tree?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to correctly configure the reset pin in device tree?

Jump to solution
158 Views
khang_letruong
Senior Contributor III

Dear Forum,

I am facing some issue bringing up an Ethernet switch and I would like your confirmation about the correct property configure the Ethernet PHY/switch in order to rule out the potential cause. 

Concretely, I saw that in most of the case, reset-gpios property is used within the ethphy node (which is working according to my experience with iMX8MP based board) :

 

 

$ ag "reset-gpios" arch/arm64/ | grep imx8m
arch/arm64/boot/dts/freescale/imx8mq-thor96.dts:136:			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-evk-pcie1-m2.dts:19:		reset-gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2pro.dts:65:		reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-emcon.dtsi:89:			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-phanbell.dts:276:			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi:122:			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts:545:		reset-gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts:889:		reset-gpios = <&gpio3 13 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-prt8mm.dts:110:		reset-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mp-evk-usdhc1-m2.dts:24:		reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dts:183:			reset-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc.dts:409:		reset-gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts:141:		reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts:234:				reset-gpios = <&max7323 0 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-kontron-bl-osm-s.dts:133:			reset-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk-dpdk.dts:9:	/delete-property/ reset-gpios;
arch/arm64/boot/dts/freescale/imx8mp-msc-sm2s.dtsi:164:			reset-gpios = <&tca6424 16 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-msc-sm2s.dtsi:191:			reset-gpios = <&tca6424 17 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-adsai.dtsi:277:		reset-gpios = <&pca6416 3 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-adsai.dtsi:287:		reset-gpios = <&pca6416 5 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-beacon-som.dtsi:16:		reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk-rpmsg.dts:174:		reset-gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi:208:			reset-gpios = <&gpio4 22 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi:338:		reset-gpios = <&pca6416 3 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi:348:		reset-gpios = <&pca6416 5 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi:366:		reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-kontron-bl.dts:128:			reset-gpios = <&gpio4 27 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-dhcom-pdk2.dts:133:			reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-phycore-som.dtsi:91:			reset-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mq-zii-ultra-rmb3.dts:97:		reset-gpios = <&gpio3 4 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mn-var-som-symphony.dts:60:	reset-gpios = <&pca9534 5 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mq-evk-lcdif-rm67191.dts:48:		reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk-os08a20-ov5640.dts:39:	reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-librem5.dtsi:270:		reset-gpios = <&gpio3 25 GPIO_ACTIVE_HIGH>,
arch/arm64/boot/dts/freescale/imx8mq-librem5.dtsi:1048:		reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-librem5.dtsi:1174:		reset-gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk-basler-ov5640.dts:61:	reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-nitrogen-som.dtsi:72:			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-nitrogen-som.dtsi:90:		reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-evk-dcss-rm67191.dts:62:		reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk.dts:319:			reset-gpios = <&gpio4 22 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk.dts:408:			reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk.dts:557:		reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk.dts:578:		reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-evk.dts:692:		reset-gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-ab2.dtsi:18:		reset-gpios = <&pca6416 4 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-ab2.dtsi:152:			reset-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-ab2.dtsi:246:		reset-gpios = <&pca6416 3 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-common.dtsi:30:		reset-gpios = <&gpio4 27 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-common.dtsi:72:			reset-gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-evk-usdhc2-m2.dts:10:		reset-gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mq-evk-usdhc2-m2.dts:17:		reset-gpios = <&gpio2 19 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-dhcom-som.dtsi:107:			reset-gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-dhcom-som.dtsi:123:			reset-gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-dhcom-som.dtsi:153:			reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-dhcom-som.dtsi:499:		reset-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-evk.dts:27:		reset-gpios = <&gpio3 5 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-evk.dts:307:			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-evk.dts:555:		reset-gpios = <&gpio3 17 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-evk.dts:562:		reset-gpios = <&gpio3 16 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-rdk.dts:78:		reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-sr-som.dtsi:33:			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi:606:		reset-gpios = <&gpio3 3 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi:622:		reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm.dtsi:41:			reset-gpios = <&gpio3 7 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts:70:	reset-gpios = <&pca9534 5 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mm-beacon-baseboard.dtsi:156:		reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-beacon-baseboard.dtsi:300:	reset-gpios = <&pca6416_1 7 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi:29:			reset-gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi:415:		reset-gpios = <&gpio3 3 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi:450:		reset-gpios = <&gpio3 25 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-adsai.dts:164:			reset-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi:646:		reset-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi:707:		reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi:723:		reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-wevk.dts:12:		reset-gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>;
arch/arm64/boot/dts/freescale/imx8mq-wevk.dts:48:		reset-gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dts:92:			reset-gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-ab2.dts:39:		reset-gpios = <&pca6416 4 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-ab2.dts:394:		reset-gpios = <&pca6416 2 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-beacon-som.dtsi:17:		reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-beacon-som.dtsi:78:	phy-reset-gpios = <&gpio4 22 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-tqma8mpql-mba8mpxl.dts:220:			reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mp-tqma8mpql-mba8mpxl.dts:250:			reset-gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-ab2.dtsi:16:		reset-gpios = <&pca6416 4 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-ab2.dtsi:127:			reset-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-ab2.dtsi:219:		reset-gpios = <&pca6416 3 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mn-var-som.dtsi:104:			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi:283:			reset-gpios = <&gpio4 22 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi:498:		reset-gpios = <&pca6416 3 GPIO_ACTIVE_LOW>;
arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi:507:		reset-gpios = <&pca6416 5 GPIO_ACTIVE_LOW>;

 

 

 

However, phy-reset-gpios is also used within the FEC node :

mainly for IMX6 :

 

 

$ ag "reset-gpios" arch/arm/ | grep imx6 
arch/arm/boot/dts/imx6ull-jozacp.dts:111:		reset-gpios = <&gpio4 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ull-jozacp.dts:141:			reset-gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-gw51xx.dtsi:131:	phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-kp.dtsi:191:		reset-gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>;
arch/arm/boot/dts/imx6q-h100.dts:196:		reset-gpios = <&gpio6 15 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-wandboard.dtsi:140:		reset-gpios = <&gpio4 14 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-wandboard.dtsi:303:	phy-reset-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-ds.dtsi:97:			reset-gpios = <&gpio4 10 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-ds.dtsi:232:		reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-kontron-bl-43.dts:32:		reset-gpios = <&gpio5 8 GPIO_ACTIVE_HIGH>;
arch/arm/boot/dts/imx6q-cm-fx6.dts:73:		reset-gpios = <&gpio6 16 GPIO_ACTIVE_HIGH>;
arch/arm/boot/dts/imx6sx-softing-vining-2000.dts:104:	phy-reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sx-softing-vining-2000.dts:127:	phy-reset-gpios = <&gpio5 21 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sx-softing-vining-2000.dts:171:		reset-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
arch/arm/boot/dts/imx6qdl-nit6xlite.dtsi:194:	phy-reset-gpios = <&gpio1 27 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-plybas.dts:134:			reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-tx6.dtsi:268:	phy-reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-tx6.dtsi:339:		reset-gpios = <&gpio2 22 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sr-som-ti.dtsi:71:		reset-gpios = <&gpio5 26 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi:380:		reset-gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi:576:		reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi:718:	phy-reset-gpios = <&gpio1 23 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-icore-rqs.dtsi:84:		reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-tx6ul-mainboard.dts:81:	phy-reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-skov-reve-mi1010ait-1cp1.dts:63:		reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-evk-btwifi.dtsi:17:		reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-prti6q.dts:219:			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ull-colibri-wifi.dtsi:18:		reset-gpios = <&gpio5 11 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-dhcom-pdk2.dtsi:206:			reset-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-b105pv2.dts:28:		reset-gpios = <&tca6424a 21 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sll-evk-btwifi.dts:15:		reset-gpios = <&gpio3 24 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-b105v2.dts:28:		reset-gpios = <&tca6424a 21 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-dmo-edmqmx6.dts:116:	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-colibri.dtsi:599:		reset-gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;	/* SODIMM 106 */
arch/arm/boot/dts/imx6q-novena.dts:226:	phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-b155v2.dts:30:		reset-gpios = <&tca6424a 21 GPIO_ACTIVE_HIGH>;
arch/arm/boot/dts/imx6qdl-kontron-samx6i.dtsi:272:			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sr-som.dtsi:64:	phy-reset-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-pico.dtsi:111:	phy-reset-gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-mccmon6.dts:102:	phy-reset-gpios = <&gpio1 27 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-skov-cpu.dtsi:69:			reset-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-var-dart.dtsi:186:		reset-gpios = <&gpio5 5 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-tx6ul.dtsi:287:	phy-reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-tx6ul.dtsi:322:	phy-reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-tx6ul.dtsi:358:		reset-gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-pico-hobbit.dts:68:		reset-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ulz-bsh-smm-m2.dts:21:		reset-gpios = <&gpio2 21 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-nitrogen6_max.dtsi:336:	phy-reset-gpios = <&gpio1 27 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-victgo.dts:200:			reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-gw5903.dtsi:451:		reset-gpios = <&gpio5 17 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-eckelmann-ci4x10.dts:298:	phy-reset-gpios = <&gpio1 18 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6-logicpd-baseboard.dtsi:224:	phy-reset-gpios = <&gpio1 24 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6-logicpd-baseboard.dtsi:271:		reset-gpios = <&gpio3 26 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-ba16.dtsi:389:	reset-gpios = <&gpio7 11 GPIO_ACTIVE_HIGH>;
arch/arm/boot/dts/imx6ul-pico-pi.dts:71:		reset-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-prti6g.dts:104:			reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-prtwd2.dts:29:		reset-gpios = <&gpio6 10 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabrelite.dtsi:293:	phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabrelite.dtsi:354:		reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>; /* NANDF_D5 */
arch/arm/boot/dts/imx6qdl-sabrelite.dtsi:373:		reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-gw53xx.dtsi:198:	phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qp-prtwd3.dts:68:			reset-gpios = <&gpio5 11 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qp-prtwd3.dts:80:			reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qp-prtwd3.dts:114:		reset-gpios = <&gpio6 10 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qp-prtwd3.dts:139:		reset-gpios = <&gpio5 5 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qp-prtwd3.dts:233:			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-b125pv2.dts:28:		reset-gpios = <&tca6424a 21 GPIO_ACTIVE_HIGH>;
arch/arm/boot/dts/imx6dl-lanmcu.dts:95:		reset-gpios = <&gpio6 10 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-lanmcu.dts:131:			reset-gpios = <&gpio5 22 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-prtmvt.dts:332:			reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sr-som-brcm.dtsi:65:		reset-gpios = <&gpio5 26 GPIO_ACTIVE_LOW>,
arch/arm/boot/dts/imx6qdl-aristainetos.dtsi:112:	phy-reset-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-icore.dtsi:165:			reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-icore.dtsi:210:		reset-gpios = <&gpio5 31 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-mba6.dtsi:186:			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-imx6ull-opos6ul.dtsi:20:		reset-gpios = <&gpio2 9 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-imx6ull-opos6ul.dtsi:29:	phy-reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-dhcom-som.dtsi:144:			reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabreauto.dtsi:323:				reset-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-gw5400-a.dts:151:	phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-qmx6.dtsi:116:	phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sx-nitrogen6sx.dts:279:	reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-tbs2910.dts:119:			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-gw54xx.dtsi:235:	phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-evi.dts:148:	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-gw560x.dtsi:277:	phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-var-dt6customboard.dts:155:	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-vicut1-12inch.dtsi:49:			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-apf6.dtsi:20:		reset-gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-apf6.dtsi:31:	phy-reset-gpios = <&gpio1 24 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ull-colibri.dtsi:172:		reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;    /* SODIMM 106 / RST */
arch/arm/boot/dts/imx6qdl-apalis.dtsi:457:	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-apalis.dtsi:494:		reset-gpios = <&gpio6 9 GPIO_ACTIVE_LOW>;	/* MXM3_13 */
arch/arm/boot/dts/imx6qdl-apalis.dtsi:705:		reset-gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6q-marsboard.dts:125:			reset-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-emcon.dtsi:184:	phy-reset-gpios = <&gpio5 20 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-phytec-pfla02.dtsi:93:	phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-b1x5v2.dtsi:29:		reset-gpios = <&tca6424a 9 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-phytec-phycore-som.dtsi:58:	phy-reset-gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6ul-ccimx6ulsbcpro.dts:90:	phy-reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sx-sdb.dtsi:205:		reset-gpios = <&gpio3 27 1>;
arch/arm/boot/dts/imx6sx-sdb.dtsi:269:	phy-reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-gw5907.dtsi:131:	phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-b125v2.dts:28:		reset-gpios = <&tca6424a 21 GPIO_ACTIVE_HIGH>;
arch/arm/boot/dts/imx6q-bosch-acc.dts:445:		reset-gpios = <&gpio5 5 GPIO_ACTIVE_LOW>; /* Old: 0, SS: HIGH */
arch/arm/boot/dts/imx6qdl-aristainetos2.dtsi:320:	phy-reset-gpios = <&gpio7 18 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sx-sdb-btwifi.dts:38:		reset-gpios = <&gpio4 10 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-riotboard.dts:107:			reset-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-savageboard.dtsi:107:	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-plym2m.dts:272:			reset-gpios = <&gpio5 22 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sl-tolino-shine2hd.dts:90:		reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sl-tolino-shine2hd.dts:122:		reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabresd.dtsi:300:        reset-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabresd.dtsi:360:			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabresd.dtsi:448:		reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabresd.dtsi:519:		reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-rex.dtsi:105:	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabresd-btwifi.dtsi:27:		reset-gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-sabresd-btwifi.dtsi:34:		reset-gpios = <&gpio4 7 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-alti6p.dts:225:			reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-pico.dtsi:178:	phy-reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-pico.dtsi:224:		reset-gpios = <&gpio5 27 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-pico.dtsi:242:		reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-yapp4-common.dtsi:109:	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-yapp4-common.dtsi:337:		reset-gpios = <&gpio_oled 1 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6dl-yapp4-common.dtsi:350:		reset-gpios = <&gpio_oled 1 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sx-udoo-neo.dtsi:80:	phy-reset-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sl-evk-btwifi.dts:22:		reset-gpios = <&gpio5 17 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sl-evk-btwifi.dts:29:		reset-gpios = <&gpio5 16 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-gw52xx.dtsi:205:	phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6qdl-nitrogen6x.dtsi:269:	phy-reset-gpios = <&gpio1 27 GPIO_ACTIVE_LOW>;
arch/arm/boot/dts/imx6sl-warp.dts:64:		reset-gpios = <&gpio4 5 GPIO_ACTIVE_LOW>, 	/* WL_REG_ON */

 

 

and IMX93 : https://community.nxp.com/t5/i-MX-Processors/How-to-configure-the-phy-reset-pin-for-imx93x/td-p/1765...

Could you help to clarify my confusion, please ?

Thanks in advance and best regards,

Khang

Labels (1)
0 Kudos
Reply
1 Solution
120 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hello,

Please refer Documentation/devicetree/bindings/net/fsl,fec.yaml

  # Deprecated optional properties:
  # To avoid these, create a phy node according to ethernet-phy.yaml in the same
  # directory, and point the FEC's "phy-handle" property to it. Then use
  # the phy's reset binding, again described by ethernet-phy.yaml.

  phy-reset-gpios:
    deprecated: true
    description:
      Should specify the gpio for phy reset.

So for the iMX8MP/i.MX8MM platform, you should define reset-gpios in ethernet-phy node not fec/eqos node, just like other dts.



Best Regards,
Zhiming

View solution in original post

0 Kudos
Reply
2 Replies
121 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hello,

Please refer Documentation/devicetree/bindings/net/fsl,fec.yaml

  # Deprecated optional properties:
  # To avoid these, create a phy node according to ethernet-phy.yaml in the same
  # directory, and point the FEC's "phy-handle" property to it. Then use
  # the phy's reset binding, again described by ethernet-phy.yaml.

  phy-reset-gpios:
    deprecated: true
    description:
      Should specify the gpio for phy reset.

So for the iMX8MP/i.MX8MM platform, you should define reset-gpios in ethernet-phy node not fec/eqos node, just like other dts.



Best Regards,
Zhiming

0 Kudos
Reply
117 Views
khang_letruong
Senior Contributor III

Hi @Zhiming_Liu,

Thanks for pointing out the deprecated property. I did not notice about that.

 

0 Kudos
Reply