<div dir="ltr"><div>Hi Simon,</div><div><br></div><div>it uses bcmgenet.</div><div><br></div><div>Below some information from "hwinfo" and "dmesg" <br></div><div><br></div><div><br></div><div>===================================</div><div><br></div><div>hwinfo :</div><div><br></div><div>Broadcom BCM54213PE: /devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19/unimac-mdio--19:01</div><div><br></div><div>...<br></div><div><br></div><div><br></div><div>    platform device: name = fd580000.genet<br>    path = /devices/platform/scb/fd580000.genet<br>    type = "genet", modalias = "of:NgenetT(null)Cbrcm,genet-v5", driver = "bcmgenet"<br>    is net: sf_eth_net = /sys/devices/platform/scb/fd580000.genet/net<br></div><div><br></div><div>...<br></div><div><br></div><div>  platform device: name = unimac-mdio.-19<br>    path = /devices/platform/scb/fd580000.genet/unimac-mdio.-19<br>    type = "mdio", modalias = "of:NmdioT(null)Cbrcm,genet-mdio-v5", driver = "unimac-mdio"<br></div><div><br></div><div><br></div><div>  P: /devices/platform/scb/fd580000.genet<br>  L: 0<br>  E: DEVPATH=/devices/platform/scb/fd580000.genet<br>  E: SUBSYSTEM=platform<br>  E: DRIVER=bcmgenet<br>  E: OF_NAME=genet<br>  E: OF_FULLNAME=/scb/genet@7d580000<br>  E: OF_COMPATIBLE_0=brcm,genet-v5<br>  E: OF_COMPATIBLE_N=1<br>  E: OF_ALIAS_0=ethernet0<br>  E: MODALIAS=of:NgenetT(null)Cbrcm,genet-v5<br>  <br>  P: /devices/platform/scb/fd580000.genet/net/eth0<br>  L: 0<br>  E: DEVPATH=/devices/platform/scb/fd580000.genet/net/eth0<br>  E: SUBSYSTEM=net<br>  E: INTERFACE=eth0<br>  E: IFINDEX=2<br>  E: USEC_INITIALIZED=11130122<br>  E: ID_MM_CANDIDATE=1<br>  E: net.ifnames=0<br>  E: ID_NET_NAMING_SCHEME=v240<br>  E: ID_NET_NAME_MAC=enxdca63218fba2<br>  E: ID_OUI_FROM_DATABASE=Raspberry Pi Trading Ltd<br>  E: ID_PATH=platform-fd580000.genet<br>  E: ID_PATH_TAG=platform-fd580000_genet<br>  E: ID_NET_DRIVER=bcmgenet<br>  E: ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link<br>  E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/eth0<br>  E: TAGS=:systemd:<br>  <br>  P: /devices/platform/scb/fd580000.genet/unimac-mdio.-19<br>  L: 0<br>  E: DEVPATH=/devices/platform/scb/fd580000.genet/unimac-mdio.-19<br>  E: SUBSYSTEM=platform<br>  E: DRIVER=unimac-mdio<br>  E: OF_NAME=mdio<br>  E: OF_FULLNAME=/scb/genet@7d580000/mdio@e14<br>  E: OF_COMPATIBLE_0=brcm,genet-mdio-v5<br>  E: OF_COMPATIBLE_N=1<br>  E: MODALIAS=of:NmdioT(null)Cbrcm,genet-mdio-v5<br>  <br>  P: /devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19<br>  L: 0<br>  E: DEVPATH=/devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19<br>  E: SUBSYSTEM=mdio_bus<br>  E: OF_NAME=mdio<br>  E: OF_FULLNAME=/scb/genet@7d580000/mdio@e14<br>  E: OF_COMPATIBLE_0=brcm,genet-mdio-v5<br>  E: OF_COMPATIBLE_N=1<br>  <br>  P: /devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19/unimac-mdio--19:01<br>  L: 0<br>  E: DEVPATH=/devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19/unimac-mdio--19:01<br>  E: SUBSYSTEM=mdio_bus<br>  E: DEVTYPE=PHY<br>  E: DRIVER=Broadcom BCM54213PE<br>  E: OF_NAME=genet-phy<br>  E: OF_FULLNAME=/scb/genet@7d580000/mdio@e14/genet-phy@0<br>  E: OF_COMPATIBLE_0=ethernet-phy-ieee802.3-c22<br>  E: OF_COMPATIBLE_N=1<br>  E: MODALIAS=of:Ngenet-phyT(null)Cethernet-phy-ieee802.3-c22<br></div><div><br></div><div><br></div><div><br></div><div>============================================</div><div><br></div><div>dmesg from linux kernel boot:<br></div><div><br></div><div>[    1.162846] libphy: Fixed MDIO Bus: probed<br>[    1.164307] bcmgenet fd580000.genet: failed to get enet clock<br>[    1.165288] bcmgenet fd580000.genet: GENET 5.0 EPHY: 0x0000<br>[    1.166247] bcmgenet fd580000.genet: failed to get enet-wol clock<br>[    1.167214] bcmgenet fd580000.genet: failed to get enet-eee clock<br>[    1.168122] bcmgenet: Skipping UMAC reset<br>[    1.169249] unimac-mdio unimac-mdio.-19: DMA mask not set<br>[    1.182328] libphy: bcmgenet MII bus: probed<br>[    1.207030] unimac-mdio unimac-mdio.-19: Broadcom UniMAC MDIO bus</div><div><br></div><div><br></div><div>[    2.788526] bcmgenet: Skipping UMAC reset<br>[    2.795765] bcmgenet fd580000.genet: configuring instance for external RGMII (no delay)<br>[    2.805920] bcmgenet fd580000.genet eth0: Link is Down</div><div><br></div><div> </div><div>  <br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Am Di., 19. Nov. 2019 um 18:53 Uhr schrieb Simon Glass <<a href="mailto:sjg@chromium.org" target="_blank">sjg@chromium.org</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
<br>
On Tue, 19 Nov 2019 at 02:09, Sascha Dewald <<a href="mailto:sascha.dewald@gmail.com" target="_blank">sascha.dewald@gmail.com</a>> wrote:<br>
><br>
> Hi Matthias,<br>
><br>
> yes, i network boot with the beta firmware, since a while.<br>
><br>
> Short Steps:<br>
> * take latest bootloader from ( <a href="http://github.com/raspberrypi/firmware/boot/" rel="noreferrer" target="_blank">github.com/raspberrypi/firmware/boot/</a> )<br>
><br>
> * patched the beta pieeprom & vl805 with the recovery.bin and bootconf.txt - ( <a href="http://github.com/raspberrypi/rpi-eeprom/boot/" rel="noreferrer" target="_blank">github.com/raspberrypi/rpi-eeprom/boot/</a> )<br>
><br>
> * in  bootconf.txt inside pieeprom i used BOOT_ORDER=0x12 - so that network boot was at first. ( <a href="https://github.com/raspberrypi/rpi-eeprom/blob/master/firmware/raspberry_pi4_network_boot_beta.md" rel="noreferrer" target="_blank">https://github.com/raspberrypi/rpi-eeprom/blob/master/firmware/raspberry_pi4_network_boot_beta.md</a> )<br>
><br>
><br>
> Yesterday i figured out, that it was possible to embed the initramfs into the kernel. Today i will try this, because my distribution has NFS as module for the root filesystem.<br>
> Would be nice if the rpi4 would accept the ramfsfile from the config.txt to load the initrd from tftp .. ;-)<br>
><br>
> i tried to add some more nic-id's inside broadcom.c, but with no success:  ( <a href="https://github.com/sd-hd/u-boot/blob/rpi4/drivers/net/phy/broadcom.c" rel="noreferrer" target="_blank">https://github.com/sd-hd/u-boot/blob/rpi4/drivers/net/phy/broadcom.c</a> )<br>
><br>
> The 64bit armstub with network enabled inside the assembler, seems to have no affect inside config.txt. ( <a href="https://github.com/raspberrypi/tools/blob/master/armstubs/armstub8.S" rel="noreferrer" target="_blank">https://github.com/raspberrypi/tools/blob/master/armstubs/armstub8.S</a> )<br>
><br>
> My experimental u-boot devicetree prints this below, but i don't know how to enable the devices under the "scb - simple bus"...<br>
<br>
+Stephen Warren<br>
<br>
It looks like no network driver is bound for that. What network device<br>
does it use?<br>
<br>
Regards,<br>
Simon<br>
<br>
<br>
<br>
><br>
> Maybe i can help testing for you ?<br>
><br>
> U-Boot> dm tree<br>
>  Class     Index  Probed  Driver                Name<br>
> -----------------------------------------------------------<br>
>  root          0  [ + ]   root_driver           root_driver<br>
>  simple_bus    0  [ + ]   generic_simple_bus    |-- soc<br>
>  pinctrl       0  [ + ]   bcm283x_pinctrl       |   |-- gpio@7e200000<br>
>  pinconfig     0  [   ]   pinconfig             |   |   |-- dpi_gpio0<br>
>  pinconfig     1  [   ]   pinconfig             |   |   |-- emmc_gpio22<br>
>  pinconfig     2  [   ]   pinconfig             |   |   |-- emmc_gpio34<br>
>  pinconfig     3  [   ]   pinconfig             |   |   |-- emmc_gpio48<br>
>  pinconfig     4  [   ]   pinconfig             |   |   |-- gpclk0_gpio4<br>
>  pinconfig     5  [   ]   pinconfig             |   |   |-- gpclk1_gpio5<br>
>  pinconfig     6  [   ]   pinconfig             |   |   |-- gpclk1_gpio42<br>
>  pinconfig     7  [   ]   pinconfig             |   |   |-- gpclk1_gpio44<br>
>  pinconfig     8  [   ]   pinconfig             |   |   |-- gpclk2_gpio6<br>
>  pinconfig     9  [   ]   pinconfig             |   |   |-- gpclk2_gpio43<br>
>  pinconfig    10  [   ]   pinconfig             |   |   |-- i2c0_gpio0<br>
>  pinconfig    11  [   ]   pinconfig             |   |   |-- i2c0_gpio28<br>
>  pinconfig    12  [   ]   pinconfig             |   |   |-- i2c0_gpio44<br>
>  pinconfig    13  [   ]   pinconfig             |   |   |-- i2c1_gpio2<br>
>  pinconfig    14  [   ]   pinconfig             |   |   |-- i2c1_gpio44<br>
>  pinconfig    15  [   ]   pinconfig             |   |   |-- jtag_gpio22<br>
>  pinconfig    16  [   ]   pinconfig             |   |   |-- pcm_gpio18<br>
>  pinconfig    17  [   ]   pinconfig             |   |   |-- pcm_gpio28<br>
>  pinconfig    18  [   ]   pinconfig             |   |   |-- pwm0_gpio12<br>
>  pinconfig    19  [   ]   pinconfig             |   |   |-- pwm0_gpio18<br>
>  pinconfig    20  [   ]   pinconfig             |   |   |-- pwm0_gpio40<br>
>  pinconfig    21  [   ]   pinconfig             |   |   |-- pwm1_gpio13<br>
>  pinconfig    22  [   ]   pinconfig             |   |   |-- pwm1_gpio19<br>
>  pinconfig    23  [   ]   pinconfig             |   |   |-- pwm1_gpio41<br>
>  pinconfig    24  [   ]   pinconfig             |   |   |-- pwm1_gpio45<br>
>  pinconfig    25  [   ]   pinconfig             |   |   |-- sdhost_gpio48<br>
>  pinconfig    26  [   ]   pinconfig             |   |   |-- spi0_gpio7<br>
>  pinconfig    27  [   ]   pinconfig             |   |   |-- spi0_gpio35<br>
>  pinconfig    28  [   ]   pinconfig             |   |   |-- spi1_gpio16<br>
>  pinconfig    29  [   ]   pinconfig             |   |   |-- spi2_gpio40<br>
>  pinconfig    30  [   ]   pinconfig             |   |   |-- uart0_gpio14<br>
>  pinconfig    31  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio16<br>
>  pinconfig    32  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio30<br>
>  pinconfig    33  [   ]   pinconfig             |   |   |-- uart0_gpio32<br>
>  pinconfig    34  [   ]   pinconfig             |   |   |-- uart0_gpio36<br>
>  pinconfig    35  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio38<br>
>  pinconfig    36  [   ]   pinconfig             |   |   |-- uart1_gpio14<br>
>  pinconfig    37  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio16<br>
>  pinconfig    38  [   ]   pinconfig             |   |   |-- uart1_gpio32<br>
>  pinconfig    39  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio30<br>
>  pinconfig    40  [   ]   pinconfig             |   |   |-- uart1_gpio40<br>
>  pinconfig    41  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio42<br>
>  pinconfig    42  [   ]   pinconfig             |   |   |-- gpclk0_gpio49<br>
>  pinconfig    43  [   ]   pinconfig             |   |   |-- gpclk1_gpio50<br>
>  pinconfig    44  [   ]   pinconfig             |   |   |-- gpclk2_gpio51<br>
>  pinconfig    45  [   ]   pinconfig             |   |   |-- i2c0_gpio46<br>
>  pinconfig    46  [   ]   pinconfig             |   |   |-- i2c1_gpio46<br>
>  pinconfig    47  [   ]   pinconfig             |   |   |-- i2c3_gpio2<br>
>  pinconfig    48  [   ]   pinconfig             |   |   |-- i2c3_gpio4<br>
>  pinconfig    49  [   ]   pinconfig             |   |   |-- i2c4_gpio6<br>
>  pinconfig    50  [   ]   pinconfig             |   |   |-- i2c4_gpio8<br>
>  pinconfig    51  [   ]   pinconfig             |   |   |-- i2c5_gpio10<br>
>  pinconfig    52  [   ]   pinconfig             |   |   |-- i2c5_gpio12<br>
>  pinconfig    53  [   ]   pinconfig             |   |   |-- i2c6_gpio0<br>
>  pinconfig    54  [   ]   pinconfig             |   |   |-- i2c6_gpio22<br>
>  pinconfig    55  [   ]   pinconfig             |   |   |-- i2c_slave_gpio8<br>
>  pinconfig    56  [   ]   pinconfig             |   |   |-- jtag_gpio48<br>
>  pinconfig    57  [   ]   pinconfig             |   |   |-- mii_gpio28<br>
>  pinconfig    58  [   ]   pinconfig             |   |   |-- mii_gpio36<br>
>  pinconfig    59  [   ]   pinconfig             |   |   |-- pcm_gpio50<br>
>  pinconfig    60  [   ]   pinconfig             |   |   |-- pwm0_gpio52<br>
>  pinconfig    61  [   ]   pinconfig             |   |   |-- pwm1_gpio53<br>
>  pinconfig    62  [   ]   pinconfig             |   |   |-- rgmii_gpio35<br>
>  pinconfig    63  [   ]   pinconfig             |   |   |-- rgmii_irq_gpio34<br>
>  pinconfig    64  [   ]   pinconfig             |   |   |-- rgmii_irq_gpio39<br>
>  pinconfig    65  [   ]   pinconfig             |   |   |-- rgmii_mdio_gpio28<br>
>  pinconfig    66  [   ]   pinconfig             |   |   |-- rgmii_mdio_gpio37<br>
>  pinconfig    67  [   ]   pinconfig             |   |   |-- spi0_gpio46<br>
>  pinconfig    68  [   ]   pinconfig             |   |   |-- spi2_gpio46<br>
>  pinconfig    69  [   ]   pinconfig             |   |   |-- spi3_gpio0<br>
>  pinconfig    70  [   ]   pinconfig             |   |   |-- spi4_gpio4<br>
>  pinconfig    71  [   ]   pinconfig             |   |   |-- spi5_gpio12<br>
>  pinconfig    72  [   ]   pinconfig             |   |   |-- spi6_gpio18<br>
>  pinconfig    73  [   ]   pinconfig             |   |   |-- uart2_gpio0<br>
>  pinconfig    74  [   ]   pinconfig             |   |   |-- uart2_ctsrts_gpio2<br>
>  pinconfig    75  [   ]   pinconfig             |   |   |-- uart3_gpio4<br>
>  pinconfig    76  [   ]   pinconfig             |   |   |-- uart3_ctsrts_gpio6<br>
>  pinconfig    77  [   ]   pinconfig             |   |   |-- uart4_gpio8<br>
>  pinconfig    78  [   ]   pinconfig             |   |   |-- uart4_ctsrts_gpio10<br>
>  pinconfig    79  [   ]   pinconfig             |   |   |-- uart5_gpio12<br>
>  pinconfig    80  [   ]   pinconfig             |   |   |-- uart5_ctsrts_gpio14<br>
>  pinconfig    81  [   ]   pinconfig             |   |   |-- dpi_18bit_gpio0<br>
>  pinconfig    82  [   ]   pinconfig             |   |   |-- gpioout<br>
>  pinconfig    83  [   ]   pinconfig             |   |   |-- alt0<br>
>  pinconfig    84  [   ]   pinconfig             |   |   |-- spi0_pins<br>
>  pinconfig    85  [   ]   pinconfig             |   |   |-- spi0_cs_pins<br>
>  pinconfig    86  [   ]   pinconfig             |   |   |-- spi3_pins<br>
>  pinconfig    87  [   ]   pinconfig             |   |   |-- spi3_cs_pins<br>
>  pinconfig    88  [   ]   pinconfig             |   |   |-- spi4_pins<br>
>  pinconfig    89  [   ]   pinconfig             |   |   |-- spi4_cs_pins<br>
>  pinconfig    90  [   ]   pinconfig             |   |   |-- spi5_pins<br>
>  pinconfig    91  [   ]   pinconfig             |   |   |-- spi5_cs_pins<br>
>  pinconfig    92  [   ]   pinconfig             |   |   |-- spi6_pins<br>
>  pinconfig    93  [   ]   pinconfig             |   |   |-- spi6_cs_pins<br>
>  pinconfig    94  [   ]   pinconfig             |   |   |-- i2c0<br>
>  pinconfig    95  [   ]   pinconfig             |   |   |-- i2c1<br>
>  pinconfig    96  [   ]   pinconfig             |   |   |-- i2c3<br>
>  pinconfig    97  [   ]   pinconfig             |   |   |-- i2c4<br>
>  pinconfig    98  [   ]   pinconfig             |   |   |-- i2c5<br>
>  pinconfig    99  [   ]   pinconfig             |   |   |-- i2c6<br>
>  pinconfig   100  [   ]   pinconfig             |   |   |-- i2s<br>
>  pinconfig   101  [ + ]   pinconfig             |   |   |-- sdio_pins<br>
>  pinconfig   102  [   ]   pinconfig             |   |   |-- bt_pins<br>
>  pinconfig   103  [   ]   pinconfig             |   |   |-- uart0_pins<br>
>  pinconfig   104  [ + ]   pinconfig             |   |   |-- uart1_pins<br>
>  pinconfig   105  [   ]   pinconfig             |   |   |-- uart2_pins<br>
>  pinconfig   106  [   ]   pinconfig             |   |   |-- uart3_pins<br>
>  pinconfig   107  [   ]   pinconfig             |   |   |-- uart4_pins<br>
>  pinconfig   108  [   ]   pinconfig             |   |   |-- uart5_pins<br>
>  pinconfig   109  [   ]   pinconfig             |   |   |-- audio_pins<br>
>  gpio          0  [   ]   gpio_bcm2835          |   |   `-- gpio_bcm2835<br>
>  serial        0  [   ]   bcm283x_pl011         |   |-- serial@7e201000<br>
>  serial        1  [ + ]   serial_bcm283x_mu     |   |-- serial@7e215040<br>
>  mmc           0  [ + ]   sdhci-bcm2835         |   |-- emmc2@7e340000<br>
>  blk           0  [ + ]   mmc_blk               |   |   `-- emmc2@7e340000.blk<br>
>  mmc           1  [ + ]   sdhci-bcm2835         |   |-- mmcnr@7e300000<br>
>  blk           1  [   ]   mmc_blk               |   |   `-- mmcnr@7e300000.blk<br>
>  video         0  [ + ]   bcm2835_video         |   `-- fb<br>
>  vidconsole    0  [ + ]   vidconsole0           |       `-- fb.vidconsole0<br>
>  simple_bus    1  [   ]   generic_simple_bus    |-- clocks<br>
>  clk           0  [   ]   fixed_rate_clock      |   |-- clock@3<br>
>  clk           1  [   ]   fixed_rate_clock      |   `-- clock@4<br>
>  simple_bus    2  [   ]   generic_simple_bus    |-- v3dbus<br>
>  simple_bus    3  [   ]   generic_simple_bus    |-- scb<br>
>  clk           2  [   ]   fixed_rate_clock      |-- clock@3<br>
>  clk           3  [   ]   fixed_rate_clock      `-- clock@4<br>
> U-Boot><br>
> PM_RSTS: 0x00001000<br>
> RPi: BOOTLOADER release VERSION:b6a7593d Nov 18 2019 11:06:57 BOOTMODE: 0x00000006 part: 0 BUILD_TIMESTAMP=1574075215 0xe56706c5 0x00c03111<br>
><br>
><br>
> Regards,<br>
> Sascha<br>
><br>
><br>
><br>
> Am Mo., 18. Nov. 2019 um 18:14 Uhr schrieb Matthias Brugger <<a href="mailto:mbrugger@suse.com" target="_blank">mbrugger@suse.com</a>>:<br>
>><br>
>> HI Sascha,<br>
>><br>
>> On 18/11/2019 10:24, Sascha Dewald wrote:<br>
>> > Hi Matthias,<br>
>> ><br>
>> > sorry for mention you directly.<br>
>> ><br>
>> > I successfully boot the raspberry pi 4 over network, but have problems to<br>
>> > load the initrd.img over tftp.<br>
>> ><br>
>><br>
>> You do that through the PXE boot from the FW, right?<br>
>><br>
>> > Do you know where i can get help, to enable scb & genet, so that u-boot<br>
>> > detect the network interface ?<br>
>> ><br>
>><br>
>> I know that there is someone working on the driver and we should expect a first<br>
>> working version before end of the year. I was just checking on that today :)<br>
>><br>
>> Regards,<br>
>> Matthias<br>
><br>
> _______________________________________________<br>
> U-Boot-Board-Maintainers mailing list<br>
> <a href="mailto:U-Boot-Board-Maintainers@lists.denx.de" target="_blank">U-Boot-Board-Maintainers@lists.denx.de</a><br>
> <a href="https://lists.denx.de/listinfo/u-boot-board-maintainers" rel="noreferrer" target="_blank">https://lists.denx.de/listinfo/u-boot-board-maintainers</a><br>
</blockquote></div>