[PATCH v4] dm: uclass: don't assign aliased seq numbers

Simon Glass sjg at chromium.org
Wed Apr 15 21:22:33 CEST 2020


Hi Michael,

On Wed, 15 Apr 2020 at 09:22, Michael Walle <michael at walle.cc> wrote:
>
> Hi Simon,
>
> Am 2020-04-15 15:56, schrieb Simon Glass:
> > +Tom
> >
> > Hi,
> >
> > On Sat, 14 Mar 2020 at 14:33, <sjg at google.com> wrote:
> >>
> >> On 03. 03. 20 8:47, Michael Walle wrote:
> >> > If there are aliases for an uclass, set the base for the "dynamically"
> >> > allocated numbers next to the highest alias.
> >> >
> >> > Please note, that this might lead to holes in the sequences, depending
> >> > on the device tree. For example if there is only an alias "ethernet1",
> >> > the next device seq number would be 2.
> >> >
> >> > In particular this fixes a problem with boards which are using ethernet
> >> > aliases but also might have network add-in cards like the E1000. If the
> >> > board is started with the add-in card and depending on the order of the
> >> > drivers, the E1000 might occupy the first ethernet device and mess up
> >> > all the hardware addresses, because the devices are now shifted by one.
> >> >
> >> > Also adapt the test cases to the new handling and add test cases
> >> > checking the holes in the seq numbers.
> >> >
> >> > Signed-off-by: Michael Walle <michael at walle.cc>
> >> > Reviewed-by: Alex Marginean <alexandru.marginean at nxp.com>
> >> > Tested-by: Alex Marginean <alexandru.marginean at nxp.com>
> >> > Acked-by: Vladimir Oltean <olteanv at gmail.com>
> >> > Reviewed-by: Simon Glass <sjg at chromium.org>
> >> > ---
> >> > changes since v3:
> >> >  - dev_read_alias_highest_id() is only available if CONFIG_OF_CONTROL is
> >> >    set. Thus added an additional condition "CONFIG_IS_ENABLED(OF_CONTROL)",
> >> >    thanks Simon.
> >> >
> >> > changes since v2:
> >> >  - adapt/new test cases, thanks Simon
> >> >
> >> > changes since v1:
> >> >  - move notice about superfluous commits from commit message to this
> >> >    section.
> >> >  - fix the comment style
> >> >
> >> >  arch/sandbox/dts/test.dts |  4 ++--
> >> >  drivers/core/uclass.c     | 21 +++++++++++++++------
> >> >  include/configs/sandbox.h |  6 +++---
> >> >  test/dm/eth.c             | 14 +++++++-------
> >> >  test/dm/test-fdt.c        | 22 +++++++++++++++++-----
> >> >  5 files changed, 44 insertions(+), 23 deletions(-)
> >> >
> >> Applied to u-boot-dm/next, thanks!
> >
> > Sadly, after applying this was found to break rpi_3. Due to some
> > still-pending patches mine doesn't boot anyway so I didn't notice.
> >
> > The tbot trace is below. The first is the new u-boot-dm/master with
> > two rpi patches, the second is the same with just your patch added.
> > Ethernet seems to go away.
>
> could you dump "dm tree" and "dm uclass" in both cases?
>
> I've had a look at the device tree and there seems to be one ethernet
> alias to the corresponding USB LAN device. I can only imagine that this
> alias doesn't match (for whatever reason) and as a second problem, the
> networking doesn't find a device if there is only a ethernet1.
>

Yes please see below (first one is without your patch).

do-try-int.sh rpi3 HEAD

