[U-Boot-Board-Maintainers] Raspberry pi 4 - u-boot - genet / scb

Sascha Dewald sascha.dewald at gmail.com
Tue Nov 19 18:10:10 UTC 2019


Hi Simon,

it uses bcmgenet.

Below some information from "hwinfo" and "dmesg"


===================================

hwinfo :

Broadcom BCM54213PE:
/devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19/unimac-mdio--19:01

...


    platform device: name = fd580000.genet
    path = /devices/platform/scb/fd580000.genet
    type = "genet", modalias = "of:NgenetT(null)Cbrcm,genet-v5", driver =
"bcmgenet"
    is net: sf_eth_net = /sys/devices/platform/scb/fd580000.genet/net

...

  platform device: name = unimac-mdio.-19
    path = /devices/platform/scb/fd580000.genet/unimac-mdio.-19
    type = "mdio", modalias = "of:NmdioT(null)Cbrcm,genet-mdio-v5", driver
= "unimac-mdio"


  P: /devices/platform/scb/fd580000.genet
  L: 0
  E: DEVPATH=/devices/platform/scb/fd580000.genet
  E: SUBSYSTEM=platform
  E: DRIVER=bcmgenet
  E: OF_NAME=genet
  E: OF_FULLNAME=/scb/genet at 7d580000
  E: OF_COMPATIBLE_0=brcm,genet-v5
  E: OF_COMPATIBLE_N=1
  E: OF_ALIAS_0=ethernet0
  E: MODALIAS=of:NgenetT(null)Cbrcm,genet-v5

  P: /devices/platform/scb/fd580000.genet/net/eth0
  L: 0
  E: DEVPATH=/devices/platform/scb/fd580000.genet/net/eth0
  E: SUBSYSTEM=net
  E: INTERFACE=eth0
  E: IFINDEX=2
  E: USEC_INITIALIZED=11130122
  E: ID_MM_CANDIDATE=1
  E: net.ifnames=0
  E: ID_NET_NAMING_SCHEME=v240
  E: ID_NET_NAME_MAC=enxdca63218fba2
  E: ID_OUI_FROM_DATABASE=Raspberry Pi Trading Ltd
  E: ID_PATH=platform-fd580000.genet
  E: ID_PATH_TAG=platform-fd580000_genet
  E: ID_NET_DRIVER=bcmgenet
  E: ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link
  E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/eth0
  E: TAGS=:systemd:

  P: /devices/platform/scb/fd580000.genet/unimac-mdio.-19
  L: 0
  E: DEVPATH=/devices/platform/scb/fd580000.genet/unimac-mdio.-19
  E: SUBSYSTEM=platform
  E: DRIVER=unimac-mdio
  E: OF_NAME=mdio
  E: OF_FULLNAME=/scb/genet at 7d580000/mdio at e14
  E: OF_COMPATIBLE_0=brcm,genet-mdio-v5
  E: OF_COMPATIBLE_N=1
  E: MODALIAS=of:NmdioT(null)Cbrcm,genet-mdio-v5

  P:
/devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19
  L: 0
  E:
DEVPATH=/devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19
  E: SUBSYSTEM=mdio_bus
  E: OF_NAME=mdio
  E: OF_FULLNAME=/scb/genet at 7d580000/mdio at e14
  E: OF_COMPATIBLE_0=brcm,genet-mdio-v5
  E: OF_COMPATIBLE_N=1

  P:
/devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19/unimac-mdio--19:01
  L: 0
  E:
DEVPATH=/devices/platform/scb/fd580000.genet/unimac-mdio.-19/mdio_bus/unimac-mdio--19/unimac-mdio--19:01
  E: SUBSYSTEM=mdio_bus
  E: DEVTYPE=PHY
  E: DRIVER=Broadcom BCM54213PE
  E: OF_NAME=genet-phy
  E: OF_FULLNAME=/scb/genet at 7d580000/mdio at e14/genet-phy at 0
  E: OF_COMPATIBLE_0=ethernet-phy-ieee802.3-c22
  E: OF_COMPATIBLE_N=1
  E: MODALIAS=of:Ngenet-phyT(null)Cethernet-phy-ieee802.3-c22



============================================

dmesg from linux kernel boot:

