Oh, if we don't add dtoverlay=dwc2, the usb port is driven by dwc_otg driver by default, if we add dtoverlay=dwc2, then the usb port is driven by dwc2.
And I tested with only dtoverlay=dwc2 (no dr_mode=peripheral), i could see usb0 net device both from rpi4 board and my host machine (via ifconfig -a).
Oh, if we don't add dtoverlay=dwc2, the usb port is driven by dwc_otg driver by default, if we add dtoverlay=dwc2, then the usb port is driven by dwc2.
And I tested with only dtoverlay=dwc2 (no dr_mode= peripheral) , i could see usb0 net device both from rpi4 board and my host machine (via ifconfig -a).