Checking revision eff8ae8810da44bbbad71e617ea80abc7d7cde45
tbot starting ...
├─Parameters:
│     rev        = 'eff8ae8810da44bbbad71e617ea80abc7d7cde45'
│     clean      = True
├─Calling uboot_checkout ...
│   ├─Builder: rpi_3
│   └─Done. (1.002s)
├─────────────────────────────────────────
└─SUCCESS (1.284s)
tbot starting ...
├─Parameters:
│     clean      = False
├─Calling uboot_build_and_flash ...
│   ├─POWERON (Raspberry Pi 3b)
│   ├─Calling uboot_build ...
│   │   ├─Calling uboot_checkout ...
│   │   │   ├─Builder: rpi_3
│   │   │   └─Done. (0.127s)
│   │   ├─Configuring build ...
│   │   ├─Calling uboot_make ...
│   │   │   └─Done. (13.117s)
│   │   └─Done. (15.603s)
│   ├─Calling uboot_flash ...
│   │   ├─Calling copy ...
│   │   │   └─Done. (0.004s)
│   │   └─Done. (4.412s)
│   ├─POWEROFF (Raspberry Pi 3b)
│   └─Done. (20.975s)
├─────────────────────────────────────────
└─SUCCESS (21.152s)
tbot starting ...
├─Calling interactive_board ...
│   ├─POWERON (Raspberry Pi 3b)
│   ├─Entering interactive shell (CTRL+D to exit) ...


U-Boot 2020.04-00305-geff8ae8810 (Apr 15 2020 - 13:15:29 -0600)

DRAM:  992 MiB
RPI 3 Model B (0xa22082)
MMC:   mmc at 7e202000: 0, sdhci at 7e300000: 1
Loading Environment from FAT... *** Warning - bad CRC, using default environment

In:    serial
Out:   vidconsole
Err:   vidconsole
Net:   No ethernet found.
starting USB...
Bus usb at 7e980000: scanning bus usb at 7e980000 for devices... Timeout
poll on interrupt endpoint
Failed to get keyboard state from device 0c40:8000
4 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
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             |   |   |-- i2c_slave_gpio18
 pinconfig    16  [   ]   pinconfig             |   |   |-- jtag_gpio4
 pinconfig    17  [   ]   pinconfig             |   |   |-- jtag_gpio22
 pinconfig    18  [   ]   pinconfig             |   |   |-- pcm_gpio18
 pinconfig    19  [   ]   pinconfig             |   |   |-- pcm_gpio28
 pinconfig    20  [   ]   pinconfig             |   |   |-- pwm0_gpio12
 pinconfig    21  [   ]   pinconfig             |   |   |-- pwm0_gpio18
 pinconfig    22  [   ]   pinconfig             |   |   |-- pwm0_gpio40
 pinconfig    23  [   ]   pinconfig             |   |   |-- pwm1_gpio13
 pinconfig    24  [   ]   pinconfig             |   |   |-- pwm1_gpio19
 pinconfig    25  [   ]   pinconfig             |   |   |-- pwm1_gpio41
 pinconfig    26  [   ]   pinconfig             |   |   |-- pwm1_gpio45
 pinconfig    27  [ + ]   pinconfig             |   |   |-- sdhost_gpio48
 pinconfig    28  [   ]   pinconfig             |   |   |-- spi0_gpio7
 pinconfig    29  [   ]   pinconfig             |   |   |-- spi0_gpio35
 pinconfig    30  [   ]   pinconfig             |   |   |-- spi1_gpio16
 pinconfig    31  [   ]   pinconfig             |   |   |-- spi2_gpio40
 pinconfig    32  [   ]   pinconfig             |   |   |-- uart0_gpio14
 pinconfig    33  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio16
 pinconfig    34  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio30
 pinconfig    35  [   ]   pinconfig             |   |   |-- uart0_gpio32
 pinconfig    36  [   ]   pinconfig             |   |   |-- uart0_gpio36
 pinconfig    37  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio38
 pinconfig    38  [ + ]   pinconfig             |   |   |-- uart1_gpio14
 pinconfig    39  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio16
 pinconfig    40  [   ]   pinconfig             |   |   |-- uart1_gpio32
 pinconfig    41  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio30
 pinconfig    42  [   ]   pinconfig             |   |   |-- uart1_gpio40
 pinconfig    43  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio42
 pinconfig    44  [   ]   pinconfig             |   |   |-- gpioout
 pinconfig    45  [   ]   pinconfig             |   |   |-- alt0
 gpio          0  [   ]   gpio_bcm2835          |   |   `-- gpio_bcm2835
 serial        0  [   ]   bcm283x_pl011         |   |-- serial at 7e201000
 mmc           0  [ + ]   bcm2835-sdhost        |   |-- mmc at 7e202000
 blk           0  [ + ]   mmc_blk               |   |   `-- mmc at 7e202000.blk
 serial        1  [ + ]   serial_bcm283x_mu     |   |-- serial at 7e215040
 mmc           1  [ + ]   sdhci-bcm2835         |   |-- sdhci at 7e300000
 blk           1  [   ]   mmc_blk               |   |   `-- sdhci at 7e300000.blk
 video         0  [ + ]   bcm2835_video         |   |-- hdmi at 7e902000
 vidconsole    0  [ + ]   vidconsole0           |   |   `--
