I want to make work mt7622 soc’s ethernet controller and faced with this issue. I’ve compiled
mtk_soc_eth driver as
mkt_eth module and I have an entry in
mt7622-bananapi-bpi-r64.dts device tree for device, compatible with driver.
During boot this module is loaded into system automatically (I think after mounting rootfs):
[[email protected]:~]# lsmod | grep mtk_eth mtk_eth 69632 0 dsa_core 98304 1 mtk_eth
And it seems registered as platform driver:
[[email protected]:~]# ls /sys/bus/platform/drivers/mtk_soc_eth bind module uevent unbind
Also after boot I have an platform device:
[[email protected]:~]# ls /sys/bus/platform/devices/1b100000.ethernet driver_override modalias of_node power subsystem supplier:platform:10006000.power-controller supplier:platform:10209000.apmixedsys supplier:platform:10210000.topckgen supplier:platform:10211000.pinctrl supplier:platform:1b000000.syscon supplier:platform:1b128000.sgmiisys uevent waiting_for_supplier
However they are not binded for some reason. Moreover, when I try to bind them manually, I get an error:
[[email protected]:~]# echo '1b100000.ethernet' > /sys/bus/platform/drivers/mtk_soc_eth/bind -bash: echo: write error: Resource temporarily unavailable
How can I understand why ethernet device doesn’t bind with driver?