[    1.162846] libphy: Fixed MDIO Bus: probed
[    1.164307] bcmgenet fd580000.genet: failed to get enet clock
[    1.165288] bcmgenet fd580000.genet: GENET 5.0 EPHY: 0x0000
[    1.166247] bcmgenet fd580000.genet: failed to get enet-wol clock
[    1.167214] bcmgenet fd580000.genet: failed to get enet-eee clock
[    1.168122] bcmgenet: Skipping UMAC reset
[    1.169249] unimac-mdio unimac-mdio.-19: DMA mask not set
[    1.182328] libphy: bcmgenet MII bus: probed
[    1.207030] unimac-mdio unimac-mdio.-19: Broadcom UniMAC MDIO bus


[    2.788526] bcmgenet: Skipping UMAC reset
[    2.795765] bcmgenet fd580000.genet: configuring instance for external
RGMII (no delay)
[    2.805920] bcmgenet fd580000.genet eth0: Link is Down




Am Di., 19. Nov. 2019 um 18:53 Uhr schrieb Simon Glass <sjg at chromium.org>:

> Hi,
>
> On Tue, 19 Nov 2019 at 02:09, Sascha Dewald <sascha.dewald at gmail.com>
> wrote:
> >
> > Hi Matthias,
> >
> > yes, i network boot with the beta firmware, since a while.
> >
> > Short Steps:
> > * take latest bootloader from ( github.com/raspberrypi/firmware/boot/ )
> >
> > * patched the beta pieeprom & vl805 with the recovery.bin and
> bootconf.txt - ( github.com/raspberrypi/rpi-eeprom/boot/ )
> >
> > * in  bootconf.txt inside pieeprom i used BOOT_ORDER=0x12 - so that
> network boot was at first. (
> https://github.com/raspberrypi/rpi-eeprom/blob/master/firmware/raspberry_pi4_network_boot_beta.md
> )
> >
> >
> > 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.
> > Would be nice if the rpi4 would accept the ramfsfile from the config.txt
> to load the initrd from tftp .. ;-)
> >
> > i tried to add some more nic-id's inside broadcom.c, but with no
> success:  (
> https://github.com/sd-hd/u-boot/blob/rpi4/drivers/net/phy/broadcom.c )
> >
> > The 64bit armstub with network enabled inside the assembler, seems to
> have no affect inside config.txt. (
> https://github.com/raspberrypi/tools/blob/master/armstubs/armstub8.S )
> >
> > My experimental u-boot devicetree prints this below, but i don't know
> how to enable the devices under the "scb - simple bus"...
>
> +Stephen Warren
>
> It looks like no network driver is bound for that. What network device
> does it use?
>
> Regards,
> Simon
>
>
>
> >
> > Maybe i can help testing for you ?
> >
> > U-Boot> dm tree
> >  Class     Index  Probed  Driver                Name
> > -----------------------------------------------------------
> >  root          0  [ + ]   root_driver           root_driver
> >  simple_bus    0  [ + ]   generic_simple_bus    |-- soc
> >  pinctrl       0  [ + ]   bcm283x_pinctrl       |   |-- gpio at 7e200000
> >  pinconfig     0  [   ]   pinconfig             |   |   |-- dpi_gpio0
> >  pinconfig     1  [   ]   pinconfig             |   |   |-- emmc_gpio22
> >  pinconfig     2  [   ]   pinconfig             |   |   |-- emmc_gpio34
> >  pinconfig     3  [   ]   pinconfig             |   |   |-- emmc_gpio48
> >  pinconfig     4  [   ]   pinconfig             |   |   |-- gpclk0_gpio4
> >  pinconfig     5  [   ]   pinconfig             |   |   |-- gpclk1_gpio5
> >  pinconfig     6  [   ]   pinconfig             |   |   |-- gpclk1_gpio42
> >  pinconfig     7  [   ]   pinconfig             |   |   |-- gpclk1_gpio44
> >  pinconfig     8  [   ]   pinconfig             |   |   |-- gpclk2_gpio6
> >  pinconfig     9  [   ]   pinconfig             |   |   |-- gpclk2_gpio43
> >  pinconfig    10  [   ]   pinconfig             |   |   |-- i2c0_gpio0
> >  pinconfig    11  [   ]   pinconfig             |   |   |-- i2c0_gpio28
> >  pinconfig    12  [   ]   pinconfig             |   |   |-- i2c0_gpio44
> >  pinconfig    13  [   ]   pinconfig             |   |   |-- i2c1_gpio2
> >  pinconfig    14  [   ]   pinconfig             |   |   |-- i2c1_gpio44
> >  pinconfig    15  [   ]   pinconfig             |   |   |-- jtag_gpio22
> >  pinconfig    16  [   ]   pinconfig             |   |   |-- pcm_gpio18
> >  pinconfig    17  [   ]   pinconfig             |   |   |-- pcm_gpio28
> >  pinconfig    18  [   ]   pinconfig             |   |   |-- pwm0_gpio12
> >  pinconfig    19  [   ]   pinconfig             |   |   |-- pwm0_gpio18
> >  pinconfig    20  [   ]   pinconfig             |   |   |-- pwm0_gpio40
> >  pinconfig    21  [   ]   pinconfig             |   |   |-- pwm1_gpio13
> >  pinconfig    22  [   ]   pinconfig             |   |   |-- pwm1_gpio19
> >  pinconfig    23  [   ]   pinconfig             |   |   |-- pwm1_gpio41
> >  pinconfig    24  [   ]   pinconfig             |   |   |-- pwm1_gpio45
> >  pinconfig    25  [   ]   pinconfig             |   |   |-- sdhost_gpio48
> >  pinconfig    26  [   ]   pinconfig             |   |   |-- spi0_gpio7
> >  pinconfig    27  [   ]   pinconfig             |   |   |-- spi0_gpio35
> >  pinconfig    28  [   ]   pinconfig             |   |   |-- spi1_gpio16
> >  pinconfig    29  [   ]   pinconfig             |   |   |-- spi2_gpio40
> >  pinconfig    30  [   ]   pinconfig             |   |   |-- uart0_gpio14
> >  pinconfig    31  [   ]   pinconfig             |   |   |--
> uart0_ctsrts_gpio16
> >  pinconfig    32  [   ]   pinconfig             |   |   |--
> uart0_ctsrts_gpio30
> >  pinconfig    33  [   ]   pinconfig             |   |   |-- uart0_gpio32
> >  pinconfig    34  [   ]   pinconfig             |   |   |-- uart0_gpio36
> >  pinconfig    35  [   ]   pinconfig             |   |   |--
> uart0_ctsrts_gpio38
> >  pinconfig    36  [   ]   pinconfig             |   |   |-- uart1_gpio14
> >  pinconfig    37  [   ]   pinconfig             |   |   |--
> uart1_ctsrts_gpio16
> >  pinconfig    38  [   ]   pinconfig             |   |   |-- uart1_gpio32
> >  pinconfig    39  [   ]   pinconfig             |   |   |--
> uart1_ctsrts_gpio30
> >  pinconfig    40  [   ]   pinconfig             |   |   |-- uart1_gpio40
> >  pinconfig    41  [   ]   pinconfig             |   |   |--
> uart1_ctsrts_gpio42
> >  pinconfig    42  [   ]   pinconfig             |   |   |-- gpclk0_gpio49
> >  pinconfig    43  [   ]   pinconfig             |   |   |-- gpclk1_gpio50
> >  pinconfig    44  [   ]   pinconfig             |   |   |-- gpclk2_gpio51
> >  pinconfig    45  [   ]   pinconfig             |   |   |-- i2c0_gpio46
> >  pinconfig    46  [   ]   pinconfig             |   |   |-- i2c1_gpio46
> >  pinconfig    47  [   ]   pinconfig             |   |   |-- i2c3_gpio2
> >  pinconfig    48  [   ]   pinconfig             |   |   |-- i2c3_gpio4
> >  pinconfig    49  [   ]   pinconfig             |   |   |-- i2c4_gpio6
> >  pinconfig    50  [   ]   pinconfig             |   |   |-- i2c4_gpio8
> >  pinconfig    51  [   ]   pinconfig             |   |   |-- i2c5_gpio10
> >  pinconfig    52  [   ]   pinconfig             |   |   |-- i2c5_gpio12
> >  pinconfig    53  [   ]   pinconfig             |   |   |-- i2c6_gpio0
> >  pinconfig    54  [   ]   pinconfig             |   |   |-- i2c6_gpio22
> >  pinconfig    55  [   ]   pinconfig             |   |   |--
> i2c_slave_gpio8
> >  pinconfig    56  [   ]   pinconfig             |   |   |-- jtag_gpio48
> >  pinconfig    57  [   ]   pinconfig             |   |   |-- mii_gpio28
> >  pinconfig    58  [   ]   pinconfig             |   |   |-- mii_gpio36
> >  pinconfig    59  [   ]   pinconfig             |   |   |-- pcm_gpio50
> >  pinconfig    60  [   ]   pinconfig             |   |   |-- pwm0_gpio52
> >  pinconfig    61  [   ]   pinconfig             |   |   |-- pwm1_gpio53
> >  pinconfig    62  [   ]   pinconfig             |   |   |-- rgmii_gpio35
> >  pinconfig    63  [   ]   pinconfig             |   |   |--
> rgmii_irq_gpio34
> >  pinconfig    64  [   ]   pinconfig             |   |   |--
> rgmii_irq_gpio39
> >  pinconfig    65  [   ]   pinconfig             |   |   |--
> rgmii_mdio_gpio28
> >  pinconfig    66  [   ]   pinconfig             |   |   |--
> rgmii_mdio_gpio37
> >  pinconfig    67  [   ]   pinconfig             |   |   |-- spi0_gpio46
> >  pinconfig    68  [   ]   pinconfig             |   |   |-- spi2_gpio46
> >  pinconfig    69  [   ]   pinconfig             |   |   |-- spi3_gpio0
> >  pinconfig    70  [   ]   pinconfig             |   |   |-- spi4_gpio4
> >  pinconfig    71  [   ]   pinconfig             |   |   |-- spi5_gpio12
> >  pinconfig    72  [   ]   pinconfig             |   |   |-- spi6_gpio18
> >  pinconfig    73  [   ]   pinconfig             |   |   |-- uart2_gpio0
> >  pinconfig    74  [   ]   pinconfig             |   |   |--
> uart2_ctsrts_gpio2
> >  pinconfig    75  [   ]   pinconfig             |   |   |-- uart3_gpio4
> >  pinconfig    76  [   ]   pinconfig             |   |   |--
> uart3_ctsrts_gpio6
> >  pinconfig    77  [   ]   pinconfig             |   |   |-- uart4_gpio8
> >  pinconfig    78  [   ]   pinconfig             |   |   |--
> uart4_ctsrts_gpio10
> >  pinconfig    79  [   ]   pinconfig             |   |   |-- uart5_gpio12
> >  pinconfig    80  [   ]   pinconfig             |   |   |--
> uart5_ctsrts_gpio14
> >  pinconfig    81  [   ]   pinconfig             |   |   |--
> dpi_18bit_gpio0
> >  pinconfig    82  [   ]   pinconfig             |   |   |-- gpioout
> >  pinconfig    83  [   ]   pinconfig             |   |   |-- alt0
> >  pinconfig    84  [   ]   pinconfig             |   |   |-- spi0_pins
> >  pinconfig    85  [   ]   pinconfig             |   |   |-- spi0_cs_pins
> >  pinconfig    86  [   ]   pinconfig             |   |   |-- spi3_pins
> >  pinconfig    87  [   ]   pinconfig             |   |   |-- spi3_cs_pins
> >  pinconfig    88  [   ]   pinconfig             |   |   |-- spi4_pins
> >  pinconfig    89  [   ]   pinconfig             |   |   |-- spi4_cs_pins
> >  pinconfig    90  [   ]   pinconfig             |   |   |-- spi5_pins
> >  pinconfig    91  [   ]   pinconfig             |   |   |-- spi5_cs_pins
> >  pinconfig    92  [   ]   pinconfig             |   |   |-- spi6_pins
> >  pinconfig    93  [   ]   pinconfig             |   |   |-- spi6_cs_pins
> >  pinconfig    94  [   ]   pinconfig             |   |   |-- i2c0
> >  pinconfig    95  [   ]   pinconfig             |   |   |-- i2c1
> >  pinconfig    96  [   ]   pinconfig             |   |   |-- i2c3
> >  pinconfig    97  [   ]   pinconfig             |   |   |-- i2c4
> >  pinconfig    98  [   ]   pinconfig             |   |   |-- i2c5
> >  pinconfig    99  [   ]   pinconfig             |   |   |-- i2c6
> >  pinconfig   100  [   ]   pinconfig             |   |   |-- i2s
> >  pinconfig   101  [ + ]   pinconfig             |   |   |-- sdio_pins
> >  pinconfig   102  [   ]   pinconfig             |   |   |-- bt_pins
> >  pinconfig   103  [   ]   pinconfig             |   |   |-- uart0_pins
> >  pinconfig   104  [ + ]   pinconfig             |   |   |-- uart1_pins
> >  pinconfig   105  [   ]   pinconfig             |   |   |-- uart2_pins
> >  pinconfig   106  [   ]   pinconfig             |   |   |-- uart3_pins
> >  pinconfig   107  [   ]   pinconfig             |   |   |-- uart4_pins
> >  pinconfig   108  [   ]   pinconfig             |   |   |-- uart5_pins
> >  pinconfig   109  [   ]   pinconfig             |   |   |-- audio_pins
> >  gpio          0  [   ]   gpio_bcm2835          |   |   `-- gpio_bcm2835
> >  serial        0  [   ]   bcm283x_pl011         |   |-- serial at 7e201000
> >  serial        1  [ + ]   serial_bcm283x_mu     |   |-- serial at 7e215040
> >  mmc           0  [ + ]   sdhci-bcm2835         |   |-- emmc2 at 7e340000
> >  blk           0  [ + ]   mmc_blk               |   |   `--
> emmc2 at 7e340000.blk
> >  mmc           1  [ + ]   sdhci-bcm2835         |   |-- mmcnr at 7e300000
> >  blk           1  [   ]   mmc_blk               |   |   `--
> mmcnr at 7e300000.blk
> >  video         0  [ + ]   bcm2835_video         |   `-- fb
> >  vidconsole    0  [ + ]   vidconsole0           |       `--
> fb.vidconsole0
> >  simple_bus    1  [   ]   generic_simple_bus    |-- clocks
> >  clk           0  [   ]   fixed_rate_clock      |   |-- clock at 3
> >  clk           1  [   ]   fixed_rate_clock      |   `-- clock at 4
> >  simple_bus    2  [   ]   generic_simple_bus    |-- v3dbus
> >  simple_bus    3  [   ]   generic_simple_bus    |-- scb
> >  clk           2  [   ]   fixed_rate_clock      |-- clock at 3
> >  clk           3  [   ]   fixed_rate_clock      `-- clock at 4
> > U-Boot>
> > PM_RSTS: 0x00001000
> > RPi: BOOTLOADER release VERSION:b6a7593d Nov 18 2019 11:06:57 BOOTMODE:
> 0x00000006 part: 0 BUILD_TIMESTAMP=1574075215 0xe56706c5 0x00c03111
> >
> >
> > Regards,
> > Sascha
> >
> >
> >
> > Am Mo., 18. Nov. 2019 um 18:14 Uhr schrieb Matthias Brugger <
> mbrugger at suse.com>:
> >>
> >> HI Sascha,
> >>
> >> On 18/11/2019 10:24, Sascha Dewald wrote:
> >> > Hi Matthias,
> >> >
> >> > sorry for mention you directly.
> >> >
> >> > I successfully boot the raspberry pi 4 over network, but have
> problems to
> >> > load the initrd.img over tftp.
> >> >
> >>
> >> You do that through the PXE boot from the FW, right?
> >>
> >> > Do you know where i can get help, to enable scb & genet, so that
> u-boot
> >> > detect the network interface ?
> >> >
> >>
> >> I know that there is someone working on the driver and we should expect
> a first
> >> working version before end of the year. I was just checking on that
> today :)
> >>
> >> Regards,
> >> Matthias
> >
> > _______________________________________________
> > U-Boot-Board-Maintainers mailing list
> > U-Boot-Board-Maintainers at lists.denx.de
> > https://lists.denx.de/listinfo/u-boot-board-maintainers
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.denx.de/pipermail/u-boot-board-maintainers/attachments/20191119/380ede67/attachment-0001.html>


More information about the U-Boot-Board-Maintainers mailing list