hdmi at 7e902000.vidconsole0
 usb           0  [ + ]   dwc2_usb              |   |-- usb at 7e980000
 usb_hub       0  [ + ]   usb_hub               |   |   `-- usb_hub
 usb_hub       1  [ + ]   usb_hub               |   |       `-- usb_hub
 eth           0  [ + ]   smsc95xx_eth          |   |           |-- smsc95xx_eth
 usb_dev_ge    0  [ + ]   usb_dev_generic_drv   |   |           `--
generic_bus_0_dev_4
 simple_bus    1  [   ]   generic_simple_bus    |   `-- firmware
 simple_bus    2  [   ]   generic_simple_bus    `-- clocks
U-Boot> dm uclass
uclass 0: root
0   * root_driver @ 3db67028, seq 0, (req -1)

uclass 20: blk
0   * mmc at 7e202000.blk @ 3db683e0, seq 0, (req -1)
1     sdhci at 7e300000.blk @ 3db686c8

EFI: Initializing UCLASS_EFI
uclass 30: efi
uclass 31: eth
0   * smsc95xx_eth @ 3db69ac0, seq 0, (req -1)

uclass 34: gpio
0     gpio_bcm2835 @ 3db68ac0

uclass 43: keyboard
uclass 47: usb_mass_storage
uclass 51: mmc
0   * mmc at 7e202000 @ 3db68220, seq 0, (req -1)
1   * sdhci at 7e300000 @ 3db68528, seq 1, (req -1)

uclass 54: nop
uclass 58: panel
uclass 59: backlight
uclass 65: pinconfig
0     dpi_gpio0 @ 3db671a0
1     emmc_gpio22 @ 3db671f8
2   * emmc_gpio34 @ 3db67250, seq 2, (req -1)
3     emmc_gpio48 @ 3db672a8
4     gpclk0_gpio4 @ 3db67300
5     gpclk1_gpio5 @ 3db67358
6     gpclk1_gpio42 @ 3db673b0
7     gpclk1_gpio44 @ 3db67408
8     gpclk2_gpio6 @ 3db67460
9     gpclk2_gpio43 @ 3db674b8
10    i2c0_gpio0 @ 3db67510
11    i2c0_gpio28 @ 3db67568
12    i2c0_gpio44 @ 3db675c0
13    i2c1_gpio2 @ 3db67618
14    i2c1_gpio44 @ 3db67670
15    i2c_slave_gpio18 @ 3db676c8
16    jtag_gpio4 @ 3db67720
17    jtag_gpio22 @ 3db67778
18    pcm_gpio18 @ 3db677d0
19    pcm_gpio28 @ 3db67828
20    pwm0_gpio12 @ 3db67880
21    pwm0_gpio18 @ 3db678d8
22    pwm0_gpio40 @ 3db67930
23    pwm1_gpio13 @ 3db67988
24    pwm1_gpio19 @ 3db679e0
25    pwm1_gpio41 @ 3db67a38
26    pwm1_gpio45 @ 3db67a90
27  * sdhost_gpio48 @ 3db67ae8, seq 1, (req -1)
28    spi0_gpio7 @ 3db67b40
29    spi0_gpio35 @ 3db67b98
30    spi1_gpio16 @ 3db67bf0
31    spi2_gpio40 @ 3db67c48
32    uart0_gpio14 @ 3db67ca0
33    uart0_ctsrts_gpio16 @ 3db67cf8
34    uart0_ctsrts_gpio30 @ 3db67d50
35    uart0_gpio32 @ 3db67da8
36    uart0_gpio36 @ 3db67e00
37    uart0_ctsrts_gpio38 @ 3db67e58
38  * uart1_gpio14 @ 3db67eb0, seq 0, (req -1)
39    uart1_ctsrts_gpio16 @ 3db67f08
40    uart1_gpio32 @ 3db67f60
41    uart1_ctsrts_gpio30 @ 3db67fb8
42    uart1_gpio40 @ 3db68010
43    uart1_ctsrts_gpio42 @ 3db68068
44    gpioout @ 3db680c0
45    alt0 @ 3db68118

uclass 66: pinctrl
0   * gpio at 7e200000 @ 3db67128, seq 0, (req -1)

uclass 78: serial
0     serial at 7e201000 @ 3db68190, seq -1, (req 0)
1   * serial at 7e215040 @ 3db684c0, seq 1, (req 1)

uclass 79: simple_bus
0   * soc @ 3db670a0, seq 0, (req -1)
1     firmware @ 3db688b8
2     clocks @ 3db68920

uclass 93: usb
0   * usb at 7e980000 @ 3db68860, seq 0, (req -1)

uclass 94: usb_dev_generic
0   * generic_bus_0_dev_4 @ 3db6f728, seq 0, (req -1)

uclass 95: usb_hub
0   * usb_hub @ 3db79290, seq 0, (req -1)
1   * usb_hub @ 3db79cc8, seq 1, (req -1)

uclass 97: video
0   * hdmi at 7e902000 @ 3db687c8, seq 0, (req -1)

uclass 99: vidconsole0
0   * hdmi at 7e902000.vidconsole0 @ 3db6df38, seq 0, (req -1)

U-Boot>
│   ├─POWEROFF (Raspberry Pi 3b)
│   └─Done. (18.473s)
├─────────────────────────────────────────
└─SUCCESS (18.626s)
ellesmere:~/u$ rc
Successfully rebased and updated refs/heads/dm-push.
ellesmere:~/u$ do-try-int.sh rpi3 HEAD

Checking revision dd18fbdf7ff915672fb4933a1f82a78f7b484d24
tbot starting ...
├─Parameters:
│     rev        = 'dd18fbdf7ff915672fb4933a1f82a78f7b484d24'
│     clean      = True
├─Calling uboot_checkout ...
│   ├─Builder: rpi_3
│   └─Done. (1.053s)
├─────────────────────────────────────────
└─SUCCESS (1.240s)
tbot starting ...
├─Parameters:
│     clean      = False
├─Calling uboot_build_and_flash ...
│   ├─POWERON (Raspberry Pi 3b)
│   ├─Calling uboot_build ...
│   │   ├─Calling uboot_checkout ...
│   │   │   ├─Builder: rpi_3
│   │   │   └─Done. (0.118s)
│   │   ├─Configuring build ...
│   │   ├─Calling uboot_make ...
│   │   │   └─Done. (12.080s)
│   │   └─Done. (14.524s)
│   ├─Calling uboot_flash ...
│   │   ├─Calling copy ...
│   │   │   └─Done. (0.017s)
│   │   └─Done. (4.399s)
│   ├─POWEROFF (Raspberry Pi 3b)
│   └─Done. (19.826s)
├─────────────────────────────────────────
└─SUCCESS (20.009s)
tbot starting ...
├─Calling interactive_board ...
│   ├─POWERON (Raspberry Pi 3b)
│   ├─Entering interactive shell (CTRL+D to exit) ...


U-Boot 2020.04-00306-gdd18fbdf7f (Apr 15 2020 - 13:16:20 -0600)

DRAM:  992 MiB
RPI 3 Model B (0xa22082)
MMC:   mmc at 7e202000: 0, sdhci at 7e300000: 1
Loading Environment from FAT... *** Warning - bad CRC, using default environment

In:    serial
Out:   vidconsole
Err:   vidconsole
Net:   No ethernet found.
starting USB...
Bus usb at 7e980000: scanning bus usb at 7e980000 for devices...
Error: smsc95xx_eth address not set.
Timeout poll on interrupt endpoint
Failed to get keyboard state from device 0c40:8000
3 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
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             |   |   |-- i2c_slave_gpio18
 pinconfig    16  [   ]   pinconfig             |   |   |-- jtag_gpio4
 pinconfig    17  [   ]   pinconfig             |   |   |-- jtag_gpio22
 pinconfig    18  [   ]   pinconfig             |   |   |-- pcm_gpio18
 pinconfig    19  [   ]   pinconfig             |   |   |-- pcm_gpio28
 pinconfig    20  [   ]   pinconfig             |   |   |-- pwm0_gpio12
 pinconfig    21  [   ]   pinconfig             |   |   |-- pwm0_gpio18
 pinconfig    22  [   ]   pinconfig             |   |   |-- pwm0_gpio40
 pinconfig    23  [   ]   pinconfig             |   |   |-- pwm1_gpio13
 pinconfig    24  [   ]   pinconfig             |   |   |-- pwm1_gpio19
 pinconfig    25  [   ]   pinconfig             |   |   |-- pwm1_gpio41
 pinconfig    26  [   ]   pinconfig             |   |   |-- pwm1_gpio45
 pinconfig    27  [ + ]   pinconfig             |   |   |-- sdhost_gpio48
 pinconfig    28  [   ]   pinconfig             |   |   |-- spi0_gpio7
 pinconfig    29  [   ]   pinconfig             |   |   |-- spi0_gpio35
 pinconfig    30  [   ]   pinconfig             |   |   |-- spi1_gpio16
 pinconfig    31  [   ]   pinconfig             |   |   |-- spi2_gpio40
 pinconfig    32  [   ]   pinconfig             |   |   |-- uart0_gpio14
 pinconfig    33  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio16
 pinconfig    34  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio30
 pinconfig    35  [   ]   pinconfig             |   |   |-- uart0_gpio32
 pinconfig    36  [   ]   pinconfig             |   |   |-- uart0_gpio36
 pinconfig    37  [   ]   pinconfig             |   |   |-- uart0_ctsrts_gpio38
 pinconfig    38  [ + ]   pinconfig             |   |   |-- uart1_gpio14
 pinconfig    39  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio16
 pinconfig    40  [   ]   pinconfig             |   |   |-- uart1_gpio32
 pinconfig    41  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio30
 pinconfig    42  [   ]   pinconfig             |   |   |-- uart1_gpio40
 pinconfig    43  [   ]   pinconfig             |   |   |-- uart1_ctsrts_gpio42
 pinconfig    44  [   ]   pinconfig             |   |   |-- gpioout
 pinconfig    45  [   ]   pinconfig             |   |   |-- alt0
 gpio          0  [   ]   gpio_bcm2835          |   |   `-- gpio_bcm2835
 serial        0  [   ]   bcm283x_pl011         |   |-- serial at 7e201000
 mmc           0  [ + ]   bcm2835-sdhost        |   |-- mmc at 7e202000
 blk           0  [ + ]   mmc_blk               |   |   `-- mmc at 7e202000.blk
 serial        1  [ + ]   serial_bcm283x_mu     |   |-- serial at 7e215040
 mmc           1  [ + ]   sdhci-bcm2835         |   |-- sdhci at 7e300000
 blk           1  [   ]   mmc_blk               |   |   `-- sdhci at 7e300000.blk
 video         0  [ + ]   bcm2835_video         |   |-- hdmi at 7e902000
 vidconsole    0  [ + ]   vidconsole0           |   |   `--
hdmi at 7e902000.vidconsole0
 usb           0  [ + ]   dwc2_usb              |   |-- usb at 7e980000
 usb_hub       0  [ + ]   usb_hub               |   |   `-- usb_hub
 usb_hub       1  [ + ]   usb_hub               |   |       `-- usb_hub
 usb_dev_ge    0  [ + ]   usb_dev_generic_drv   |   |           `--
