dm driver probe and dm question
Heinrich Schuchardt
xypron.glpk at gmx.de
Sat Feb 26 08:31:53 CET 2022
On 2/26/22 02:51, Tim Harvey wrote:
> Greetings,
>
> I've got an octeontx board which uses driver model
> (CONFIG_DM/CONFIG_DM_I2C) but I find that the 'i2c_octeon' driver does
> not probe automatically on boot until I do something like an 'i2c dev
> 0 && i2c probe'.
>
> What would cause the i2c_octeon driver to not automatically probe?
It is the general design of U-Boot's driver model to use late probing.
This reduces the boot time.
Cf.
https://u-boot.readthedocs.io/en/latest/develop/driver-model/design.html#driver-lifecycle
Best regards
Heinrich
>
> Here is a dm tree of the board:
> Marvell> dm tree
> Class Index Probed Driver Name
> -----------------------------------------------------------
> root 0 [ + ] root_driver root_driver
> rsa_mod_ex 0 [ ] mod_exp_sw |-- mod_exp_sw
> firmware 0 [ ] psci |-- psci
> regulator 0 [ + ] regulator_fixed |-- mmc_supply_3v3
> simple_bus 0 [ + ] simple_bus `-- soc at 0
> clk 0 [ + ] fixed_clock |-- refclkuaa
> clk 1 [ + ] fixed_clock |-- sclk
> clk 2 [ ] fixed_clock |-- can20m
> serial 0 [ + ] serial_pl01x |-- serial at 87e028000000
> serial 1 [ ] serial_pl01x |-- serial at 87e029000000
> serial 2 [ ] serial_pl01x |-- serial at 87e02a000000
> serial 3 [ ] serial_pl01x |-- serial at 87e02b000000
> watchdog 0 [ + ] sbsa_gwdt |-- watch-dog at 8440000a0000
> pci 0 [ + ] pci_octeontx `-- pci at 848000000000
> pci 1 [ + ] pci_bridge_drv |-- mrml-bridge0 at 1,0
> misc 0 [ + ] octeontx_smi | |-- mdio-nexus at 1,3
> misc 1 [ + ] octeontx_hsmmc_host | |-- mmc at 1,4
> mmc 0 [ + ] octeontx_hsmmc_slot | | `--
> octeontx-mmc0
> blk 0 [ + ] mmc_blk | |
> `-- octeontx-mmc0.blk
> i2c 0 [ ] i2c_octeon | |-- i2c at 9,0
> misc 2 [ ] gsc | | `-- gsc at 20
> i2c 1 [ ] i2c_octeon | |-- i2c at 9,1
> pci_generi 5 [ ] pci_generic_drv | |-- pci_1:0.0
> pci_generi 6 [ ] pci_generic_drv | |-- pci_1:0.1
> pci_generi 7 [ ] pci_generic_drv | |-- pci_1:1.7
> pci_generi 8 [ ] pci_generic_drv | |-- pci_1:2.0
> pci_generi 9 [ ] pci_generic_drv | |-- pci_1:6.0
> pci_generi 10 [ ] pci_generic_drv | |-- pci_1:7.0
> pci_generi 11 [ ] pci_generic_drv | |-- pci_1:7.4
> pci_generi 12 [ ] pci_generic_drv | |-- pci_1:a.0
> pci_generi 13 [ ] pci_generic_drv | |-- pci_1:c.0
> pci_generi 14 [ ] pci_generic_drv | |-- pci_1:c.1
> pci_generi 15 [ ] pci_generic_drv | |-- pci_1:d.0
> misc 3 [ + ] octeontx_bgx | |-- octeontx_bgx
> misc 4 [ + ] octeontx_bgx | `-- octeontx_bgx
> gpio 0 [ + ] octeon_gpio |-- gpio0 at 6,0
> pci_generi 0 [ ] pci_generic_drv |-- pci_0:7.0
> pci_generi 1 [ ] pci_generic_drv |-- pci_0:8.0
> pci 2 [ + ] pci_bridge_drv |-- pci_0:9.0
> pci_generi 16 [ ] pci_generic_drv | `-- pci_2:0.0
> pci 3 [ + ] pci_bridge_drv |-- pci_0:a.0
> pci_generi 17 [ ] pci_generic_drv | `-- pci_3:0.0
> pci_generi 2 [ ] pci_generic_drv |-- pci_0:b.0
> pci 4 [ + ] pci_bridge_drv |-- pci_0:c.0
> pci_generi 18 [ ] pci_generic_drv | `-- pci_4:0.0
> pci_generi 3 [ ] pci_generic_drv |-- pci_0:d.0
> pci_generi 4 [ ] pci_generic_drv |-- pci_0:e.0
> pci 5 [ + ] pci_bridge_drv |-- pci_0:f.0
> misc 5 [ + ] octeontx_nic | |-- octeontx_nic
> ethernet 0 [ + ] vnic | |-- vnic0
> ethernet 1 [ + ] vnic | `-- vnic1
> usb 0 [ ] xhci_pci |-- xhci_pci
> usb 1 [ ] xhci_pci `-- xhci_pci
>
> Best regards,
>
> Tim
More information about the U-Boot
mailing list