generic_bus_0_dev_3
 simple_bus    1  [   ]   generic_simple_bus    |   `-- firmware
 simple_bus    2  [   ]   generic_simple_bus    `-- clocks
U-Boot> dm ucl
uclass 0: root
0   * root_driver @ 3db67028, seq 0, (req -1)

uclass 20: blk
0   * mmc at 7e202000.blk @ 3db683e0, seq 0, (req -1)
1     sdhci at 7e300000.blk @ 3db686c8

EFI: Initializing UCLASS_EFI
uclass 30: efi
uclass 31: eth
uclass 34: gpio
0     gpio_bcm2835 @ 3db68ac0

uclass 43: keyboard
uclass 47: usb_mass_storage
uclass 51: mmc
0   * mmc at 7e202000 @ 3db68220, seq 0, (req -1)
1   * sdhci at 7e300000 @ 3db68528, seq 1, (req -1)

uclass 54: nop
uclass 58: panel
uclass 59: backlight
uclass 65: pinconfig
0     dpi_gpio0 @ 3db671a0
1     emmc_gpio22 @ 3db671f8
2   * emmc_gpio34 @ 3db67250, seq 2, (req -1)
3     emmc_gpio48 @ 3db672a8
4     gpclk0_gpio4 @ 3db67300
5     gpclk1_gpio5 @ 3db67358
6     gpclk1_gpio42 @ 3db673b0
7     gpclk1_gpio44 @ 3db67408
8     gpclk2_gpio6 @ 3db67460
9     gpclk2_gpio43 @ 3db674b8
10    i2c0_gpio0 @ 3db67510
11    i2c0_gpio28 @ 3db67568
12    i2c0_gpio44 @ 3db675c0
13    i2c1_gpio2 @ 3db67618
14    i2c1_gpio44 @ 3db67670
15    i2c_slave_gpio18 @ 3db676c8
16    jtag_gpio4 @ 3db67720
17    jtag_gpio22 @ 3db67778
18    pcm_gpio18 @ 3db677d0
19    pcm_gpio28 @ 3db67828
20    pwm0_gpio12 @ 3db67880
21    pwm0_gpio18 @ 3db678d8
22    pwm0_gpio40 @ 3db67930
23    pwm1_gpio13 @ 3db67988
24    pwm1_gpio19 @ 3db679e0
25    pwm1_gpio41 @ 3db67a38
26    pwm1_gpio45 @ 3db67a90
27  * sdhost_gpio48 @ 3db67ae8, seq 1, (req -1)
28    spi0_gpio7 @ 3db67b40
29    spi0_gpio35 @ 3db67b98
30    spi1_gpio16 @ 3db67bf0
31    spi2_gpio40 @ 3db67c48
32    uart0_gpio14 @ 3db67ca0
33    uart0_ctsrts_gpio16 @ 3db67cf8
34    uart0_ctsrts_gpio30 @ 3db67d50
35    uart0_gpio32 @ 3db67da8
36    uart0_gpio36 @ 3db67e00
37    uart0_ctsrts_gpio38 @ 3db67e58
38  * uart1_gpio14 @ 3db67eb0, seq 0, (req -1)
39    uart1_ctsrts_gpio16 @ 3db67f08
40    uart1_gpio32 @ 3db67f60
41    uart1_ctsrts_gpio30 @ 3db67fb8
42    uart1_gpio40 @ 3db68010
43    uart1_ctsrts_gpio42 @ 3db68068
44    gpioout @ 3db680c0
45    alt0 @ 3db68118

uclass 66: pinctrl
0   * gpio at 7e200000 @ 3db67128, seq 0, (req -1)

uclass 78: serial
0     serial at 7e201000 @ 3db68190, seq -1, (req 0)
1   * serial at 7e215040 @ 3db684c0, seq 1, (req 1)

uclass 79: simple_bus
0   * soc @ 3db670a0, seq 0, (req -1)
1     firmware @ 3db688b8
2     clocks @ 3db68920

uclass 93: usb
0   * usb at 7e980000 @ 3db68860, seq 0, (req -1)

uclass 94: usb_dev_generic
0   * generic_bus_0_dev_3 @ 3db6f728, seq 0, (req -1)

uclass 95: usb_hub
0   * usb_hub @ 3db79290, seq 0, (req -1)
1   * usb_hub @ 3db79cc8, seq 1, (req -1)

uclass 97: video
0   * hdmi at 7e902000 @ 3db687c8, seq 0, (req -1)

uclass 99: vidconsole0
0   * hdmi at 7e902000.vidconsole0 @ 3db6df38, seq 0, (req -1)

U-Boot>
│   ├─POWEROFF (Raspberry Pi 3b)
│   └─Done. (16.027s)
├─────────────────────────────────────────
└─SUCCESS (16.192s)

Regards,
Simon


More information about the U-Boot mailing list